FUNDAMENTALS OF SOFTWARE
ENGINEERING COMPREHENSIVE EXAM
SCRIPT 2026 COMPLETE QUESTIONS AND
ANSWERS
● What is software engineering? Answer: An engineering discipline
which is concerned with all aspect of software production
● Difference between software engineering and computer science
Answer: 1. Computer science is concerned with theory and
fundamentals
2.Software engineering is concerned with practical aspects of developing
and delivering software
● Software engineering challenges Answer: 1. Coping with legacy
systems
2. Coping with increasing diversity (heterogeneous systems-many types
of hardware/software)
3. Coping with faster, cheaper
,● What is a software process? Answer: A set of activities and associated
results which produce a software product
● Four fundamental process activities Answer: 1. Software specification
2. Software development
3. Software validation (i.e. It does what it intended to do based on
software spec.)
4. Software evolution (i.e. Change/enhancement/maintenance)
● What is a software process model ? Answer: A representation of
software process from a specific perspective.
● Examples of software process models Answer: 1. Workflow model:
Sequence of activities in the process along with their inputs, outputs and
dependencies.
2. Data-flow or activity model: A set of activities that carry out some
data transformation (input -> output)
3. Role/action model: Represents roles of people involved in the
software process and activities for which they are responsible.
,● Ethical Responsibility Answer: 1. Confidentiality (respect
confidentiality of employer/client)
2. Competence (avoid misrepresenting the level of competence)
3. Intellectual property rights (local laws, patents, copyrights)
4. Computer misuse (Viruses, hacking, information theft)
● Waterfall model (Life cycle) Answer: 1. Requirements
2. Software design
3. Code & Unit test
4. Integration & Testing
5. Maintenance
● Waterfall model: Plus and Minuses Answer: Advantages
, 1. Simple to follow
2.Relatively simple to track progress
3. Good structural design
Challenges
1. In practice, often phases overlap
2. Hard to modify and implement changes
3. Need complete requirements from customers to start (the biggest
challenge)
● Evolutionary development Answer: Develop an initial
implementation, expose to users comments, refine until satisfied
● Evolutionary development types Answer: Exploratory development
1. Start with requirements that are well defined
2. Add new features when customers propose new requirements
Throw-away prototyping
1. Objective is to understand customer's requirements (i.e. they often
don't know what they want, hence poor requirements to start
ENGINEERING COMPREHENSIVE EXAM
SCRIPT 2026 COMPLETE QUESTIONS AND
ANSWERS
● What is software engineering? Answer: An engineering discipline
which is concerned with all aspect of software production
● Difference between software engineering and computer science
Answer: 1. Computer science is concerned with theory and
fundamentals
2.Software engineering is concerned with practical aspects of developing
and delivering software
● Software engineering challenges Answer: 1. Coping with legacy
systems
2. Coping with increasing diversity (heterogeneous systems-many types
of hardware/software)
3. Coping with faster, cheaper
,● What is a software process? Answer: A set of activities and associated
results which produce a software product
● Four fundamental process activities Answer: 1. Software specification
2. Software development
3. Software validation (i.e. It does what it intended to do based on
software spec.)
4. Software evolution (i.e. Change/enhancement/maintenance)
● What is a software process model ? Answer: A representation of
software process from a specific perspective.
● Examples of software process models Answer: 1. Workflow model:
Sequence of activities in the process along with their inputs, outputs and
dependencies.
2. Data-flow or activity model: A set of activities that carry out some
data transformation (input -> output)
3. Role/action model: Represents roles of people involved in the
software process and activities for which they are responsible.
,● Ethical Responsibility Answer: 1. Confidentiality (respect
confidentiality of employer/client)
2. Competence (avoid misrepresenting the level of competence)
3. Intellectual property rights (local laws, patents, copyrights)
4. Computer misuse (Viruses, hacking, information theft)
● Waterfall model (Life cycle) Answer: 1. Requirements
2. Software design
3. Code & Unit test
4. Integration & Testing
5. Maintenance
● Waterfall model: Plus and Minuses Answer: Advantages
, 1. Simple to follow
2.Relatively simple to track progress
3. Good structural design
Challenges
1. In practice, often phases overlap
2. Hard to modify and implement changes
3. Need complete requirements from customers to start (the biggest
challenge)
● Evolutionary development Answer: Develop an initial
implementation, expose to users comments, refine until satisfied
● Evolutionary development types Answer: Exploratory development
1. Start with requirements that are well defined
2. Add new features when customers propose new requirements
Throw-away prototyping
1. Objective is to understand customer's requirements (i.e. they often
don't know what they want, hence poor requirements to start