Sunteți pe pagina 1din 85

Project

 Def:
 A specific plan or design
 A planned undertaking
 A large undertaking: for example, a public works scheme
 Planned activity
 The undertaking is non-routine: a job which is
repeated a number of times is not a project
Characteristics

 Non-routine tasks are involved


 Planning is required
 Specific objectives are to be met or a specified product
is to be created
 The project has a predetermined time span
 Work is carried out for someone other than yourself
Characteristics

 Work involves several specialisms


 Work is carried out in several phases
 The resources that are available for use on the project
are constrained
 The project is large or complex

E.g. Building the channel tunnel


Writing an operating system
S/w Projects Vs other projects
 Invisibility
 When a physical artifact such as a bridge or road is being
constructed the progress being made can actually be seen.
With software, progress is not immediately visible
 Complexity
 Per dollar, pound or euro spent, software products contain
more complexity than other engineered artifacts
 Flexibility
 The ease with which software can be changed is usually seen
as one of its strengths. The software system are likely to be
subject to a high degree of change
 Conformity
 Software developers have to conform to the requirements of
human clients
What is Management?
 It involves the following activities:
Problems with Software Projects

 Problems from Manager’s point of view


 Poor estimates and plans
 Lack of quality standards and measures
 Lack of guidance about making organizational decisions
 Lack of techniques to make progress visible
 Poor role definition – who does what?
 Incorrect success criteria
Problems with Software Projects (Cont.)

 Problems from team member’s point of view


 Inadequate specification of work
 Management ignorance
 Lack of knowledge of application area
 Lack of standards
 Lack of up-to-date documentation
 Preceding activities not completed on time – including
late delivery of equipment
 Lack of communication between users and technicians
Problems with Software Projects (Cont.)

 Lack of communication leading to duplication of work


 Lack of commitment – especially when a project is tied
to one person who then moves
 Narrow scope of technical expertise
 Changing statutory requirements
 Changing software environment
 Deadline pressure
 Lack of quality control
 Remote management
 Lack of training
Project Management
 Project management in the modern sense began in the early 1960s, although
it has its roots much further back in the latter years of the 19th century.
 The need for project management was driven by businesses that realized the
benefits of organizing work around projects and the critical need to
communicate and co-ordinate work across departments and professions.
 Here is the main definition of what project management is:
 Project management is no small task.
 Project management has a definite beginning and end. It is not a
continuous process.
 Project management uses various tools to measure accomplishments
and track project tasks. These include Work Breakdown Structures,
Gantt charts and PERT charts.
 Projects frequently need resources on an ad-hoc basis as opposed to
organizations that have only dedicated full-time positions.
 Project management reduces risk & increases the chance of success.
Project Management (Cont.)
 Project management is often summarized in a triangle. The three
most important factors are time, cost and scope, commonly called
the triple constraint. These form the vertices with quality as a central
theme.
Project Management (Cont.)

 Projects must be delivered on time.


 Projects must be within cost.
 Projects must be within scope.
 Projects must meet customer quality requirements.
Project Management (Cont.)
 More recently, this has given way to a project management diamond,
with time, cost, scope and quality the four vertices and customer
expectations as a central theme. No two customers' expectations are
the same so you must ask what their expectations are.
Overview of Project Management
 Project Management is “the application of knowledge,
skills, tools and techniques to project activities in order to
meet or exceed users’ and stakeholders’ needs and
expectations from the project”
 This definition is recommended by Project Management
Institute (PMI) standards committee.
 Project management has a framework of operations to lead
to a successful completion of the project. The framework is
built on nine knowledge functional areas. These are
required to be managed effectively to achieve success.
Time Cost

Scope
Quality Project
Manage
ment
HR Procurement Integration

T T
Communication Risk o e
o c
l h
s n
i
q
u
e
s
 A key to successful project management is
“management of nine knowledge functional areas” namely.
Setting Objectives of Project
 An objective is well defined if it is SMART
Project Organization

 What this is?


 A guideline written by an experienced software
development executive, relaying a step-by-step approach for
creating an effective software project organization.
 The guideline describes how to create a work and
reporting structure for all the software-related groups in a
project in order to implement the project successfully and
efficiently-without too many layers involved in decisions, but
facilitating clear responsibility definition, accountability and
oversight.
Project Organization (Cont.)

 Why it’s useful


 It is a key component of good project management because it
calls for
 (1) identifying all necessary roles to perform project tasks,
 (2) defining the responsibilities that accompany each role,
 (3) defining the authority of and between each role.
 It forces consideration of every task that must be done and
who will do it.
 Progress transparency is made easier so that schedules can
be tracked.
 Work product transparency is made easier so that quality
can be monitored.
Project Organization (Cont.)
 How to use it
 Use this guideline to first help identify places where your
current software project organizations might be operating
with less than desired efficiency, ownership, and results.
 Follow the key steps provided in the guideline to define a
software project organization for an upcoming project, or
to tweak the organization of a mid-stream project that
could benefit:
 Define the software project roles necessary for this project.
 Define the responsibilities for each role.
 Define the authority for each role.
 Define the organizational hierarchy that matches the roles and
authority.
Project Organization (cont.)
 For a new project, translate the decisions you make into
whatever project deliverables your company or team uses such
as team roles lists or team responsibility matrices, and
communication plans.
 Make sure any changes in responsibilities, communication
channels, or decision-making authority are communicated
throughout the affected team(s), including cross-functional
members who work with software, and their managers.
 Document for your projects any decisions you make through
this process about what constitutes an optimal software
project organization for this and other types of projects in
your company. The process above should result in new
insights into what kinds of reporting relationships and
responsibility assignments greatly help all your teams!
Project Management Life Cycle

 A project goes through six phases during its life:


1. Project Definition: Defining the goals, objectives and
critical success factors for the project.
2. Project Initiation: Everything that is needed to set-up the
project before work can start.
3. Project Planning: Detailed plans of how the work will be
carried out including time, cost and resource estimates.
4. Project Execution: Doing the work to deliver the product,
service or desired outcome.
5. Project Monitoring & Control: Ensuring that a project stays
on track and taking corrective action to ensure it does.
6. Project Closure: Formal acceptance of the deliverables and
disbanding of all the elements that were required to run the
project.
Note: critical factor required for ensuring the success of a Project.
Project Management Life Cycle (Cont’d)
Project Definition & Project Initiation
Project Planning
Project Execution,
Project Monitoring
& Control
Project Closure
Planning a Software Project

Step Activities within step


0 Select project
1 Identify project scope and objectives
1.1 Identify objectives & measures of effectiveness in meeting them
1.2 Establish a project authority
1.3 Identify all stakeholders in the project and their interests
1.4 Modify objectives in the light of stakeholder analysis
1.5 Establish methods of communications with all parties
Planning a Software Project
Step Activities within step
2 Identify project infrastructure

2.1 Establish relationship between project and strategic planning

2.2 Identify installation standards and procedures

2.3 Identify project team organization

3 Analyze project characteristics

3.1 Distinguish the project as either objective or product driven

3.2 Analyse other project characteristics

3.3 Identify high level project risks


Step Activities within step
3.4 Take into account user requirements concerning implementation
3.5 select general lifecycle approach

3.6 Review overall resource estimates

4 Identify project products and activities

4.1 Identify and describe project products (or deliverables)

4.2 Document generic product flow

4.3 Recognize product instances

4.4 Produce ideal activity network

4.5 Modify ideal to take into account need for stages & checkpoints
Step Activities within step
5 Estimates effort for each activity

5.1 Carry out bottom-up estimates

5.2 Revise plan to create controllable activities

6 Identify activity risks

6.1 Identify and quantify activity based risks

6.2 Plan risk reduction & contingency measures where appropriate

6.3 Adjust plans and estimates to take account of risks


Step Activities within step
7 Allocate resources

7.1 Identify and allocate resources

7.2 Revise plans and estimates to account of resource


constraints

8 Review plan

8.1 Review quality aspects of project plan

8.2 Document plans and obtain agreement

9 Execute plan

10 Lower levels of planning


Project Manager

 The role of the project manager is one of great


responsibility. It is the project manager's job to direct,
supervise and control the project from beginning to
end. Project managers should not carryout project
work, managing the project is enough. Here are some
of the activities that must be undertaken:
Project Manager (Cont.)

1. The project manager must define the project, reduce it to a set of


manageable tasks, obtain appropriate resources and build a team
to perform the work.
2. The project manager must set the final goal for the project and
motivate his/her team to complete the project on time.
3. The project manager must inform all stakeholders of progress on
a regular basis.
4. The project manager must assess and monitor risks to the project
and minimize them.
5. No project ever goes exactly as planned, so project managers
must learn to adapt and manage change.
Project Manager (Cont.)
 A project manager must have a range of skills including:
Activities Covered By SPM

Feasibility study

Plan

Project execution
Project Communication
Project Documentation
Risk Management

 A Project Risk is a potential problem that would be


opposing to a project’s success
 The major components of risk are the probability
that something undesirable might happen and the
resulting consequences should the undesired event
occur
 For Ex: the project might overrun the schedule,
resulting in delayed delivery of the product; exceed its
budget; which would result in a cost overrun or deliver
an unsuitable product; which would result in a
customer and user dissatisfaction
Risk Management
 Project risk is characterized by the following:
Uncertainty is involved (0<Probability<1)
A loss is associated with it (life, money, property, reputation
and so forth)
It is manageable – in the sense that human action can be
applied to change its form and degree
 Risk exposure is the product of probability and
potential loss
 A problem is a risk that has materialized. The problem
arises when the undesired event has occurred and a
potential loss is now real
Risk Management

 For the purpose of identifying and managing risks that


may cause a project to overrun its time-scale or budget,
it is convenient to identify three types of risk:
 Those caused by the inherent difficulties of estimation
 Those due to assumptions made during the planning
process
 Those of unforeseen (or at least unplanned) events
occurring
Risk Management Vs Project Management

 There is basic difference between risk management


and traditional project management
 The goal of traditional project management is to
control pervasive (spread throughout) risks by using
systematic procedures
 In contrast, risk management is concerned with
identifying and managing the unique aspects of a
specific project that might prevent delivery of a
suitable product, on time and within budget
Managing Risk

 The objective of risk management is to avoid or


minimize the adverse effects of unforeseen events
 There are number of models for risk management, but
most are similar, in that they identify two main
components –
risk identification and
risk management
Question for the Project Manager

 Establish the context What are we trying to achieve?


 Identify the risks What might happen?
 Analyze the risks What might that mean for the
project’s key criteria?
 Evaluate the risks What are the most important things?
 Treat the risks What are we going to do about them?
 Monitor and review How do we keep them under
control?
 Communicate and consult Who should be involved in the
process?
Risk Framework

Actors

Structure Technology

Tasks
Risk Framework
Boehm’s Risk Engineering Task Breakdown
Risk
Engineering

Risk Risk
Analysis Management

Risk Risk Risk


Identification Estimation Evaluation

Risk Risk Risk Risk Risk


Planning Control Monitoring Directing Staffing
Software risk management steps
Risk Management
Characteristics
Risk Components and Drivers
Software Risk Categories
Project Risks
Threaten to Project Plan
Technical Risks
Threaten for quality and timeliness of the software to be produced
Business Risks
Risk Identification

 Risk identification consists of listing all of the risks


that can adversely affect the successful execution of
the project
 Five common and interrelated areas of risk for
software projects are schedule, cost, requirements,
quality and operational risks
Risk Identification

 Application factors
 Staff factors
 Project factors
 Project methods
 Hardware / software factors
 Changeover factors
 Supplier factors
 Environment factors
 Health and safety factors
Risk Identification

1) Schedule Risks
2) Cost Risks
3) Requirement Risks
4) Quality Risks
5) Operational Risks
1. Schedule Risks
 Techniques for identifying schedule risks include
algorithmic scheduling models, critical path methods and
PERT analysis
 Probabilistic techniques such as PERT and Monte Carlo
simulation can provide ranges of probabilities for achieving
various project milestones based on probabilistic values for
the duration of the individual project tasks and the
sequencing dependencies among those tasks
 The schedule network is a source for identifying potential
risk
 Nodes or junction points with a high degree of fan-in and
those with a high degree of fan-out are potential high-risk
areas
2. Cost Risks

 Budgets are usually determined using effort (people x


time) as the primary cost factor
 The nonlinear increase in cost with decreasing
schedule may result in a very high risk that the project
cannot be completed within budget
 Other factors that influence cost and schedule risks
are as follows:
 Creeping requirements
 Project requirements slowly increase without a corresponding
increase in the budget (or the schedule)
 Schedule compression
 Brought about by pressures from marketing, upper
management and the customer, which results in a nonlinear
increase in software costs
 Unreasonable budgets
 Budget estimates based on the price necessary to satisfy the
market, upper management and/or the customer rather than
to satisfy the technical requirements
3. Requirements Risks

 Incorrect requirements
 Requirements that do not correctly state user needs and
customer expectations
 Incomplete requirements
 Requirements that do not state desired product features or
particular aspects of desired product features
 Inconsistent requirements
 Requirements that conflict with other requirements in the
same specification
 Unclear requirements
 Requirements that have more than one semantic
interpretation
 Unverifiable requirements
 Requirements for which no finite process exists to verify
that the product meets the requirements
 Untraceable requirements
 Requirements for which there is no audit trail from
requirements to tested code and back
 Volatile requirements
 Requirements that are constantly changed; continual
addition of new requirements
4. Quality Risks
 Many risk factors for software projects result from the
delivery of unexpectedly poor software quality such as:
 Unreliable
 Unusable
 Un maintainable
 Non portable
 Non expandable
 Unreliable
 The software does not perform its intended functions under
specified conditions for stated periods of time
 Unusable
 Unreasonable effort is required to use the software or to train
software users
 Un maintainable
 Extraordinary effort is required to locate and fix errors in the
software or to upgrade it for future use
 Non portable
 Extreme difficulty is encountered in converting the software for use
in a different operating environment
 Non expandable
 Software capability or performance cannot be increased by
enhancing current functions or adding new functions/data
5. Operational Risks

 Risk that a project may produce a system that does not


satisfy operational needs
 That is it does not posses the
 functional,
 performance, or
 quality attributes
the customers and users want and need.
Risk Item Check-list
Method for identifying risks in the project is create “ Risk Item Check List”
Risk Analysis

 Risk assessment is the overall process of risk analysis


and risk evaluation. Its purpose is to develop agreed
priorities for the identified risks.
 Risk analysis
is the systematic use of available information to
determine how often specified events may occur and
the magnitude of their consequences.
 Risk evaluation
is the process of comparing the estimated
risk against given risk criteria to determine the
significance of the risk.
 The Risk Assessment process:
 determines the consequences of each risk, should it
arise;
 assesses the likelihood of those consequences occurring;
 data obtained by surveying experienced software
project;
 converts the consequence and likelihood ratings to an
initial priority for the risk; and
 develops agreed risk priorities and inherent risk
levels.
Quantitative Risk

 Hazard (or threat): a set of conditions that can lead to


an undesirable event
 accident, loss, law breaking
 Risk: the possibility of loss. A function of three things
(Leveson, 1991):
 the likelihood of a hazard occurring (h)
 the likelihood that the hazard will lead to an accident (a)
 the worst possible potential loss associated with that
accident (l)
r = P(h) * P(a) * l
 Risk management seeks to tackle at least one of the
three elements of risk by:
 reducing the likelihood of the hazard occurring
 reducing the likelihood of the hazard leading to
accident or loss
 reducing the amount of the loss
r = P(h) * P(a) * l
Risk management tackles one or more of these
 Risk estimation
consists of assessing the likelihood and impact of
each hazard
 Risk evaluation
consists of drawing up contingency plans
and where appropriate adding these to the project’s
task structure. With small projects, risk planning is
likely to be the responsibility of the project manager
but medium or large projects will benefit from the
appointment of a full-time risk manager.
 Risk control
concerns the main functions of the risk manager
in minimizing and reacting to problems throughout
the project. This function will include aspects of
quality control in addition to dealing with problems as
they occur.
 Risk monitoring
must be ongoing activity, as the importance and
likelihood of particular risks can change as the project
proceeds.
 Risk resolution
success criteria in terms of the process
goals, the results that we expect to achieve by using the
process. We can view the risk resolution process from
two perspectives: external and internal.
 The external view specifies the process controls,
inputs, outputs, and mechanisms.
 The internal view specifies the process activities that
transform inputs to outputs using the mechanisms.
Reducing the risks (Risk Handling)

 Risk Avoidance: Find alternative processes.


 Ex: be protected from the risk of overrunning the schedule by
increasing duration estimates or reducing functionality
 Risk Acceptance: Accept the risk and face it.
 Ex: Prioritize risk and ignore less damaging risks
 Risk Transference: Assign responsibility to others.
 Ex: Contracting out (Outsourcing) or taking out insurance
 Risk Mitigation: Find the ways to make risks less likely
to eventuate or reduce the impact.
The project risk management process
Establish the context
- Objectives
- Stakeholders
- Criteria
- Define key elements

Identify the risks

Communicate and Consult


- What can happen?
Monitor and Review

- How can it happen?

Analyze the risks


- Review controls
- Likelihoods
- Consequences
- Level of risks
Evaluate the risks
- Evaluate risks
- Rank risks

Treat the risks


- Identify options
- Select the best responses
- Develop risk treatment plan
- Implement
Qualitative or Quantitative Risk Analysis Template

 Remember there are positive and negative risks

Risk Probability of Occurrence Magnitude of Impact Risk


Event Response
Medium High Low Mediu High Low Type of
m Action
Risk and the control loop

Enter Leave
Important Aspects of Project
The 4 P’s
 People — the most important element of a
successful project
 Product — the software to be built
 Process — the set of framework activities and
software engineering tasks to get the
job done
 Project — all work required to make the
product a reality

80
People…
For successful project people are important aspects in
project.
They could be
1.Project Manager
2.Stakeholders
3.Customers
4.End users
5.Testers
6.Practitioners

81
Product Scope…
Context: How does the software to be built fit into a larger system,
product, or business context and what constraints are imposed as a
result of the context.
Information Objectives : What customer-visible data objects are
produced as output from the software? What data objects are
required for input?
Function and Performance: what function does the software
perform to transform input data into output? Are any special
performance characteristics to be addressed?
Software project scope must be understandable at the
management and technical levels.

82
Problem…
Sometimes called partitioning or problem elaboration.
(Problem explanation)
Once scope is defined
1.It is decomposed into constituent functions.
2.It is decomposed into user-visible objects.
3.It is decomposed into a set of problem classes.
Decomposition process continues until all functions or
problem classes have been defined.

83
Process…
Software
Engineer

uses

Produces
Process Product

Once a process framework has been established


1. Consider project characteristics
2. Determine the degree of requirements.
3. Define the task set for each software engineering activity
Task set includes:
Software engineering tasks
Work products
Quality assurance points
84
Software risk management steps

S-ar putea să vă placă și