Project Management: Procedure and Process Models, etc Flashcards

1
Q

What is the difference between a process model and a procedure model?

A

A process model is the procedure model + organisational structure (documentation, etc)

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

What are the procedure models?

A

waterfall, spiral

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

What are the process models?

A

phase model, V-modell XT, agile (extreme programming, scrum)

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

Describe the waterfall model?

A

Software development is seen as a sequence of activities coupled by (partial) results (documents). These activities can be conducted concurrently or iteratively. Sequence: analyse, specify, design, code, test, install, maintain.

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

Define risk

A

a problem, which did not occur yet, but on occurrence threatens important
project goals or results. Whether it will occur, cannot be surely predicted. Equation: risk value = prob of risk * cost if occurs

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

Describe the Spiral Model procedure

A

Idea: do not plan everything ahead, go step-by-step. Repeat until end of project:

  1. determine set R of risks (if R is empty, project is done)
  2. assign each risk r, a risk value v(r)
  3. for the risk r with the highest risk value, find a way to eliminate this risk (if not possible, stop with project failure)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the advantages of the spiral model?

A

know early if the project goal is unreachable, know that biggest risks are always eliminated

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

What are the four parts of the spiral model diagram?

A

upper left: investigate goals/alternatives/side conditions,
upper right: conduct risk analysis,
lower right: develop and test next product part,
lower left: plan next phase

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

What is the difference between linear and non-linear procedure models?

A

linear = waterfall model (no feedback), non-linear = everything else

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

What are the different classifications by treatment of software artefacts?

A

prototyping, evolutionary, iterative, incremental, staircase (piped incremental)

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

Describe prototyping treatment of software artefacts

A

create “early release/version” of software to test and develop requirements for actual software based on this

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

Describe evolutionary treatment of software artefacts

A

Linear set of iterations which produce the software after last iteration (or return to requirements). Each iteration includes field testing, after which the next iteration is planned.

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

Describe iterative treatment of software artefacts

A

Plan out each iteration (specifications for each iteration) at the beginning. Then conduct each iteration in order. Each iteration includes analyse, design, code, test.

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

Describe incremental treatment of software artefacts

A

The total extension of a system under development remains
open; it is realised in stages of expansion. The first stage is the core system. Each expansion of features is a separate project which produces a software product.

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

Describe staircase treatment of software artefacts

A

pipelined incremental

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

List examples of what a process model may include

A

procedure model, responsibilities, roles, structure of documents, methods to be used to get requirements, tools to be used, notations

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

Definition of a procedure model

A

steps to be conducted during development,
their sequential arrangement,
their dependencies

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

When is a process model too light?

A

if it doesn’t support you in doing things which are useful and necessary for your project

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

When is a process model too heavy?

A

if it forces you to do things which are neither necessary nor useful for your project

20
Q

What is the phase model?

A

The project is planned by phases,

delimited by well-defined milestones. Used for small projects (few software people, small product size)

21
Q

What are the steps of the V-Modell?

A

Layers (arrow means verification and validation):

  1. requirements fixed acceptance
  2. system specified system delivered
  3. architecture designed system integrated
  4. modules designed system realized
22
Q

What are the project types of the V-Modell?

A

AG: project from perspective of customer
AN: project from perspective of developer
AG/AN: customer/developer from same organisation
PM: introduction/improvement of a process model

23
Q

Which three strategies does the V-Modell support?

A
  1. incremental (one trace through the V is one increment)
  2. component-based (loop through upper part of V until all components of system are created)
  3. prototypical (zigzag down the V fully developing an early release )
24
Q

What are the advantages and disadvantages of the V-Modell?

A

Advantages: includes management activities, generic with support for tailoring, comprehensive so low risk of forgetting anything
Disadvantages: too comprehensive, too many useless documents

25
Q

Describe the Agile Manifesto

A

Value

  1. individuals/interactions over processes/tools
  2. working software over comprehensive documentation
  3. customer collaboration over contract negotiation
  4. responding to change over following a plan
26
Q

Name two examples of agile principles

A
  1. welcome changing requirements, even late in development

2. deliver working software frequently

27
Q

Describe Agile Process Models generally

A
  • iterative with cycles lasting up to 3 months
  • work in small groups (6-8 people)
  • don’t focus on comprehensive documentation
  • recommend or request customer’s presence in project
28
Q

What are extreme programming (XP) values and practices?

A

Values: simplicity, feedback, communication, courage, respect
Practices: stand-up meetings, continuous integration, joint responsability for code on team, test driven development

29
Q

What are the roles of Scrum? Difference to XP?

A

Role-based without requiring techniques like XP. Roles:

  1. product owner (representative of customer)
  2. scrum team (develop autonomously)
  3. scrum master (moderates daily scrum, maintaines product backlog)
30
Q

What are important components of Scrum process?

A
  1. daily scrum
  2. sprint (max 30 days)
  3. sprint review (product owner accepts results)
  4. sprint retrospective (how well did scrum work?)
31
Q

Why use process metrics?

A

quality of production influences product quality

32
Q

What is the CMMI process metric?

A

Five levels used to assess a company’s software development process: initial, managed, defined, quantitatively managed, optimising.. Example: did the company analyse requirements in some way?

33
Q

What are the process metrics?

A

CMMI, SPICE (similar to CMMI)

34
Q

Characteristics of a software project

A

duration is limited, has an originator, has a purpose, has a recipient, links people, results, and resources

35
Q

What defines a successful project?

A

delivers defined results, with demanded quality, within scheduled time, using assigned resources

36
Q

What are the main project management activities?

A

planning, assessment and control, recognizing and fighting difficulties, communication, leading/motivating employees, creation/preservation of good working environment for developers

37
Q

Relationship between phases and milestones?

A

A phase is a continuous, i.e. not interrupted range of time in which certain works are
carried out and completed. At the end of each phase, there is a milestone.

38
Q

Roles and people

A

In a software project at given time, there is set of active roles. Each role has responsabilities, rights, required skills. Task of project manager: assign a set of people to each role

39
Q

Examples of roles

A

customer, user, project manager, systems analyst, software architect, developer, maintenance engineer

40
Q

Definition of software development process?

A

The process by which user needs are translated into a software product.
The process involves translating user needs into software requirements,
transforming the software requirements into design,
implementing the design in code, testing the code, and
sometimes, installing and checking out the software for operational use.

41
Q

What are the definitions of role, artefact, activity, decision point?

A

role: has responsibilities/rights, needs skills/capabilities .
artefact: all products emerging DURING development prcess
activity: any processing of artefacts.
decision point: special case of activity – decision is made based on artefacts, corresponds to milestone.

42
Q

What are “process building blocks”?

A

combinations of roles, artefacts, decision points, and activities. relations: responsibility, dependency, creation/modification

43
Q

definition of software life cycle?

A

The period of time that begins when a software product is conceived
and ends when the software is no longer available for use

44
Q

definition of software development cycle?

A

The period of time that begins with the decision to

develop a software product and ends when the software is delivered

45
Q

What is the “code and fix” procedure model and pros and cons?

A

denotes an approach, where coding and correction alternating with
ad-hoc tests are the only consciously conducted activities of software development. Pros: solves problems quickly, activities are easy. Cons: hard to plan project, hard to assign work to people, no notion of correctness if requirements not stated, tests lack expected outcome, maintenance is difficult, documentation is not complete.

46
Q

Why use process model?

A

devise schedule, estimate/control phases and deadlines