Software Engineering – Comprehensive Exam
Review
Key Concepts | Multiple Choice Questions | True & False Questions
PART 1 — KEY CONCEPTS SUMMARY
Unit 1: Introduction to Software Engineering
• Software Engineering: An engineering discipline concerned with all aspects of software
production, from specification through maintenance.
• Four core process activities: Specification → Development → Validation → Evolution.
• Generic products: stand-alone systems sold to any customer (e.g., graphics programs).
Customized products: commissioned by a specific customer (e.g., air traffic control software).
• Essential attributes of good software: Maintainability, Dependability & Security, Efficiency,
Acceptability.
• Application types: Stand-alone, Interactive transaction-based, Embedded control, Batch
processing, Entertainment, Modeling & simulation, Data collection, Systems of systems.
• Software costs: ~60% development, ~40% testing. For custom software, evolution costs often
exceed development costs.
Unit 2: SDLC & Development Methodologies
• SDLC phases: Planning → Analysis → Design → Implementation → Support.
• Waterfall: sequential, requirements fixed early. Advantage: minimizes requirement changes.
Disadvantage: long delay between analysis and delivery.
• RAD (Rapid Application Development): three approaches — Phased Development | Prototyping |
Throw-away Prototyping.
• Agile/XP: reduces documentation overhead, emphasizes iterative development and continuous
user interaction.
• XP five core values: Communication, Simplicity, Feedback, Courage, Respect.
• Methodology selection criteria: clarity of requirements, familiarity with technology, system
complexity, reliability, time schedule.
Unit 2: Project Initiation & Planning (PIP)
• Project Charter: a short document for all stakeholders containing project title, manager,
objectives, schedule, and signatures.
• BPP (Baseline Project Plan): contains Introduction, System Description, Feasibility Assessment,
Management Issues.
• PSS (Project Scope Statement): a document for the customer describing what the project will
deliver.
• Feasibility types: Economic, Technical, Operational, Scheduling, Legal & Contractual, Political.
• Cost/Benefit types: Tangible vs. Intangible. One-time vs. Recurring. Fixed vs. Variable.
• NPV (Net Present Value): evaluates financial worthiness by discounting future cash flows to
present value.
• BEA (Break-Even Analysis): identifies at what point cumulative benefits equal total costs.
• Technical risk factors: project size, project structure, development group experience, user group
familiarity.
Unit 3: Requirements Engineering
• IEEE Definition: 'A condition or capability needed by a user to solve a problem or achieve an
objective.'
• Functional Requirements: describe what the system should do — services, reactions to inputs,
behavior in situations.
• Non-Functional Requirements (NFRs): constraints on services — efficiency, reliability, portability,
interoperability, security, usability.
• NFR types: Product requirements, Organizational requirements, External requirements.
• Requirements gathering techniques: Interviews (primary), Questionnaires, Workshops,
Observation, Document review.
• Guidelines for writing requirements: standard format, consistent language, avoid jargon, separate
functional from non-functional, prioritize using MoSCoW (Must, Should, Could, Won't).
Unit 4: System Models — Context Diagram & DFD
• Context Diagram: a single-picture model showing the system at the center with external elements
it interacts with. Uses only 3 symbols: circle (system), rectangle (terminator), arrow (data flow).
• Context Diagram strengths: easy to understand, clear system boundary, identifies external
entities. Weakness: shows no internal functionality.
• DFD four components: Process, Data Store, External Entity (Source/Sink), Data Flow.
• Key DFD rules: No process with only outputs OR only inputs. No direct flow between two external
entities. No direct flow from a process to itself. All flows to/from a Data Store must pass through a
process.
• DFD levels: Context DFD → Level-0 → Level-1 → Level-n (increasing detail/decomposition).
• Flow from Process to Data Store = Update (insert/delete/modify). Flow from Data Store to
Process = Retrieve/Use.
PART 2 — MULTIPLE CHOICE QUESTIONS (with Answers)
Unit 1: Introduction to Software Engineering
# Question Options Answer
1 What is the best definition of Software Engineering? A) The study of B
algorithms only
B) An engineering
discipline concerned
with all aspects of
software production
C) Designing databases
only
D) Developing hardware
systems
2 What are the four fundamental software process A) Planning, Design, B
activities? Testing, Maintenance
B) Specification,
Development,
Validation, Evolution
C) Analysis, Coding,
Deployment,
Management
D) Investigation, Coding,
Delivery, Support
3 Which of the following is an example of a Generic A) Air traffic control C
Product? software
B) Custom software for
a specific dental clinic
C) A graphics program
sold in the market
D) A road monitoring
system for a specific city
4 Which software attribute refers to using system A) Maintainability C
resources without waste? B) Dependability
C) Efficiency
D) Acceptability
5 What is the main difference between Computer A) Computer Science is B
Science and Software Engineering? only about hardware
B) Computer Science
focuses on theory;
Software Engineering
focuses on practical
development
C) Software Engineering
studies mathematics
D) There is no
difference
6 Which application type controls and manages A) Stand-alone C
hardware devices? applications
B) Batch processing
systems
C) Embedded control
systems
D) Entertainment
systems
7 Approximately what percentage of software costs A) 20% B
are testing costs? B) 40%
C) 60%
D) 80%
8 Which application type collects data from its A) Entertainment C
environment using sensors? systems
B) Accounting software
C) Data collection
systems
D) Simulation systems
Unit 2: SDLC Methodologies
# Question Options Answer
1 What does SDLC stand for? A) Software Design Life B
Cycle
B) System Development
Life Cycle
C) Structured Design
and Logic Cycle
D) Software Delivery
and Launch Cycle
2 What is the main advantage of Waterfall A) Very fast software B
methodology? delivery
B) Requirements are
identified long before
programming begins
C) Uses prototypes
throughout
D) Develops system in
multiple versions
3 Which methodology is most suitable when user A) Waterfall C
requirements are unclear? B) Parallel Development
C) RAD Prototyping
D) Structured Design
4 What is the main disadvantage of Waterfall? A) Difficult project B
management
B) Long time between
analysis phase and
system delivery
C) Too many prototypes
D) Lack of
documentation
5 What are the four core values of Extreme A) Planning, Design, B
Programming (XP)? Coding, Testing
B) Communication,
Simplicity, Feedback,
Courage
C) Speed, Quality,
Documentation, Delivery
D) Security, Reliability,
Performance,
Maintainability
6 In RAD Phased Development, what is developed A) The least important C
first? features
B) The database
C) The most important
and fundamental
requirements
D) The user interface
7 Which methodology breaks the overall system into A) Waterfall B
versions developed sequentially? B) Phased Development
C) Throw-away
Prototyping
D) Parallel Development
8 For which criteria is Waterfall the worst choice? A) High system reliability C
required
B) Requirements are
very clear
C) Short time schedule
D) Familiar technology
Project Initiation & Planning (PIP)
# Question Options Answer
1 What is the main goal of Project Initiation and A) Identify programming B
Planning (PIP)? bugs
B) Transform a vague
system request into a
tangible project
description
C) Design the user
interface
D) Write source code
2 What is a Project Charter? A) A detailed test plan B
B) A short document
providing a high-level
overview of the project
for stakeholders
C) A requirements
database
D) An economic
feasibility report
3 What is the difference between tangible and A) Tangible costs are B
intangible costs? always larger
B) Tangible costs can
be measured in dollars;
intangible costs cannot
easily be measured
C) No difference in
calculations
D) Intangible costs do
not affect the project
4 What does NPV stand for? A) Net Project Value B
B) Net Present Value
C) New Programming
Version
D) None of the above
5 What is Economic Feasibility? A) Evaluating the project B
timeline
B) Analyzing the
financial costs and
benefits of a
development project
C) Assessing the team's
technical skills
D) Analyzing
organizational policies
6 What does BPP stand for? A) Basic Programming B
Plan
B) Baseline Project Plan
C) Business Process
Protocol
D) Budget Planning
Process
7 Which technical risk factor makes a project MORE A) Small team size D
risky? B) Use of familiar and
standard technology
C) Clear and well-
structured requirements
D) Large project size
8 What is the difference between fixed and variable A) Fixed costs change B
costs? with usage
B) Fixed costs are billed
at a regular interval at a
fixed rate; variable costs
vary with usage
C) Variable costs are
always cheaper
D) No difference
Unit 3: Requirements Engineering
# Question Options Answer
1 How does IEEE define a requirement? A) A system design B
document
B) A condition or
capability needed by a
user to solve a problem
or achieve an objective
C) The full project plan
D) The final test result of
the system
2 What is the key difference between functional and A) No difference B
non-functional requirements? B) Functional describe
what the system does;
non-functional are
constraints on services
or performance
C) Non-functional are
always more important
D) Functional
requirements relate to
hardware only
3 Which of the following is an example of a non- A) The system allows B
functional requirement? the user to log in
B) The system must
respond within 2
seconds
C) The system prints
invoices
D) The system
calculates salaries
4 Which NFR type concerns adapting software to A) Reliability B
different hardware or OS environments? requirements
B) Portability
requirements
C) Efficiency
requirements
D) Security
requirements
5 Who are Stakeholders? A) The development C
team only
B) Customers only
C) Different people who
have an interest in the
software
D) Project managers
only
6 What is the primary and most effective technique A) Questionnaires C
for gathering requirements? B) Workshops
C) Interviews
D) Document review
7 What does MoSCoW refer to in requirements A) A database design B
writing? model
B) A method for
prioritizing requirements
(Must, Should, Could,
Won't)
C) A type of testing
D) A development
methodology
8 What are the main problems with: 'If sales for A) No problem B
current month are below target unless difference is B) Difficult to read,
less than half...'? ambiguous, and
incomplete
C) The sentence is too
long
D) Lacks numbers
Unit 4: Context Diagram & DFD
# Question Options Answer
1 What is the main purpose of a Context Diagram? A) Shows the internal B
details of the system
B) Defines the system
boundary and its
interactions with the
external environment
C) Shows the database
structure
D) Describes the user
interface
2 How many notational symbols does a Context A) 2 B
Diagram use? B) 3
C) 4
D) 5
3 What does a rectangle represent in a DFD? A) A Process C
B) A Data Store
C) An External Entity
(Source/Sink)
D) A Data Flow
4 Which DFD rule is correct: 'A process cannot have A) False, it is allowed B
outputs only'? B) True, every process
must have both inputs
and outputs
C) Depends on the
system type
D) Allowed in Level-0
only
5 What does a data flow from a Data Store to a A) Delete the data C
Process mean? B) Update the data
C) Retrieve or use the
data
D) Transfer data outside
the system
6 What is the key difference between a Context A) No difference C
Diagram and a Level-0 DFD? B) Context shows major
processes and data
stores; Level-0 does not
C) Context has one
process symbol; Level-0
shows major processes
and data stores
D) Level-0 is simpler
than Context
7 Which of the following is a valid DFD rule? A) Data can flow directly B
between two external
entities
B) All flows to/from a
data store must go
through a process
C) A process can send
data directly to itself
D) No process is
required between two
entities
8 What is the starting point when drawing a Context A) A Data Store C
Diagram? B) A Terminator
C) A single circle
representing the entire
system
D) A rectangle
representing the
database
PART 3 — TRUE / FALSE QUESTIONS (with Answers)
# Statement Answer
1 Software Engineering is only concerned with writing code (programming), False
nothing else.
2 A Customized Product is software developed for a specific customer to meet True
their own needs.
3 Efficiency in software means the ability of the software to evolve to meet False
changing customer requirements.
4 Roughly 60% of software costs are development costs and 40% are testing True
costs.
5 Waterfall methodology is very suitable for projects with short time schedules. False
6 In RAD Prototyping, the analysis, design, and implementation phases are True
performed concurrently and repeatedly.
7 Non-functional requirements (NFRs) usually apply only to a single specific False
feature of the system.
8 Interoperability requirements describe the extent to which systems can True
exchange and interpret shared data.
9 In a DFD, data can flow directly between two external entities without going False
through a process.
10 A Context Diagram uses only one process symbol representing the entire True
system.
11 A data flow from a Process to a Data Store means retrieving the data. False
12 A Structured Walkthrough is a peer-group review of any product created True
during the system development process.
13 NPV is used to evaluate whether a project is financially worthwhile by True
discounting future cash flows.
14 Larger projects are less risky than smaller projects from a technical False
standpoint.
15 An Interview is a secondary technique and not the primary method for False
gathering requirements.
16 Process labels in a DFD should be verb phrases. True
17 Break-Even Analysis identifies at what point benefits equal costs. True
18 In Agile/XP, the focus is on heavy documentation and detailed modeling False
before starting programming.
19 The Project Scope Statement (PSS) is a document prepared for the True
customer describing what the project will deliver.
20 A Context Diagram shows the internal structure and internal functionality of False
the system in detail.