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