Software Engineering
Spring 2024
These are the slides used in the scheduled lectures. Each set of slides is in pdf format,
six slides to the page.
I do not intend to read, or even reference, all of these slides in the lecture. They are:
- to let you know what will be covered under each topic
- for reference and illustration during discussions
- to remind me of key points I wanted to cover, and the order in which I wanted to cover them
- to save you the trouble of writing down notes that I have already committed to writing
- to enable you to review material that has been covered (for exam review)
Lecture Topics:
- Course Introduction
- Basic Project Skills
- S/W Process Models
- Requirements
- Users, Roles & Use Cases
- System Models & Modeling
- Principles of Architecture
- Evolving an Architecture
- Quality & Quality Assurance
- Formal Reviews
- User Interface Design
- Component and Class Designs
- Routine and Algorithm Designs
- Design Patterns
- Testability & Test Cases
- Robustness
- Maintainability
- Bugs & Debugging
- Integration and Testing Strategy
- System Testing and Performance
- Agile Process
- Productivity & Collaboration
- Task Estimation & Risk Assessment
- Project Scheduling & Tracking
The lecture sessions will also include group/team exercises. The slides for
those exercises are duplicated below so that you can reference them while in
a breakout discussion group.
There are (with a few exceptions) no planned presentations or exercises
for the lab sessions. Rather, they are an opportunity for us all to
get together a few days before the deliverables are due, to ensure that
you have what you need and know what you have to do with it.
Each weekly lab session is focused on that week's project deliverables.
The following slides outine the goals for each lab session:
- P1A: Teams, Concepts and Plans
- P1B: Competitive Research
- P1C: Requirements Development
- P1D: Final Proposal
- P2A: Preliminary Architecture
- P2B: Architectural Review
- P2C: Final Architecture
- P3A: Component Specifications and P3B: Component Design and Test Plan
- Spring Break
- P3C: Component Design Reviews
- Cesar Chavez
- P3D: Final Component Design and Test Plan
- P4A: Implementationg and Testing and P4B Coding Exercises
- P4C: Integration and Demo Preparation
- P4D: Post-Mortem Report