Lecture 7 - Software Estimation I Flashcards

1
Q

In Scope management, what does Scoping mean?

A

Define boundaries of the project

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the elements that make up Scope Management? (3)

A
  • Time
  • Resources
  • Functionality
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Brook’s Law?

A

Adding a human resource to a late software project makes it later

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

5 persons working full time for six weeks in a project, 35 hours of work per week. What is the Work Effort?

A

Work Effort = (5 persons x 6 weeks x 35 hours/week) = 1050 person-hours

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is “productive effort”?

A

A person’s effort on project related tasks. Excludes lunch, coffee, team meetings, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

TF: Effort and Cost estimation allow you to estimate how many features can be delivered within a specific development iteration

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

TF: Estimating time needed for defect correction work is a benefit of Effort and Cost Estimation

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a solution for a project that is over-scoped?

A

Reduce scope by defining a feature subset (release/project baseline) such that it is no longer over-scoped

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How do you define requirements baseline-steps? (3)

A
  • Establish business value
  • Assess effort (person-hours) required to develop feature
  • Assess risk involved in developing feature
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

TF: Assessing scope effort early in the project is easy

A

False. Difficult to estimate since requirements not detailed and design unclear

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

TF: A factor to consider when assessing scope risk is new unproven technologies being used

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are the Priority categories in Requirements Priority? (3)

A
  • Critical
  • Important
  • Useful
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does it mean if a requirement is said to be Critical in Requirement Priority?

A

Means requirement must be incorporated in next product release

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What does it mean if a requirement is said to be Important in Requirement Priority?

A

Means requirement is necessary but can be deferred to later release if necessary

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What does it mean if a requirement is said to be Useful in Requirement Priority?

A

Means it would be nice to have, but might be dropped if there is insufficient time or resources

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the Prioritization techniques? (3)

A
  • Ranking
  • Grouping
  • Hundred-dollar method
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

How does the Ranking prioritization technique work?

A

Rank requirements using a scale

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

How does the Grouping prioritization technique work?

A

Group requirements based on priority groups (critical, important, useful)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

How does the Hundred-dollar method prioritization technique work?

A

Stakeholders get a conceptual $100 to distribute among requirements

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is the first principle of Estimation Fundamental Principles?

A

An estimate is a projection from past to future, accounting for differences between past and future

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

How is the past captured in the first principle of Estimation Fundamentals?

A

Historical data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

How is the future captured in the first principle of Estimation Fundamentals?

A

Requirements for the software to be developed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

In the second principle of Estimation Fundamental Principles, all estimates are based on… (2)

A
  • Set of assumptions that must be realized
  • Set of constraints that must be satisfied
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is an assumption?

A

Statement taken to be true without verifying
(ex: might be assumed that productivity factor for project will be 500 lines of code per month)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What is a constraint?

A

An externally imposed condition that must be observed
(ex: project might be constrained to 5 people for 6 months)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Say you are given the constraint that 5 people will work for 6 months, and that similar past projects had an average of 50 delivered source lines of code (DSLOC) per person month, what product can we build?

A

5 people x 6 month = 30 person-months
50 x 30 = 1500 DSLOC per person-month

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What is the third principle of Estimation Fundamental Principles?

A

Projects must be re-estimated periodically as understanding grows and aperiodically as project parameters change

28
Q

How often should re-estimation and re-planning occur for a project less than 12 months long?

A

Monthly basis

29
Q

How often should re-estimation and re-planning occur for a project more than 12 months long?

A

Quarterly basis

30
Q

What are unanticipated changes that would require re-estimation of a project? (5)

A
  • Major change in requirements
  • Failure of new technology
  • Compression of schedule
  • Reduction of planned budget
  • Loss of key personnel
31
Q

When is uncertainty highest for a project?

A

At the start of the project

32
Q

When is uncertainty lowest for a project?

A

At the end of the project

33
Q

When is confidence lowest for a project?

A

At the start of the project

34
Q

When is confidence highest for a project?

A

At the end of the project

35
Q

What is the concept used to show the uncertainty and confidence level for a project?

A

Cone of uncertainty

36
Q

What are two popular experience-based estimation approaches?

A
  • Estimation by Analogy
  • Estimation by Expert Judgment
37
Q

Estimating new projects by comparing them to similar past projects is which estimation approach?

A

Estimation by Analogy

38
Q

In Estimation by Analogy, ‘Using analogies to determine size measure’ means what?

A

comparing a new project or task to a similar past one to estimate effort, time, or cost

39
Q

What is the first step of Estimation by Analogy?

A

Get detailed size results for a similar previous project

40
Q

Finding subsystems (DB, UI, Classes, reports, etc.), number of elements (# of tables in DB, web pages for each subsystem) is part of which estimation technique and which step?

A

Step 1 of Estimation by Analogy

41
Q

What is the second step of Estimation by Analogy?

A

Compare size of new project to a similar past project

42
Q

How do you get the multiplication factor for comparing size of new project to similar past project in Estimation by Analogy?

A

Multiplication factor (subsystem) = (# elements in New) / (# elements in Old)

43
Q

What is the third step of Estimation by Analogy?

A

Build up estimate for the size of the new project

44
Q

How do you get the size of the new subsystem in Estimation by Analogy?

A

Size (new subsystem) = size (old subsystem) x multiplication factor

45
Q

How do you get the size of the new Project in Estimation by Analogy?

A

Size (new project) = sum of size of all its subsystems

46
Q

What is the fourth step of Estimation by Analogy?

A

Create an effort estimate based on size of the new project

47
Q

How do you get the size ratio of a project in Estimation by Analogy?

A

Size ratio = size (new project) / size (old project)

48
Q

How do you get estimated effort for a new project in Estimation by Analogy?

A

Estimated effort (new project) = Effort (old project) x size ratio

49
Q

When should you use Estimation by Analogy? (3)

A
  • When little data available (but previous systems can serve as basis)
  • Quick, rough order of magnitude estimate needed
  • Check on other techniques
50
Q

TF: Estimates when little data is available is an advantage of Estimation by Analogy

A

True

51
Q

TF: Estimation by Analogy requires large data collection

A

False. Requires limited data collection

52
Q

TF: Estimation by Analogy is based on actual costs

A

True

53
Q

TF: A disadvantage of Estimation by Analogy is it is based on limited data

A

True

54
Q

TF: Subjective adjustments are easy to validate in Estimation by Analogy

A

False. Difficult to validate

55
Q

TF: Accuracy being highly dependent on similarity between two projects is a disadvantage of Estimation by Analogy

A

True

56
Q

TF: Estimation by Analogy identifies cost drivers

A

False. Do not identify cost drivers

57
Q

Asking for an estimate for a project to someone knowledgeable about the application or development environment is which estimation approach?

A

Estimation by Expert Judgment

58
Q

What is Delphi technique of Estimation by Expert Judgment?

A

When opinions of more than one expert is combined

59
Q

How does the Delphi Technique work for Estimation by Expert Judgment?

A
  • Each member estimates portion of project, then meet to compare estimates
  • Discuss differences between individual results
  • average out estimates
  • Arrive to consensus estimate E
  • Calculate range of effort estimation values
60
Q

At the beginning of a project, the range of effort estimation values is within what?

A

± 25%
ex: [min, max] = [E * 75%, E * 125%]

61
Q

As a project advances, the range of effort estimation values is within what?

A

± 15%
ex: [min, max] = [E * 85%, E * 115%]

62
Q

What is the PERT estimation technique used for?

A

To create task-level estimates where the people who will complete the task create the estimates

63
Q

What are the two cases we create when using the PERT estimation technique?

A
  • Best Case
  • Worst Case
64
Q

How do you calculate the Expected Case in PERT Estimation technique?

A

ExpectedCase = [BestCase + (4*MostLikelyCase) + WorstCase] / 6

65
Q

What are the advantages of Delphi Technique for Estimation by Expert Judgment? (2)

A
  • Relatively cheap estimation method
  • Accurate to degree that experts have direct experience with similar systems
66
Q

What is a disadvantage of Delphi Technique for Estimation by Expert Judgment?

A

Low experience / no experiences results in inaccurate estimates