WorksheetsIntroduction to Software Engineering
Total questions: 66
Worksheet time: 33mins
Which statement best defines software engineering in professional practice?
Creative prototyping without documentation
Solo programming focused on speed only
Systematic process for design, test, maintenance
Ad-hoc coding to meet immediate needs
Which activity is MOST central to ensuring maintainability in large software systems?
Marketing features after release
Manual user onboarding sessions
Requirements analysis and structured design
Random refactoring during deployment
What benefit does software engineering provide to project delivery?
Delivers software regardless of requirements
Guarantees no changes will be needed
Improves efficiency, quality, and budget control
Eliminates the need for testing entirely
Which pair correctly matches the domain to its description?
Software: physical devices; Engineering: art critique
Software: programs with instructions; Engineering: purposeful design
Software: informal ideas; Engineering: improvisational building
Software: hardware wiring; Engineering: accidental assembly
Why is continuous adoption of new tools and methods emphasized in software engineering?
To avoid requirements and formal testing
To handle complexity and evolving technologies
To replace documentation with marketing slides
To prioritize speed over reliability always
Which SDLC stage primarily prioritizes project requests and allocates resources?
Implementation stage testing and training
Design stage details and component selection
Planning stage tasks and resource allocation
Analysis stage activities and user requirements
During Analysis, which activity focuses on understanding the existing environment to inform solutions?
Study current system comprehensively
Install and test new system
Acquire hardware and software
Conduct post-implementation review
Which deliverable is most associated with the Design stage?
Develop details of the system
Recommend solution priorities
Monitor system performance over time
Train users for new workflows
A team decides whether to build custom programs and begins installation. Which SDLC stage are they in?
Analysis with preliminary investigation
Implementation with development tasks
Maintenance with performance monitoring
Planning with prioritization efforts
Which action best aligns with Maintenance responsibilities?
Convert to a new system platform
Perform detailed analysis activities
Allocate resources for project requests
Identify errors and monitor performance
You must determine user requirements before proposing a solution path. Which stage emphasizes this?
Implementation with user training
Planning with team identification
Analysis with requirements determination
Design with component specification
Which ordered pair of activities correctly represents a handoff from Design to Implementation?
Develop details of the system → Train users
Prioritize project requests → Conduct preliminary investigation
Study current system → Allocate resources
Monitor system performance → Identify errors
A project has just completed installation and user training. What is the next logical SDLC focus?
Allocate hardware and software
Perform preliminary investigation
Determine user requirement details
Conduct post-implementation review
Which item best describes a software engineering process?
Documentation templates for projects
Tools like IDEs and debuggers
A lifecycle of steps to build software
Coding patterns used by developers
Which statement best differentiates methods from tools in software engineering?
Methods are documents; tools are standards
Methods are schedules; tools are budgets
Methods are hardware; tools are software
Methods are techniques; tools are instruments
Which characteristic primarily ensures a program behaves as specified under defined inputs?
Maintainability
Usability
Security
Correctness
A team must choose artifacts to improve ongoing changes, bug fixes, and refactoring. Which quality attribute is most directly supported?
Efficiency
Maintainability
Security
Reliability
An onboard controller in a washing machine is most likely classified as which type of software?
Utility software
Embedded software
System software
Application software
Which pairing correctly matches a type of software with an example?
Application software – compilers
System software – operating systems
System software – mobile apps
Embedded software – web browsers
A product team aims to reduce CPU cycles and memory use while maintaining functionality. Which quality characteristic is their primary focus?
Efficiency
Reliability
Usability
Security
Which characteristic best defines the Waterfall model in software development?
Flexible change incorporation
Iterative risk-driven cycles
Linear sequential phases
Continuous customer feedback loops
In the Waterfall approach, when does testing typically occur?
After implementation phase
Before design reviews
During requirements gathering
Throughout all phases equally
Which project type is most suitable for the Waterfall model?
Distributed systems with evolving architecture
Exploratory prototypes with uncertain scope
Small projects with fixed requirements
Large projects with volatile requirements
What primary limitation is associated with the Waterfall model?
High emphasis on risk analysis
Complex stakeholder coordination
No flexibility for changes
Excessive prototyping cycles
Which statement best captures the essence of the Spiral model?
Eliminates risk considerations entirely
Combines Waterfall with prototyping
Focuses only on maintenance activities
Strict linear progression of phases
What is the main focus of the Spiral model's iterations?
Accelerating deployment
Conducting risk analysis
Reducing testing effort
Minimizing documentation
For which projects is the Spiral model typically preferred?
Small, low-risk efforts
Maintenance-only engagements
Medium projects with stable requirements
Large, high-risk initiatives
What is a common drawback of adopting the Spiral model?
No stakeholder involvement
Lack of defined phases
Complex and expensive process
Inability to prototype solutions
Which statement best describes the incremental model in software development?
Delivers features in small functional increments
Builds a complete system in a single pass
Focuses on late delivery after full design
Avoids planning to accelerate coding
In the iterative model, what is a typical characteristic of the first delivered version?
Incomplete but usable baseline
Fully polished final release
Feature frozen and nonchangeable
Complete documentation without code
Which context best suits the incremental model according to the diagram?
Early delivery requirements
Hardware-constrained systems
Strictly fixed scope projects
Academic prototypes only
Which limitation is associated with the iterative model?
Requires no testing
Prohibits requirement changes
Needs good design
Demands minimal planning
Based on the flow shown, which sequence repeats within each increment of the incremental model?
Analysis, design, code, test
Deploy, evaluate, retire, audit
Plan, budget, contract, procure
Model, simulate, verify, validate
A large system with evolving requirements should prefer which approach?
Iterative improvement cycles
Monolithic waterfall phases
Increment with no iteration
Single big-bang integration
Which statement best describes the Agile model in software development?
Develops software iteratively with frequent feedback
Builds entire product in one big release
Delays customer input until final deployment
Focuses on fixed plans and strict documentation
In Agile, work is organized into short, timeboxed cycles. What are these cycles called?
Phases
Epics
Sprints
Milestones
Which combination captures Agile’s core emphasis?
Contracts, sign-offs, approvals
Isolation, automation, certification
Flexibility, collaboration, improvement
Rigidity, handoffs, late testing
What does each iteration in Agile aim to deliver?
A working increment of software
Extensive documentation set
A revised project charter
A full end-to-end system
Arrange the typical activities within an Agile sprint in the most common order.
Development, planning, testing, design
Design, testing, planning, development
Planning, design, development, testing
Testing, planning, design, development
Which stage focuses on forming the team and defining the backlog?
Concept
Inception
Release
Maintenance
During which stage is working software delivered to users?
Release
Maintenance
Iteration
Retirement
Which activity is central during Maintenance in Agile?
Fix issues and enhance features
Retire the product from service
Identify feasibility and opportunity
Create initial backlog and team
Given a team that wants frequent customer feedback and small, incremental deliveries, which lifecycle model is most suitable?
Agile model
Spiral model
Waterfall model
V-model
A diagram shows a loop labeled Design, Develop, Test, Deploy, Review over Requirements. What concept does the loop represent?
Iterative cycles over evolving needs
Linear phase progression
End-of-life retirement process
Single pass through fixed requirements
Which limitation of traditional Waterfall most directly led to Agile adoption?
Continuous testing eliminated defects
Flexible scope enabled rapid pivots
High upfront planning ensured success
Late customer feedback increased failure risk
A key reason Agile was introduced was to deliver working software earlier. Which practice supports this goal?
Heavy documentation before coding
Lengthy design sign-off meetings
Single release after full development
Frequent sprint deliveries to stakeholders
Which Agile value emphasizes collaboration over formal contracts?
Working software over comprehensive documentation
Individuals and interactions over processes and tools
Customer collaboration over contract negotiation
Responding to change over following a plan
In Agile, how are requirement changes handled compared to Waterfall?
Permitted after final testing only
Restricted to design phase only
Allowed anytime during development
Prohibited once scope is fixed
Which statement best contrasts testing in Agile versus Waterfall?
Testing after deployment completion
Testing only at project kickoff
Testing primarily in documentation
Continuous testing during development
Which aspect of Agile risk handling differs from Waterfall?
Risks outsourced to contractors
Risks identified early through iteration
Risks identified late after delivery
Risks ignored due to flexibility
Which Agile value guides teams to adapt when priorities shift mid-project?
Customer collaboration over contract negotiation
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Responding to change over following a plan
Which development approach characterizes Agile compared to Waterfall?
Iterative and incremental cycles
Linear and sequential phases
Architecture-first waterfall
Big-bang integration only
Which statement about customer involvement accurately compares the models?
Waterfall increases involvement after testing
Waterfall involves customers every sprint
Agile involves customers continuously
Agile limits involvement to requirements
Which documentation practice aligns with Agile principles?
Minimal necessary documentation
Comprehensive specification binders
Full traceability matrices always
Detailed contracts for change control
Which projects are best suited for Agile according to the comparison?
Hardware-centric, fixed-scope builds
Large, complex, dynamic initiatives
Short-term maintenance only
Small, simple, stable endeavors
To reduce project failure risk, what does Agile encourage during development?
Final verification after all coding
Frequent testing with each iteration
Formal sign-offs replacing feedback
Strict adherence to fixed plans
Which Agile benefit best explains why changing requirements are manageable throughout development?
Flexible to changes at any stage
Architecture prevents late changes
Timeboxing limits scope creep effectively
Sprint reviews freeze requirements early
What is a key outcome of delivering working software after each sprint?
Eliminates need for testing teams
Enables early and frequent delivery
Defers customer review until release
Requires longer upfront documentation
Which practice most directly increases customer satisfaction in Agile?
Strict phase gate approvals
Occasional stakeholder demos
Continuous customer involvement
Fixed feature scope contracts
Why does Agile tend to produce better quality software?
Bug fixing is postponed to release
Continuous testing and integration
Late integration reduces conflicts
Manual reviews replace automation
How does Agile reduce project risk during development?
Risk transferred to vendors
Problems detected early each sprint
Annual risk audits per project
Final acceptance testing only
Which statement best captures improved team collaboration in Agile?
Separate teams work independently
Developers, testers, customers work closely
Managers coordinate via weekly emails
Silenced stand-ups minimize conflict
Parallel activities in Agile primarily help achieve which advantage?
Reduced feature rework
Faster development time
Lower infrastructure costs
Stricter compliance reporting
Daily meetings and sprint reviews contribute to what Agile benefit?
Better control and transparency
Hidden progress until release
Elimination of stakeholder input
Longer planning horizons
Regular retrospectives are used in Agile to accomplish what?
Freeze processes permanently
Increase documentation volume
Improve process and performance
Replace sprint reviews entirely
A customer-centric approach in Agile primarily focuses on which goal?
Minimizing sprint length only
Locking scope before development
Prioritizing technical debt first
Maximizing business value delivered
