Project & Configuration Management (WK10&11) Flashcards
What are the three types of risk?
Project risks: risks that affect the project schedule/resources (eg. main software architect quits)
Product risks: affect the quality or performance of the software being developed (eg. failure of purchased component to perform)
Business risks: affect the organisation developing the product (eg. competitor releases product faster)
What are the four stages in the risk management process?
- risk identification
- risk analysis (assess likelihood and consequences)
- risk planning (minimising the risks)
- risk monitoring (risk assessment)
Risk identification: list some examples of common risks.
- Estimation risks: time required for development underestimate, size of software underestimated
- Organisational: organisational restructure changes managers, organisational financial problems force budget reductions
- People: can’t recruit staff with right skills, key staff are ill and unavailable at critical times, required training for staff is not available
- Requirements: changes proposed with would require major rework, customers fail to understand impact of req changes
- Technology: database used in the system cannot process as many transactions per second as planned, reusable software components contain defects that mean they can’t be used as planned
- tools: software tools cannot work together in an integrated way
Risk Analysis: what are the scales for probability and consequence?
Probability: very low, low(10-25%), moderate(25-50%), high(50-75%), very high (>75%)
Consequence: Catastrophic (threaten the project survival), serious (would cause major delays), tolerable (delays are within allowed contingency), insignificant.
Risk planning: what are the three types of risk mitigation strategies?
- Avoidance strategies: reducing the probability that the risk will arise to zero
- Minimisation strategies; reducing the impact of the risk on the project
- Contingency strategies: contingency plans for if the risk does happen
What are four important people management factors?
- consistency
- respect
- inclusion
- honesty
What are four factors affecting software pricing?
- market opportunity: may quote a low price because want to move into a new segment of the market (under pricing)
- requirements volatility: if requirements are likely to change, organisation may lower its price to win the contract. After contract is won, high prices can be charged for changes.
- Contractual terms: price may be lower if the customer is willing to allow the developer to keep ownership of the source code
- Financial health: if in financial difficulty, developers may lower the price to gain the contract
What are the two cost estimation techniques?
- Experience-based techniques: estimate is based on managers experience of past projects and the application domain
- Algorithmic cost modelling: formulaic approach using factors such as size, staff experience, etc.
What is set out and included in a project plan?
Project plan sets out: resources available to the project, the work breakdown, schedule for carrying out the work.
Sections included in a principal project plan may include: introduction, project organisation, risk analysis, hardware and software resource requirements, work breakdown, project schedule, monitoring and reporting mechanisms
Project scheduling: what is included in a project activity?
- a Duration (in calendar days or moths)
- an effort estimate (number of person-days/months to complete the work)
- a deadline
- a defined end point (might be a document, review meeting, successful test execution, etc)
What are milestones and deliverables?
Milestones: points in the schedule against which you can assess progress (eg. the handover of a system for testing)
Deliverables: work products that are delivered to the customer (eg. requirement document for the system)
What is configuration management?
Tracking and controlling changes in software systems. Why is it important?
- can quickly find issues
- knowing why changes are happening
- better understanding of paste changes to avoid fucking up new changes.
What is a configuration item and examples
Products of the software process that may have to be placed under configuration management. Things such as: specifications, designs, code, test data, user manuals, etc.
Configuration items have unique names (with version numbers for example)
What is defined in a configuration management plan?
- types of documents too be managed and a document naming scheme
- who takes responsibility for config. management.
- policies for change control and version management (when why how long)
- config. manag. tools (eg. Git, SVN)
What is involved in a change request form?
Change proposed, who requested the change, the reason the change was suggested, urgency of the change. Also records change evaluation impact analysis, change cost and recommendations.