January 3:
Introduction to Software Engineering, software development processes.
January 6:
Software reengineering
Due: Review of Lifecycle Planning
January 8:
Introduction to software architecture and common architectural styles.
Due: Project selection and overview description
January 6/9 (Laboratory):
Using CVS to download source code
Software configuration management using Subversion
January 10:
Software project management, software risk analysis
Due: Review of Software Risk Management: Principles and Practices
January 13:
Requirements analysis and specification, scenarios in the requirements process
Due: Reverse-engineered software architecture
January 15:
Requirements analysis and specification, cost estimation
Due: Project scenarios document
January 17:
User interface design, paper prototyping
Due:
Review of Prototyping for Tiny Fingers
Due: Review of Chapter 3 (sections 3.1, 3.2 only) Requirements Elicitation
January 20:
No class, birthday of Martin Luther King, Jr.
January 22:
Due: In-class presentation giving project overview, goals, UI
Due:
Requirements specification for proposed modifications, including UI sketches
Due: Project source code and documents under configuration control
January 24:
Abstraction, modularity, separation of concerns
Due:
Project time estimate, risk analysis
January 27:
UML structure diagrams.
Due: Review of Software Engineering Principles
Due: Review of Software: It's Nature and Qualities
January 29:
UML sequence diagrams, processes & threads, flow of control
Due: User manual
January 31:
Software qualities, white & black box testing
Due: Homework #1 (UML assignment)
February 3:
No class, work on take-home Exam #1
February 5:
Using fault models to guide testing, user interface attacks
Due: Take home Exam #1
February 7:
System interface attacks
Due: Software design document
February 10:
Control flow diagrams, all-paths testing
February 12:
Software inspections
February 14:
Software inspections video
Due: Review of Path Testing
February 17:
No class, President's Day
February 19:
Software evolution
February 21:
In-class presentations on project status
Due: Acceptance test plan
Due: Review of Software Aging
February 24:
Software evolution
Due: Homework #2 (White box testing)
Due: Review of Rules and Tools for Software Evolution Planning and Management
Feburary 24/27 (Laboratory):
Software inspections of project code. Each group must bring paper copies of their code to the inspection (one copy per group member).
February 26:
Source code analysis for evolution-related metrics
February 28:
Exam #2
March 3:
Guest lecture: Luca de Alfaro, Model Checking
March 5:
Guest lecture: Martin Griss, Agent-Based Software Engineering
March 7:
Software Engineering card game
March 10:
Software Configuration Management
March 10/13 (Laboratory):
Software acceptance testing. Each group will have a scheduled acceptance test time. Acceptance tests might be scheduled outside laboratory times.
March 12:
Software Configuration Management
March 14:
No lecture, meet in lab for project presentations.
Due: Final project notebook
Last updated: