SE Questions 1
SE Questions 1
1. What often-false assumption does the waterfall model made about requirements specifications?
2. True or false? It is better to discover defects later in the development process. That way, you can have
more of the system finished before you worry about fixing things.
a. True
b. False
a. True
b. False
5. If your project has unstable requirements (i.e., that are prone to change), you should use a waterfall
process model.
a. True
b. False
a. 1 week
b. 2–6 weeks
c. 2–4 months
d. 6 months to a year
a. A running instance of a program; for example, a UNIX process is a softw. devel. process
b. Something developers do to accomplish a goal during a project; for example, planning poker
is a softw. devel. process for estimation
c. Something developers use to accomplish a goal during a project; for example, Subversion is a
softw. devel. process for configuration management
d. A structure imposed on the development of a software product; for example, developing it-
eratively and incorporating best practices might be ingredients in a softw. devel. process
a. 1 week
b. 2 weeks
c. 4 weeks
d. 6 weeks
e. All of the above
9. Which one of these is appropriate in an agile and iterative development process?
a. Gather a complete set of requirements before designing/building anything.
b. Implement the backend of the system first—that is, before implementing the frontend func-
tionality with which users interact.
c. Generate and maintain complete, detailed design documents, which comprehensively model
all aspects of the design.
d. Implement the system incrementally, building it up bit by bit.
e. Test the code at the end, after the system has been completely implemented.
11. Which of the following problems does iterative development directly address?
a. Design erosion
b. Unstable requirements
c. Program comprehension
12. Which type of process control model is appropriate for software development?
a. iterative
b. waterfall
c. agile
d. spiral
14. True or false? In iterative software development, iterations should be 2 to 6 days in length.
a. True
b. False
Solutions:
1. d
2. b
3. a
4. b
5. b
6. b
7. d
8. a
9. d
10. e
11. b
12. b
13. b
14. b
Question:
• What often-false assumption does the waterfall software engineering process make?
• Why does this false assumption cause considerable problems for waterfall?
• How does iterative development overcome these problems?
Solution:
Waterfall software development makes the false assumption that requirements are mostly stable and can
be known from the beginning.
This false assumption creates considerable problems for waterfall because the whole system may be de-
veloped before problems with the requirements are discovered. Furthermore, the later defects are discov-
ered in a software product, the more expensive they are to fix (the Defect Cost Increase (DCI) Principle).
Iterative development overcomes these problems by maintaining a tight feedback loop. That is, feedback
on the system is collected at regular intervals, revealing any problems early in the process when they are
less expensive to correct.
Multiple-Choice Questions:
a. US creation
b. US corrections
d. Add Estimations
2. In the agile development process taught in class, the development team estimates each user story and
decides the priority for each story.
a. True
b. False
a. Role playing
b. Blueskying
c. Planning poker
d. Observation
a. True
b. False
5. T or F? Planning poker uses the “wisdom of the single biggest expert” to estimate how long it will
take to implement user stories.
a. True
b. False
6. Who knows the value of a requirement and who knows the cost of implementing the requirement?
(The answer to this question motivates the need for certain developer-customer communications in
the development process covered in class.)
a. The developers know both the value and the cost of requirements
b. The customer knows both the value and the cost of requirements
c. The customer knows the value of requirements, and the developers know the cost
d. The developers know the value of requirements, and the customers know the cost
e. Both the developers and the customer know the value and the cost of requirements
Solutions:
1. c
2. b
3. c
4. b
5. b
6. c
Problem: Describe the process of iteration planning that we used in this course by writing 7 sentences.
Create each sentence by filling in 3 blanks with the following words/phrases. Fill in all blanks.
3. Next, the developers estimate the effort required to implement each user story.
Solution:
Problem: If your team planned to do 45 days worth of work, but it actually took them 50 days, what is
your team’s velocity?
Solution:
Problem: After your team chooses the USs to implement in an iteration, but before the team begins im-
plementing, what three things must the team do?
Solution:
Problem: Based on the following burn-down graph, did the team finish the iteration ahead of schedule,
behind schedule, or on schedule?
Solution: