Software Engineering
- Introduction
- Why Study Software Engineering?
- History
- Life Cycle Models
- Software Project Life Cycle Models
- Software Project Life Cycle Processes
- Model Descriptions: Waterfall, Component-based (Reuse), Evolutionary, Spiral, Object Oriented
- Objectives and Principles
- Project Initiation
- Description of the Business Needs/Problem to Be Solved, Objective(s), and Scope
- Feasibility Studies
- Estimating
- Requirements Definition
- Stakeholders, Buy-in
- Requirements Elicitation, Interviewing, and Analysis
- Object Oriented Analysis
- Functional and Non-functional Requirements
- User Interfaces
- Prototyping
- Design
- Architectural Design
- Object Oriented Analysis
- Design Patterns
- Development and Testing
- Coding Standards
- Types of Testing
- Deployment and Maintenance
- Wrap-up
- Course Recap
- Preview of Advanced Topics
- Q/A and Evaluation