Software Engineering
COMP 4081 • Spring 2019
Dr. Scott Fleming, Instructor
Syllabus
eCourseware
Piazza
Helpful Resources
Schedule
Introduction
Mon 1/14
Boot Camp on Web App Development
Wed 1/16
- Lecture: MVC and the View (slides)
- Demo 2: Intro to the Software Stack (video)
- Demo 3: Adding (Mostly Static) View Pages (video)
- Assigned: Homework 3 (instructions)
Mon 1/21
- M. L. King, Jr. Holiday—no class
Wed 1/23
- Lecture: Version Control with Git (slides)
- Demo 4: Version Control Using Git and Local Repositories (video)
- Demo 5: Working with Branches in Git (video)
- Demo 6: Collaboration Using Git and Remote GitHub Repositories (video)
- Assigned: Homework 4 (instructions)
- Due: Homework 1 (instructions)
- Due: Homework 2 (instructions)
Mon 1/28
- Lecture: Version Control with Git (cont’d)
Wed 1/30
- Lecture: Databases and MVC Models (slides)
- Demo 7: Database Management Using Rails MVC Models (video)
- Demo 8: Rails Model Validations and Testing (video)
- Demo: Workflow for Boot Camp Teamwork (video)
- Assigned: Homework 5 (instructions)
- Due: Homework 3 (instructions)
Mon 2/4
- Lecture: Domain Modeling (slides)
Wed 2/6
- Lecture: Domain Modeling (cont’d)
- Demo 9: Adding Bootstrap Styling to Views (video)
- Demo 10: Creating Interactive Forms (video)
- Demo 11: Creating Pages That CRUD Model Records (video)
- Assigned: Homework 6 (instructions)
- Due: Homework 4 (instructions)
Mon 2/11
- Lecture: Domain Modeling (cont’d)
Wed 2/13
- Lecture: Model Associations (slides)
- Demo 12: Creating One-to-Many Model Associations (video)
- Demo 13: Adding User Logins, Authentication, and Authorization (video)
- Demo 14: Many-to-Many Model Associations (video)
- Assigned: Project Proposals (instructions)
- Assigned: Homework 7 (instructions)
- Due: Homework 5 (instructions)
Mon 2/18
- Lecture: Requirements (slides)
Wed 2/20
- Lecture: Requirements (cont’d)
Mon 2/25
- Lecture: Requirements (cont’d)
Wed 2/27
Mon 3/4
Wed 3/6
Milestone 0 Iteration (Initial Planning and Design)
Mon 3/11
Wed 3/13
- Activity: Team Assignment and Project Selection
- Activity: Team meets with customer to create user stories (template) and definitions of terms/concepts used in the USs (template)
- Assigned: User Stories and Definitions Draft 1
- Due: Homework 7 by Fri 3/15 (instructions)
Mon 3/18
- Lecture: Planning and Estimation (slides)
- Activity: Initial Project Planning: (1) Team creates initial designs (sitemap, wireframes, model classes) and estimates each US, (2) customer prioritizes USs, and (3) team chooses USs for Milestone 1
- Assigned: Project Overview (instructions)
- Assigned: Milestone 0 (instructions)
- Due: User Stories and Definitions Draft 1 in eCourseware dropbox; this set of USs should cover all the main features of the system; PDFs generated from the Markdown using VS Code as per these video instructions should be submitted
Wed 3/20
- Activity: Peer Evaluation of User Stories and Definitions (instructions)
Milestone 1 Iteration
Mon 3/25
- Activity: Project Studio
- Assigned: Milestone 0 Teammate/Customer Evaluations (see email instructions)
- Assigned: Milestone 1 (instructions)
- Assigned: Milestone 1 Task Plans (instructions)
- Assigned: Above and Beyond Points (instructions)
- Due: Milestone 0 (instructions)
Wed 3/27
- Lecture: Software Testing (slides)
- Exam 1 Second Chance on Git Command Semantics
- Due: Milestone 1 Task Plans submitted as issues in GitHub (instructions)
- Due: Milestone 0 Teammate/Customer Evaluations by Sun (see email instructions)
Mon 4/1
- Lecture: Software Testing (cont’d)
Wed 4/3
- Lecture: Software Testing (cont’d)
Mon 4/8
- Lecture: Software Design Patterns (slides)
Wed 4/10
- Interactive Demo Session (In-class)
Milestone 2 Iteration
Mon 4/15
- Activity: Project Studio
- Assigned: Milestone 2 (instructions)
- Assigned: Milestone 2 Task Plans (instructions)
- Assigned: Milestone 1 Teammate/Customer Evaluations (see email instructions)
- Due: Milestone 1 (instructions)
Wed 4/17
- Lecture: Software Design Patterns (cont’d)
- Due: Milestone 2 Task Plans submitted as issues in GitHub (instructions)
- Due: Milestone 1 Teammate/Customer Evaluations by Sun (see email instructions)
Mon 4/22
- Lecture: Security Attacks and Countermeasures (slides)
Wed 4/24
- Exam 2
- Assigned: Milestone 2 Teammate/Customer Evaluations (see email instructions)
Mon 4/29
Wed 5/1
- Interactive Demo Session (Public)
- Special Time: 1:00–3:00
- Special Place: UC Lobby
- Due: Milestone 2 by noon on Thu (instructions)
- Due: Milestone 2 Teammate/Customer Evaluations by noon on Thu (see email instructions)
- Due: Complete your SETEs in my.memphis.edu by midnight, Thu!
Instructions
Homeworks
Project