Syllabus for CS 296N

Web Development 2: ASP.NET

  Winter 2019

CRN 32222

Instructor Brian Bird
Dates 1/7/19 – 3/23/19
Tu, Th, 10:00 – 11:50

Building 19, Room 152
Building 19, Room 120

Office Hours
T, Th: 2:30 – 3:30
Building 19, Room 135

Lab Hours
M, W: 2:00 – 4:00

Course Description

This four-credit course builds on the basic concepts of ASP.NET Core MVC web development covered in CS295N, to cover topics including security, web services, and DevOps.

Learning Outcome

To be able to develop a web application that uses the ASP.NET Core framework for a moderately complex web application.

Course Content


Themes and Issues

Web Standards Security
Design Patterns
User Experience (UX)
Test Driven Development DevOps


Learning Resources


Pro ASP.NET Core MVC 2, 7th Edition, by Adam Freeman, Apress, 2017 ISBN: 978-1-4842-3149-4. You can purchase the textbook from the LCC bookstore. The source code for the sample programs in the text is available for download on GitHub.

Supplemental Materials

The additional resources are available on the following Microsoft web sites:


The hardware and software required for the course are available to all students in the CIT Main Lab on campus.  You paid a fee when you registered for this course that provides you with unlimited access to CIT lab facilities. 
Visual Studio 2017 will be the development environment provided in class and in the CIT Main Lab.  This software can be obtained free of charge through your LCC Microsoft Imagine account (formerly Microsoft Dream Spark), You can download it or borrow the setup DVD from the CIT computer lab.
You may alternatively use Visual Studio 2017 Community edition which is available for Windoes or Mac OS as a free download from Microsoft at

CIT Computer Lab

The CIT Main lab (Bldg. 19, room 135) is equipped with computers which are available exclusively for students in the CIT department. There are tutors available in the lab to help you with your lab work. There is a schedule is posted on the large white board inside the lab which lists the tutors and the times they will be available.

Web Resources

Assessment and Grading

Specific grading criteria will be applied to each of the labs, quizzes, and exams you will be working on in this class. Part of the lab involves a code review. Attendance is not graded.
The table below summarizes the grade distribution for each of the assessment tasks:

Assessment Activities     Percentage of grade
Code Reviews
Quizzes 10%
Midterm and Final Exams
Term Project 40%

Letter grades for the course will be determined by the following percentages:             


90 - 91
92 - 97
80 - 81
82 - 87
88 - 89
70 - 71
72 - 77
78 - 79
60 - 61
62 - 67
68 - 69
Below 60

Late Work

Weekly Learning Activities

Wednesday Sunday

Academic Honesty

While students are encouraged to discuss labs and to use each other as resources, each student is responsible for his/her own work. In other words, you can help each other, but you can't copy any part of someone else's work. The end product must be each student's own individual work.


Attendance is not graded but will be essential for successful completion of the class. Students who miss a class are responsible for obtaining the course content provided in class and mastering it.

No-Show Drop

LCC has a no-show drop policy which means that during the first week of the term, to avoid being dropped, a student must attend at least one class meeting.

LCC Academic Calendar for Winter Term 2019
Term begins Monday, 1/7/19
Last day to receive refund Sunday, 1/13/19
MLK Holiday Monday, 1/21/19
Presidents Day Holiday
Monday, 2/18/19
Last day for schedule changes Friday, 3/1/19
Finals week
3/18/19 – 3/23/19

Accessibility and Accommodations:

If you need support or assistance because of a disability, you may be eligible for academic accommodations through Disability Services. For more information, contact Disability Services at 463-5150 (voice) or 463-3079 (TTY), or stop by building 1, room 218.

Please be aware that any accessible tables and chairs in this room should remain available for authorized students who find that standard classroom seating is not usable.

Course Schedule

(may be subject to change
Week Topic Reading Lab Assignment
1 Authentication Freeman Ch. 28 - Getting Started with Identity Lab 1
2 Authorization Freeman Ch. 29 - Applying ASP.NET Core Identity Lab 2
3 Security: SSL, Cross-site scripting, SQL injection, man in the middle. Freeman Ch. 19 - Filters: section on SSL Lab 3
4 Testing
  • Automated UI Testing: Selenium
  • Load testing and load balancing
Online tutorials Lab 4
5 Bootstrap and Front-end frameworks, Midterm

6 Creating a REST web service Freeman Ch. 20 - API Controllers Lab 5
7 Consuming a REST web service
Async / Await
Online tutorials Lab 6
8 Docker containers Online tutorials Lab 7
9 Microservices Online tutorials Lab 8
10 TBD

Term Project