Giter Site home page Giter Site logo

6907.12-fall-2015's Introduction

George Washignton University - Department of Computer Science

CSCI 6907.12 - Full Stack Application Engineering

General Information

  • Class Time: Thursdays 3:30 pm - 6:00 pm,
  • Class Location: Tomkins Hall of Engineering 411

Instructor Information

  • Name: Timothy Kim
  • Email: timothyk at gwu.edu
  • Office Hours: By appointment only

Course Details

Description

Introduce the components and process involved in developing a full stack web application: Data modeling, Server Side Business Logic, Service Oriented Architecture, Client-side Web Application, Mobile App Development. Also touches upon User Management, Security and Other Network Related Concepts.

Objective

By the end of the course, students will be able to:

  1. take a problem and design a full stack web application architecture;
  2. demonstrate andunderstand service-oriented architecture;
  3. implement a client side web and/or native mobile app;
  4. understand security and operational implications that comes with full-stack application.

Website

Textbook

There are no required textbooks for this class. However, through out the cource, there will be list of reference materials for you to read.

Grading

  • 30% - Project Progress Report
  • 50% - Final Project
  • 20% - Peer Evaluation

Group Project

To achieve the objectives above, you will form a group of 4 or 5 students and create a full stack web application. In the middle of the semester, you'll provide a progress report on you project. And at the end of the semester, you will give a brief presentation on your final project product. Completing your project as a group will grant you at most 80% of your final grade. Rest of 20% will come from peer evaluation. More detailed description of the project will be given ot you through out the course.

Schedule

Schedules are subject to change

  • Week 1 (09/03/2015) - Introduction/Group Formation
  • Week 2 (09/10/2015) - No Class
  • Week 3 (09/17/2015) - Designing Overall Architecture
  • Week 4 (09/24/2015) - Core Business Logic (Internal API)
  • Week 5 (10/01/2015) - Core Business Logic (Internal API)
  • Week 6 (10/08/2015) - Data Layer (Persistence)
  • Week 7 (10/15/2015) - Web Interface (External API)
  • Week 8 (10/22/2015) - Catch up lecture / Project Progress Report due
  • Week 9 (10/29/2015) - Micro-service architecture
  • Week 10 (11/05/2015) - Client App (Web/Mobile)
  • Week 11 (11/12/2015) - Client App (Web/Mobile)
  • Week 12 (11/19/2015) - User Management and Security
  • Week 13 (11/26/2015) - Project workshop
  • Week 14 (12/03/2015) - Final Project Presentation

Course Outline

Full-stack application Architectural Overview

Bird-eye view of example full-stack application, Service oriented architecture, Sample project idea

Core Business Logic (Internal API)

Translating problem space into implementable design, API driven design, Project Idea Sharing

Data Layer (Persistence)

Different data persistence methods (Relational Database, NoSQL), Interfacing with Core (DB drivers and ORM)

Web Interface (External API)

Creating sensible web API, RESTful API, SOAP, Basic HTTP overview

Client App (Web/Mobile)

Creating JavaScript app on web (CSS, HTML), Pro and Con of web/native app,

User Management and Security

Adding user management layer, Security concerns at every component of the application stack

Academic Integrity

All graded work must be completed in accordance with GW Code of Academic Integrity and CS Department Policy on Academic Integrity. http://www.cs.seas.gwu.edu/academics/integrity/cs_integrity

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.