COMP465W: Software Engineering
Midterm Exam Review Topics
October 19, 2015
1. Basic characteristics of software engineering
2. Types of software and its desired attributes
3. Software engineering ethics
4. Software process models and process activities
5. Managing change in software process
6. Agile methods vs. plan-driven development: characteristics,
advantages and disadvantages
7. Extreme programming and the Scrum approach
8. Types of software requirements
9. Approaches to requirements specification
10. Activities (phases, stages)
of requirements engineering process
11. Types of software system
models
12. Model-driven software
engineering approach
13. Fundamental characteristics
of architectural design
14. Types of architectural
patterns; their advantages and disadvantages
15. Types of application
systems architectures and their characteristics
16. Stages of object-oriented
design
17. Design patterns
18. Software reuse issues;
configuration management; open source development
19. Various classifications of
testing; phases of development testing
20. Test-driven development
21. Release and unit testing
22. Software
evolution and its dynamics
23. Maintenance; types and
characteristic activities
24. Management of legacy
systems
25. Dependability, its
dimensions, and their characteristics
26. Characteristics of
risk-driven requirements specification
27. Reliability specification
28. Safety and security
specification
29. Formal methods of
specification
30. Redundancy and diversity
31. Dependable system
architectures
32. Dependable programming