05 Lecture: Software Lifecycle Model Flashcards

1
Q

Who invented the Waterfall Model

A

Royce

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

List the sequentiall life cycle Models?

A
  • Waterfall Model

- V Model

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

What is the key feature of the Waterfall Model?

A

The key feature of the model is the verification activity (called “verification step” by Royce) at the end of each activity that ensures that the activity does not introduce unwanted or deletes mandatory requirements

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

What does the higher level of the V-Model focus on?

A

Higher levels of abstractions of the V-model deal with the requirements in terms of elicitation and
operation

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

What does the lower level of the V-Model focus on?

A

The lower level of the V-model focuses on details such as the assembly and coding of software
components

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

What does the middle level of the V-Model focus on?

A

The middle-part of the V-model focuses on mapping the understanding of the problem into a software architecture

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

What is Validation?

A

Assurance that a product, service, or system meets the needs of the customer and other identified stakeholders

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

What is Verification?

A

Evaluation whether or not a product, service, or system complies with a regulation,
requirement, specification, or imposed condition

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

Name the Iterative software lifecycle models

A
  • Spiral model
  • V-Model XT
  • Unified Process
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Name the Agile software lifecycle models

A
  • Extreme Programming (XP)
  • Kanban (covered in another class)
  • Scrum (already covered)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Define Incremental development

A

A strategy where the various parts of the system

are developed at different times or rates and integrated as they are completed

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

Define Iterative development

A

A strategy in which time is set aside to revise and

improve parts of the system

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

Where does Product iteration result from?

A

Product iteration can result from incremental addition of functionality that had not been anticipated in a previous iteration

Product iteration can also result from restructuring

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

Who invented the Spiral Model

A

Boehm

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

Describe the Spiral Model

A
  • 9 iterations

- 4 basic activities

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

What are the 4 basic activities of the Spiral Model?

A

1) Determine objectives, alternatives and constraints
2) Identify and evaluate alternatives
3) Identify and resolved risks
4) Develop a prototype and obtain approval for the next iteration

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

Name the 3 Tyoes of Prototypes

A

1) Illustrative Prototype
2) Functional Prototype
3) Exploratory Prototype (“Hack”)

18
Q

What is the difference between prototyping and rapid development?

A
  • Prototyping is a technical issue: It is a particular model in the life cycle process
  • Rapid development is a management issue: It is a particular way to control a project
19
Q

Limitations of Linear and Iterative Models?

A
  • Linear and iterative models do not deal well with frequent change
20
Q

Who developed the Unified Process

A

Booch, Jacobson, and Rumbaugh

21
Q

Describe Unified Process

A
  • An iterative and incremental lifecycle model built on the idea of cycles in the lifetime of a software system
  • Each cycle consists of 4 phases
  • Each phase can be iterated. During the duration of an iteration, several workflows are performed in parallel
22
Q

What are the 4 phases of a cycle in the Unified Process

A

Inception
Elaboration
Construction
Transition

23
Q

What means V-Model XT Tailoring?

A

Tailoring means selecting the process components to be used in the project

24
Q

When does static tailoring occur?

A

occurs at project definition time (before the project actually starts)

25
Q

When does dynamic tailoring occur?

A

may occur during project execution

26
Q

Describe the Execution of a V-Model XT project?

A

1) Determine project type and project characteristics
2) Choose a corresponding project execution strategy
3) Tailor the V-Model XT to your project
4) Repeat (i.e. iterate)

27
Q

Which model should you use when change occurs rarely?

A

Sequential model: Waterfall Model, V-Model

28
Q

Which model should you use when change occurs sometimes?

A

Iterative model: Spiral Model, Unified Process, V-Model XT

29
Q

Which model should you use when change occurs frequently?

A

Agile model: Scrum, Kanban, Extreme Programming (XP)

30
Q

Who developed Extreme Programming?

A

Kent Beck, Ron Jeffries, Ward Cunningham

31
Q

Main gaols of XP

A
  • Avoid over-planning
  • Improve software quality
  • Improve responsiveness to changing customer requirements
32
Q

What are the 4 roles of XP

A
  • developer
  • customer
  • manager
  • coach
33
Q

5 fundamental principles of Xp

A
  • rapid feedback
  • assume simplicity
  • incremental change
  • embracing change
  • quality work
34
Q

How is the result of an iteration in XP called?

A

deliverable

35
Q

What is Test Driven Development

A
  • Do not code before you gave tests
36
Q

What are the elements of TDD circle of life?

A

1) Testfails
2) Tespasses
3) Refactor

37
Q

What is Refactoring?

A

A change that leaves system behavior unchanged, but enhances simplicity, flexibility, understandability, and/or performance

38
Q

What is Pair Programming?

A

All production code is written with two people

looking at one machine

39
Q

Which rules are their in Pair Programming?

A
  • Driver

- Navigator (Observer)

40
Q

Situations where agile methods might not be appropriate

A
  • When it is not supported by the company culture
  • Project too big for regular complete integration
  • Where it inherently takes a long time to get feedback
  • Where you can’t realistically test