From Full-Stack Web Development (CS371)
Jump to: navigation, search

Course Objectives

This course covers the major aspects of full-stack web applications development. Full-stack web development involved both the design and development of front-end and back-end applications in web framework. The course starts with a short introduction on the web applications architecture and underlying technologies, including HTML (focus on HTML 5), Cascading Style Sheets (CSS) and JavaScript for client-side scripting. The course then proceeds to cover Server Side Web Application Development in depth, including the multi-tier development model (data tier, business tier, presentation tier), web database development, authentication, navigation, working with XML, state management, caching, ...etc.

Course Learning Outcomes

At the completion of this course, the student will be able to

  • CLO 1: Describe the fundamental concepts and requirements for designing full-stack web framework.
  • CLO 2: Develop front-end web applications using HTML and cascading styles sheets
  • CLO 3: Develop dynamic web applications using client-side scripting with JavaScript
  • CLO 4: Build interactive web applications with back-end web server and databases
  • CLO 5: Create Extensible Markup Language ( XML) document and integrate it into web page development
  • CLO 6: Demonstrate the use of various website development tools to design and implement full-stack Web applications.

Course Prerequisites

Data Structures (CS201)

Contact Hours

2 hours tutorial + 2 hours labs


There will be one mid-term exams each of which is graded out of 15 points, and one comprehensive final exam graded out of 40 points. Exams will cover material from lectures, the readings, and the project. In particular, you are likely to do poorly on the exams and in the course if you do not do your share of the work on the project.


The project will be graded out of 20 points. The student must pay attention to avoid any kind of outsourcing and cheating in project work. This will be severly penelized.

Late policy

A student that will miss more than 16 hours during the semester will be automatically prevented from entering the final exam. If you have a justification for being late or absent you must send this justification to the department head and to the instructor. The justification may be rejected for some reasons. It is important to note that missing any lecture will have a great negative impact on the student performace and understanding. Attending all lectures is a must unless a major handicap prevents you attending. Each hour the student is absence, 1 point will be lost from the Bonus extra grade. See grading policy for more details


It is permissible to cooperate with your colleagues and to discuss general issues about concepts, algorithms and project steps. However, it is strictly prohibited that you copy other people’s code, solutions and project deliverables, assignments, etc. It is the duty of each student to prove that his work is original and has not been done by others. Every detected cheating action will be severely punished. Outsourcing code is strictly prohibited as well.