Weekly Schedule / Summary of Topics |
Week 1 | The Nature of Software, Defining Software, The Changing Nature of Software: Web Apps, Mobile Apps, Cloud Computing
|
Week 2 | Defining Software Engineering, The Software Process, Software Engineering Practice, Software Development Myths Software Process Structure, Defining a Framework Activity, Process Assessment and Improvement
|
Week 3 | Process Models: The Waterfall Model, Incremental Process Models, Evolutionary Process Models, Unified Process, Personal and Team Process Models Agile Development, Agility Principles, Extreme Programming, Other Agile Process Models
|
Week 4 | Human Aspects of Software Engineering, The Psychology of Software Engineering, Team Structures, Agile Teams |
Week 5 | Quality Concepts, Software Quality, Quality Assurance |
Week 6
| Review Techniques, Review Metrics and Their Use, Informal Reviews, Formal Technical Reviews
|
Week 7 | Software Quality Assurance (SQA): SQA Tasks, Goals and Metrics, Statistical SQA, Software Reliability |
Week 8-9 |
Midterm Examinations |
Week 10 | Software Testing Strategy, Validation Testing, System Testing, The Art of Debugging |
Week 11 | Testing Conventional Applications, White-Box Testing, Black-Box Testing, Testing Object-Oriented Applications, Testing Web Applications, Testing MobileApps |
Week 12 | Software Engineering, Security Assurance, Security Risk Analysis |
Week 13 | Software Configuration Management (SCM), The SCM Repository, The SCM Process, Version Control |
Week 14 | Product Metrics, Measurement Principles, Metrics for Requirements Model, Metrics for Design Model |
Week 15
| Estimation for Software Projects, Resources, Decomposition Techniques Risk Management, Reactive vs. Proactive Strategies, Risk Identification, Risk Projection
|
Week 16-18 |
Final Examinations |