SOFTWARE PROCESSES Flashcards

1
Q

Give examples of project constraints

A

staff, money, time, computing resources,

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

Describe project planning

A

Project planning is the art of scheduling the necessary activities, in time, space and across staff in order to have in mind:
 project risk
 profit
 customer satisfaction
 worker satisfaction
 long-tern company goals

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

What information must a project plan include?

A

 resources needed (people, money, equipment, etc)
 dependency & timing of work (flow graph, work packages)
 rate of delivery (reports, code, etc)

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

Give examples of deliverables an SE project must produce to make it more visible

A

 Design documents/ prototypes
 Reports
 Project/status meetings
 Client surveys (e.g. satisfaction level)

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

What is a software process?

A

A structured set of activities required to develop a
software system

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

What steps are a part of all software processes?

A

 Specification – defining what the system should do;
 Design and implementation – defining the organization of the system and implementing the system;
 Validation – checking that it does what the customer wants;
 Evolution – changing the system in response to changing customer needs.

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

What is a software process model?

A

A software process model is an abstract representation
of a process. It presents a description of a process from
some particular perspective.

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

What do software descriptions entail

A

 Activities in these processes such as specifying
a data model, designing a user interface, etc. and the
ordering of these activities
 Products, which are the outcomes of a process activity;
 Roles, which reflect the responsibilities of the people
involved in the process;
 Pre- and post-conditions, which are statements that are true before and after a process activity has been enacted or a product produced.

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

What are the different types of software process models

A

 Plan-driven processes are processes where all of the
process activities are planned in advance and progress
is measured against this plan. AKA Heavy-weight

 In Agile Processes planning is incremental and it is
easier to change the process to reflect changing customer requirements. AKA Light-Weight

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

Give examples of Heavy-Weight models

A

Waterfall Model
Boehm’s Spiral Model
V-shaped Model

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

Describe the waterfall model

A

 Separate and distinct phases of specification and development.
 Heavily oriented toward documentation (documentation-intensive)
 Progress often measured through documentation completion and reviews (many)
 Gantt charts
 Lockstep approach

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

Illustrate the different phases of the waterfall method

A

*See notes

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

What are some of the problems involved with waterfall models

A

Inflexible partitioning of the project into distinct stages
makes it difficult to respond to changing customer
requirements.
But many issues are true too, such as risk addressing.

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

In which situations is the waterfall model used?

A

 This model is only appropriate when the requirements are well-understood and changes will be fairly limited during the design process.
 The waterfall model is mostly used for large systems
engineering projects where a system is developed at
several sites.
 In those circumstances, the plan-driven nature of the waterfall model helps coordinate the work.

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

Describe the Boehm’s spiral model

A

 Process is represented as a spiral rather than as a
sequence of activities with backtracking.
 Each loop in the spiral represents a phase in the process.
 No fixed phases such as specification or design - loops in the spiral are chosen depending on what is required.
 Risks are explicitly assessed and resolved throughout the process.
 This was the motivation behind developing the Spiral Model - Risk

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

Illustrate the Boehm’s Spiral Model

A

*See notes

17
Q

What are the sectors of the spiral model sectors?

A

 Objective setting
Specific objectives for the phase are identified.
 Risk assessment and reduction
Risks are assessed and activities put in place to reduce
the key risks.
 Development and validation
A development model for the system is chosen which
can be any of the generic models. Development takes
place.
 Planning
The project is reviewed and the next phase of the spiral
is planned.

18
Q

In what situations in the spiral model used?

A

 Spiral model has been very influential in helping people think about iteration in software processes and
introducing the risk-driven approach to development
 In practice, however, the model is rarely used as
published for practical software development

19
Q

Describe the V-Shaped Model

A

 A variant of the Waterfall that emphasizes the
verification and validation of the product.
 Testing of the product is planned in parallel with a
corresponding phase of development.

20
Q

Illustrate the v-shaped model

A

*See notes for illustration and explanations of the steps

21
Q

What are the strengths of the V-Shaped model

A

 Emphasize planning for verification and validation of the product in early stages of product development
 Each deliverable must be testable
 Project management can track progress by milestones
 Easy to use

22
Q

What are the weaknesses of the V-Shaped model

A

 Does not easily handle concurrent events
 Does not handle iterations or phases
 Does not easily handle dynamic changes in requirements
 Does not contain risk analysis activities

23
Q

When is the V-Shaped Model used?

A

 Excellent choice for systems requiring high reliability eg hospital patient control applications
 All requirements are known up-front
 When it can be modified to handle changing requirements beyond analysis phase
 Solution and technology are known.

24
Q

What are the disadvantages of Heavy-Weight models in general

A

Delivered late,
Over budget,
Failure to meet functional and non-functional requirements,
Not responsive to change,
Poor assessment of risk,
Discovery of major problems late