Project planning and risk management Flashcards

(28 cards)

1
Q

What can we do to physically measure the quality of code?

A
  • Lines of code
  • Fog index (readability of code)
  • Number of reported faults after delivery
  • Number of person days for coding
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Define software risk

A

Potential hazards in software system which lead to security and privacy breeches

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

Define project risk

A

Likelihood of events or circumstances that affect successful project execution

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

How do we reduce software risk?

A
  • Conduct functional risk analysis as early as possible
  • Create some clear “shall nots”
  • Ongoing risk monitoring
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are shall-not requirements?

A

What our system definately SHOULD NOT do

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

What are the two types of shall-not requirement?

A

Functional shall-not requirements
Non-functional shall-not requirements

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

Explain functional shall-not requirements?

A

What should not happen
What should happen for non-correct usage or errors

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

Explain non functional shall-not requirements

A

Define the reliability and availability of software
Can be measured by:
- availability
- rate of failures
- recovery time

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

What could be some security concerns when developing software?

A
  • Credit card data
  • Customer patients data
  • Proprietary algorithms
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are 4 project management concerns?

A
  1. Deliver the software to customer on schedule
  2. Keep overall costs within budgets
  3. Deliver software that meets the customer expectations
  4. Maintain a happy and well functioning dev team
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the role of the project manager in terms of risk?

A
  • Considering and preparing for possible problems in the future so the project goes smoothly
  • All risks should be listed and a strategy considered
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are some risk types?

A

Technology
People
Organisational
Tools
Requirements
Estimations

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

Explain risk prioritisation

A

Rank risks by the probability of them (low, moderate, high) and their effect (insignificant, tolerable, catastrophic)

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

What are 3 different strategies to manage project risk

A

Mitigate, Avoid or handle (contingency)

Avoidance is the best strategy

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

What are the four different types of traditional planning diagrams?

A

PERT
Critical path method
Gantt chart
Staff allocation charts

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

What is a PERT chart?

A

Diagram for tasks and dependencies with bubbles and arrows.

Can be simple or more detailed (annotated with optimistic time, pessimistic time and most likely times)

17
Q

What is a critical path method?

A

Take a PERT chart and identify all the paths through it, identifying the length of time it takes for each path
- Longest path is the critical path

This is known as the bottleneck route, but can be complicated in large projects (use software to derive this)

18
Q

What is a GANTT chart?

A

Adding time to tasks/dependencies, kinda looks like a bar chart
- Milestones to review progress
- Plan is an estimate so look for slippage (ignoring small, if big replan)

19
Q

What is staff allocation charts?

A

Who can do the tasks/dependencies

20
Q

What is agile planning?

A

Fixed number of people in team

Setting deadlines
- Output is always working software

Estimate what work can be done in between deadlines
- Pick a user story and assign points for how hard they are
- Productivity is then daily points score

21
Q

What are two approaches to estimating project budgets?

A

Analyse the work and estimate developer time
- Done by management experience or algorithmic cost modelling

Analyse developer time and define how much work to do
- Scrum methodology, agree on num of sprints and cost revolves around this. Expanding a project = buy more sprints

22
Q

What is the disadvantage of algorithmic cost modelling?

A
  • Often complex and people are nervous of using them
  • Typically inaccurate
23
Q

What factors affect project price?

A
  • Market opportunity
  • Cost estimate uncertainty
  • Contractual terms
  • Requirements volatility
  • Financial health
24
Q

Generally, how do we estimate the cost for a project?

A

Break down and plan order of work
- estimate time and effort accounting for risk

Cost will be at least this
- Sales people figure out profit

Management use experience to guide cost

25
Give an example of how to use each type of risk strategy.
Avoidance Handling risk Mitigating risk
26
Give an example of avoiding a risk
Follow good coding practices to prevent vulnerabilities being introduced
27
Give an example of handling risk
Code reviews to address problems in code
28
Give an example of mitigating risk
Paired programming and reorganising team to ensure that staff illness doesn't affect development