Software Engineering Chapters 3 & 4 Questions and
Correct Answers | Latest Update
What are the shared characteristics of different approaches to rapid
software development? Ans: • The processes of specification, design
and implementation are inter-leaved.
• The system is developed and delivered as a series of versions.
• User interfaces are often developed using an interactive development
© 2026 Assignment
system that supports rapid UI development.
For what types of system are agile approaches to development
particularly likely to be successful? Ans: • Small and medium-sized
Guru01 - Stuvia
Expert
software product development.
• Custom software development in an organization where there is a clear
commitment from customers to become involved in the development
process.
List the 5 principles of agile methods Ans: 1. Customer involvement.
2. Incremental delivery.
3. People not process.
4. Embrace change.
5. Maintain simplicity.
List 4 questions that should be asked when deciding whether or not to
adopt an agile method of software development. Ans: Any 4 from those
below. Others are also possible (see Ch 3)
• Is an incremental delivery strategy realistic?
• What type of system is being developed?
, 2 for specific request mail
• What is the expected system lifetime?
• How is the development team organized?
• Is the system subject to external regulation?
• How large is the system that is being developed?
What are three important characteristics of extreme programming? Ans:
• Requirements expressed as scenarios,
• Pair programming,
© 2026 Assignment
• Test-first development.
Guru01 - Stuvia
What is test-first development? Ans: When a system feature is
Expert
identified, the tests of the code implementing that feature are written
before the code. Tests are automated and all tests are run when a new
increment is added to the system.
What are the possible problems of test-first development? Ans: •
Programmers may take short-cuts when developing tests so that the
system tests are incomplete.
• Some tests can be difficult to write incrementally.
• It is difficult to estimate the completeness of a test set.
Briefly describe the advantages of pair programming Ans: • It supports
the idea of common ownership and responsibility for the code.
• It serves as an informal code review process.
• It helps support refactoring.
What is a Scrum sprint? Ans: A short (3-4 weeks) planning unit in which
work to be done is assessed, features are selected for development, and
the software is implemented and delivered to system stakeholders.