SE Cha 2
SE Cha 2
SE Cha 2
Project Scheduling
Risk Management
2
Introduction
Responsibilities of a software project manager
6
Cost Estimation
Predicting the resources required for a software
development process.
Fundamental estimation questions
10
The Project scheduling process
11
Scheduling problems
Estimating the difficulty of problems and hence the
cost of developing a solution is hard.
Productivity is not proportional to the number of
people working on a task.
– Adding people to a late project makes it later
because of communication overheads.
The unexpected always happens. Always allow
contingency in planning. 12
Bar charts and activity networks
Graphical notations used to illustrate the project
schedule.
Show project breakdown into tasks. Tasks should not
be too small. They should take about a week or two.
Activity charts show task dependencies and the the
critical path.
Bar charts show schedule against calendar time.
13
Task durations and dependencies
14
Activity timeline
15
Staff allocation
16
Staffing and personnel planning
Staffing means appointing competent persons
according to the importance of the post in the
organization.
It means that more capable persons are appointed
on more important posts, and comparatively less
competent persons can be appointed on less
important posts.
17
Staffing and personnel planning…
Importance
helpful in discovering and obtaining competent
personnel
Helpful in better performance
Helpful in optimum utilization of human resource
18
Software configuration management
Large software development effort typically consist of a large
number of objects, e.g. source code, design document, SRS
document, test document, user’s manual, etc.
These objects are usually referred to and modified by a number
of software engineers through out the life cycle of the software.
The state of all these objects at any point of time is called the
configuration of the software product.
The state of each deliverable object changes as development
progresses and also as bugs are detected and fixed.
19
Software configuration management
Configuration management is the art of identifying,
organizing, and controlling modifications to the
software being built by a programming team. The goal
is to maximize productivity by minimizing mistakes.
Software configuration management is a set of
activities that have been developed to manage change
throughout the life cycle of computer software.
What is the origin of these changes?
20
Software configuration management
1. New business conditions dictate changes in product
requirements or business rules.
2. New customer needs demand modification of data produced by
information systems, functionality delivered by products, or
services delivered by a computer-based system.
3. Reorganization or business growth/downsizing causes changes
in project priorities or software engineering team structure
4. Budgetary or scheduling constraints cause a redefinition of the
system or product.
21
Necessity of software configuration management
23
Quality assurance plan
Quality assurance consists of the auditing and reporting
functions of management.
The goal of quality assurance is to provide management with
the data necessary to be informed about product quality, thereby
gaining insight and confidence that product quality is meeting
its goals.
Of course, if the data provided through quality assurance
identify problems, it is management’s responsibility to address
the problems and apply the necessary resources to resolve
quality issues. 24
Risk management
Risk management is concerned with identifying risks
and drawing up plans to minimize their effect on a
project.
A risk is a probability that some adverse
circumstance will occur
– Project risks affect schedule or resources;
– Product risks affect the quality or performance of the
software being developed;
– Business risks affect the organization developing or
procuring the software.
25
Software risks
26
Risk management process
Risk identification
– Identify project, product and business risks;
Risk analysis
– Assess the likelihood and consequences of these risks;
Risk planning
– Draw up plans to avoid or minimize the effects of the
risk;
Risk monitoring
– Monitor the risks throughout the project;
27
Risk management process…
28
Risk management process
Risk identification
• Technology risks.
• People risks.
• Organizational risks.
• Requirements risks.
• Estimation risks.
29
Risk management process
Risk analysis
• Assess probability and seriousness of each risk.
• Probability may be very low, low, moderate, high or
very high.
• Risk effects might be catastrophic, serious, tolerable
or insignificant
30
Risk management process
Risk planning
• Consider each risk and develop a strategy to manage that risk.
– Avoidance strategies
• The probability that the risk will arise is reduced;
– Minimisation strategies
• The impact of the risk on the project or product
will be reduced;
– Contingency plans
• If the risk arises, contingency plans are plans to
deal with that risk;
31
Risk management process
Risk monitoring
• Assess each identified risks regularly to decide
whether or not it is becoming less or more probable.
• Also assess whether the effects of the risk have
changed.
• Each key risk should be discussed at management
progress meetings.
32
nd!
e e n ?
h
T uest i o
y q
A n
33