0% found this document useful (0 votes)
14 views

Unit08ExercisesA Student

A

Uploaded by

scribdkugasd
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

Unit08ExercisesA Student

A

Uploaded by

scribdkugasd
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Exercise 8: Software Development

Software development activities are grouped into four main categories: analyze, design, code,
and test. This activity explores ways to organize these categories into a software development
life cycle (SDLC).

Model 1 Finding & Fixing Errors


Estimate how long (seconds, minutes, hours, days, weeks, months, or years) it typically takes
to correct an error in software when it is found by:

a. a compiler, seconds after the file was edited seconds


b. a compiler, later the same day or during a nightly hours/days
build
c. a pair programming partner, seconds after the er-
ror was made
d. a code review, days or weeks after the file was
edited
e. a customer or other user, months after the software
is released
f. a unit test, minutes after the file was edited
g. a unit test, later the same day or during a nightly
build
h. a system test, shortly before software is released
(weeks or months after the file was edited)

1. Describe (or sketch a graph of) the relationship between the time to find an error and the
time and cost to repair an error.
2. Explain why we should use an SDLC that finds and fixes errors as quickly as possible.

Model 2 The Waterfall Model


The following diagram shows the typical percentage of total cost & effort for each stage of
software development. In practice, these percentages vary widely by project.

3. Based on the Waterfall Model:

a) How many stages are there?

b) Which stage is 1st?

c) Which stage(s) must be finished before coding starts?

4. Based on the Waterfall Model:

a) What % of total effort is in the last stage?

b) What % of total effort is in the first two stages?

c) When the project is 25% completed, what % of analysis is done?

d) When the project is 25% completed, what % of coding is done?


e) When the project is 50% completed, what % of coding is done?

f) When the project is 50% completed, what % of testing is done?


5. It is important to find and fix errors in software.

a) If coding errors are found during C: Code,


in which stage should they be fixed?

b) If coding errors are found during D: Test,


in which stage should they be fixed?

c) If analysis errors are found during B: Design,


in which stage should they be fixed?

d) If analysis errors are found during D: Test,


in which stage should they be fixed?

e) Which stage focuses most on finding errors?

f) Are major errors in analysis and design more likely


when the project is similar to past projects, or different?

6. Later stages often take more time, effort, and money than expected. Explain why based on
your answers to the previous questions.

Model 3 The Iterative Model


Assume that the total cost & effort is the same for Model 2 and Model 3. They differ only in
how the SDLC is organized.

7. Based on the Iterative Model:

a) How many stages are there?

b) Which stage is 7th?

c) Which stages involve design?

d) What % of total effort is for the first four stages?

e) What % of total effort is for testing?

f) What % of total effort is for analysis and design?

8. Based on the Iterative Model:

a) During what stage is the project 25% completed?

b) When the project is 25% completed, what % of analysis is done?

c) When the project is 25% completed, what % of coding is done?

d) When the project is 25% completed, what % of testing is done?

e) During what stage is the project 50% completed?

f) When the project is 50% completed, what % of analysis is done?

g) When the project is 50% completed, what % of coding is done?

h) When the project is 50% completed, what % of testing is done?

NOTE: The iterative model does not necessarily repeat exactly three times. The key idea is that it
repeats each stage multiple times, for the reasons you will identify on the next page.
9. It is important to find and fix errors in software.

a) If analysis errors are found during A1: Analyze,


in which stage could they be fixed?

b) If analysis errors are found during B1: Design,


in which stage could they be fixed?

c) If coding errors are found during D2: Test,


in which stage could they be fixed?

d) If analysis errors are found during B2: Design,


in which stage could they be fixed?

e) Are analysis errors likely to cause design errors?

f) Are design errors likely to cause coding errors?

g) Is it better to have one try or several tries


to remove all errors from the project?

10. Explain why each test stage should try to find as many errors as possible.

11. If you are building a web site sell textbooks, what would be difference in approaches
between using iterative (agile) and waterfall.

You might also like