Project work description is available here.
Ideas for class projects are available here.
All project teams must be formed before Sunday, January 26, 2020 by notifying the instructorItem | Due date | |
t e r a t. #1 |
1. Proposal | February 2 |
2. First report
(Specification only) • Part 1 (Statement of Work & Requirements) • Part 2 (Functional Requirements Spec & UI) • Full Report #1 | February 9 February 16 February 23 |
|
3. Second report (Design only) • Part 1 (Interaction Diagrams) • Part 2 (Class Diagram and System Architecture) • Full Report #2 | March 1 March 8 March 15 |
|
4. First demo
in | Week of March 23 |
|
I t e r #2 |
5. Third report
(All reports collated) • Part 1 (Sections 1, 2, 3, 4, 5, 6, 7, _ 9, 10, _ _ 13, 14) • Full Report #3 (including Sections 8, 11, 12) • Reflective essay | April 12 May 3 May 3 |
6. Second demo
in room | Week of April 20 |
|
7. Electronic Project Archive | May 7 |
Topic 1 | (3 lectures): | Software Lifecycle and Team Projects |
Topic 2 | (2 lectures): | Requirements Engineering and Use Cases |
Topic 3 | (1 lecture): | Software Architecture |
Topic 4 | (3 lectures): | Object-Oriented Analysis and Design |
Topic 5 | (2 lectures): | Test-Driven Implementation |
Topic 6 | (2 lectures): | System Specification |
Topic 7 | (2 lectures): | Software Measurement and Estimation |
Topic 8 | (4 lectures): | Design Patterns |
Topic 9 | (2 lectures): | Software Security |
The section numbers marked in red
letterfont are referring to
the Lecture Notes.Note #1
Some materials in the textbook will not be reviewed in the class, but
are important for understanding other materials and may appear in the
exams.
They are indicated in the syllabus below for the student
to read on their own.
Jan 21 (T) Software Development Lifecycle [slides] (Sections 1.1 to 1.3) 24 (F) Software Configuration Management [slides] (Section 2.1.3 and Chapters 1 – 6 in Chacon & Straub: Pro Git) 28 (T) Understanding the Problem and Dividing the Work [slides] 31 (F) Requirements Engineering [slides] (Section 2.2) Feb 4 (T) Software Architecture [slides] (Section 2.3) and Wikipedia 7 (F) Use Cases [slides] (Section 2.4) Read on your own: Section 4.2.1 (Use Case Points) [slides] 11 (T) Domain Model [slides] (Section 2.5) 14 (F) Object-Oriented Design - 1 [slides] (Section 2.6.1) 18 (T) Object-Oriented Design - 2 [slides] (Section 2.6 remainder) 21 (F) Testing - 1 [slides] (Sections 2.7.1 to 2.7.4) 25 (T) Testing - 2 28 (F) Relational Databases and SQL [slides] (Chapter 13 in Sebesta: Programming the WWW) Mar 3 (T) Functional Programming in JavaScript 6 (F) Asynchronous Programming in JavaScript 10 (T) ******* Midterm Exam (JavaScript Fundamentals) (in regular classroom RWH-105) ******* Read on your own: Sections 3.1 and 3.2.1 (Specifying Systems - Intro) [slides] 13 (F) Specifying Systems [slides] (Section 3.2 remainder) UML State Diagrams | Object Constraint Language (OCL) (Spring Recess: March 14 - 22) 24 (T) [ no class ] ******* DEMO #1 as shown inthis table ******* 27 (F) [ no class ] ******* DEMO #1 ******* 31 (T) Problem Frames - Decomposition [slides] (Section 3.3) Apr 3 (F) Software Measurement [slides] (Sections 4.1 and 4.2.2) Cyclomatic Complexity 7 (T) Design Patterns: Publisher-Subscriber [slides] (Section 5.1) 10 (F) More Patterns: Command & Decorator [slides] (Section 5.2) 14 (T) More Patterns: State & Proxy 17 (F) Software Security 21 (T) [ no class ] ******* DEMO #2 as shown inthis table ******* 24 (F) [ no class ] ******* DEMO #2 ******* 28 (T) [ no class ] May 1 (F) [ no class ] (Regular Classes End: Mon May 4 ⋅ Spring Exams End: Wed May 13) ******* NOFINAL EXAM******* replaced with the MIDTERM EXAM
^ Note #1:
A comprehensive treatment of UML is available in Miles & Hamilton's Learning UML 2.0 and onlinehttp://www.uml.org
. There
will be no lectures exclusively covering UML. Rather, the symbols will
be explained as they're introduced in the context of software
development methodology. Miles & Hamilton and http://www.uml.org
should
serve as reference material.
Ivan Marsic
Created: December 29, 1997
Modified: Sat Jan 18 18:27:05 EST 2020