SEE_Lecture-09

advertisement
Software Engineering Economics
SE 361
Lecture-23,24
By
Muhammad Waseem Awan
Project management


The application of knowledge skills, tools, and techniques
to project activities to meet project requirements. (PMI) to
meet or exceed stakeholder needs and expectations from a
project!!!
Managing a project includes:
 Identifying requirements
 Establishing clear and achievable objectives
 Balancing the competing demands for quality, scope,
time and cost
 Adapting the specifications, plans, and approach to the different
concerns and expectations of the various stakeholders.
PMBoK – Knowledge Areas
3
Integration Management

Develop Project Charter
 Developing the project charter that formally authorizes a project or a project phase.

Develop Preliminary Project Scope Statement
 Developing the preliminary project scope statement that provides a high-level scope.

Develop Project Management Plan
 Documenting the actions necessary to define, prepare, integrate, and coordinate all
subsidiary plans into a project management plan.

Direct and Manage Project Execution
 Executing the work defined in the project management plan to achieve the project’s
requirements defined in the project scope statement.

Monitor and Control Project Work
 Monitoring and controlling the processes used to initiate, plan, execute, and close a
 project to meet the performance objectives defined in the project management plan.
4
Scope Management
A subset of project management that includes the processes required to
ensure that the project includes all the work required, and only the work
required, to complete the project successfully.
 Scope Planning – creating a project scope management plan that
documents how the project scope will be defined, verified, controlled,
and how the work breakdown structure (WBS) will be created and
defined.
 Scope Definition – developing a detailed project scope statement as
the basis for future project decisions.
 Create WBS – subdividing the major project deliverables and project
work into smaller, more manageable components.
 Scope Verification – formalizing acceptance of the completed project
deliverables.
 Scope Control – controlling changes to the project scope.
5
Time Management
A subset of project management that includes the processes required to
ensure timely completion of the project
 Activity Definition : identifying the specific schedule activities that
need to be performed to produce the various project deliverables.
 Activity Sequencing : identifying and documenting dependencies
among schedule activities.
 Activity Resource Estimating : estimating the type and quantities of
resources required to perform each schedule activity.
 Activity Duration Estimating: the number of work periods that will
be needed to complete individual schedule activities.
 Schedule Development: analyzing activity sequences, durations,
resource requirements, and schedule constraints to create the project
schedule.
 Schedule Control controlling changes to the project schedule.
Cost Management




A subset of project management that includes the
processes required to ensure that the project is completed
within the approved budget.
Cost Estimating developing an approximation of the costs
of the resources needed to complete project activities.
Cost Budgeting: aggregating the estimated costs of
individual activities or work packages to establish a cost
baseline.
Cost Control :influencing the factors that create cost
variances and controlling changes to the project budget.
7
Quality Management




A subset of project management that includes the processes required to
ensure that the project will satisfy the needs for which it was
undertaken.
Quality Planning Identifying which quality standards are relevant to
the project and determining how to satisfy them
Quality Assurance applying the planned, systematic quality
activities to ensure that the project employs all processes needed to
meet requirements.
Quality Control Monitoring specific project results to determine if
they comply with relevant quality standards and identifying ways to
eliminate causes of unsatisfactory performance
8
Human Resource
Management





A subset of project management that includes the processes required to
make the most effective use of the people involved with the project.
Human Resource Planning Identifying and documenting project
roles, responsibilities, and reporting relationships, as well as creating
the staffing management plan.
Acquire Project Team: Obtaining the human resources needed to
complete the project.
Develop Project Team: Improving the competencies and interaction
of team members to enhance project performance.
Manage Project Team: Tracking team member performance,
providing feedback, resolving issues, and coordinating changes to
enhance project performance
.
9
Communication
Management





A subset of project management that includes the processes required to
ensure timely and appropriate generation, collection, dissemination,
storage, and ultimate disposition of project information.
Communications Planning determining the information and
communications needs of the project stakeholders.
Information Distribution making needed information available to
project stakeholders in a timely manner.
Performance Reporting collecting and distributing performance
information. This includes status reporting, progress measurement, and
forecasting.
Manage Stakeholders managing communications to satisfy the
requirements of and resolve issues with project stakeholders
10
Project Risk Management



Project Risk Management includes the processes concerned with conducting risk
management planning, identification, analysis, responses, and monitoring and control on
a project; most of these processes are updated throughout the project.
Risk Management Planning deciding how to approach, plan, and execute the risk
management activities for a project.
Risk Identification determining which risks might affect the project and
documenting their characteristics.

Qualitative Risk: Analysis prioritizing risks for subsequent further analysis or
action by assessing and combining their probability of occurrence and impact.

Quantitative Risk: Analysis numerically analyzing the effect on overall project
objectives of identified risks.

Risk Response Planning developing options and actions to enhance opportunities,
and to reduce threats to project objectives.

Risk Monitoring and Control tracking identified risks, monitoring remaining
risks, identifying new risks, executing risk response plans, and evaluating their
effectiveness throughout the project life cycle.
11
Procurement Management

Project Procurement Management includes the processes to purchase or acquire the
products, services, or results needed from outside the project team to perform the
work. The organization can be either the buyer or seller of the product, service, or
results under a contract.

Plan Purchases and Acquisitions determining what to purchase or acquire and
determining when and how.

Plan Contracting documenting products, services, and results requirements and
identifying potential sellers.

Request Seller Responses obtaining information, quotations, bids, offers, or
proposals, as appropriate.

Select Sellers reviewing offers, choosing among potential sellers, and negotiating
a written contract with each seller.


Contract Administration managing the contract and relationship between the
buyer and seller, reviewing and documenting how a seller is performing or has
performed to establish required corrective actions and provide a basis for future
relationships with the seller, managing contract related changes and, when appropriate,
managing the contractual relationship with the outside buyer of the project.
Contract Closure completing and settling each contract, including the resolution of any
12
open items, and closing each contract applicable to the project or a project phase.
RISK MANAGEMENT IN SOFTWARE
ENGINEERING
What is Risk?

Risk is an uncertainty.

We don’t know whether a particular event will occur or not

An example would be that team is working on a project and
the developer walks out of project and other person is
recruited n his place and he doesn’t work on the same
platform and converts it into the platform he is comfortable
with. Now the project has to yield the same result in the
same time span. Whether they will be able to complete the
project on time. That is the risk of schedule .
Definitions of Risks

Risk is the probability of suffering loss.

Risk provides an opportunity to develop the project better.

There is a difference between a Problem and Risk

Problem is some event which has already occurred but risk
is something that is unpredictable.
Risk management

The Risks we encounter in a project should be resolved so that we are
able to deliver the desired project to the customer.

The project should be managed in such a way that the risks don’t affect
the project in a big way.

The art of managing of the risks effectively so that the WIN-WIN situation
and friendly relationship is established between the team and the
customer is called Risk Management.

By using various paradigms, principles we can manage the risks.
The Principles of Risk Management

1.Global Perspective: In this we look at the larger system definitions,
design and implementation. We look at the opportunity and the impact
the risk is going to have .

2.Forward Looking View: Looking at the possible uncertainties that
might creep up. We also think for the possible solutions for those risks
that might occur in the future.

3.Open Communication: This is to enable the free flow of
communication between in the customers and the team members so
that they have clarity about the risks.

4.Integrated management: In this phase risk management is made an
integral part of project management.

5.Continous process :In this phase the risks are tracked continuously
throughout the risk management paradigm.
Risk management paradigm

1.Identify: Search for the risks before they
create a major problem

2.Analyze: understand the nature , kind of
risk and gather information about the risk.

3.Plan: convert them into actions and
implement them.

4.Track: we need to monitor the necessary
actions.

5.Control: Correct the deviation and make
any necessary amendments.

6.Communicate: Discuss about the
emerging risks and the current risks and the
plans to be undertaken.
Risk Management in Project management:
Basically project management deals with following :

1. Planning: Looking for the desired results, the strategies to
be applied.

2. Organizing: Getting all the things together so that the
desired results are obtained. By organizing the efficiency is
increased and lot of time is saved.

3. Directing: Communication takes place and exchange of
ideas is formatted in this phase.

4. Controlling: In the last phase feedback and evaluation is
done.
Team Risk Management Principles
The two principles are:

1. Shared Product Vision: The common
goal between the team and the
supplier is established so that the
vision is very plain.

2. Team work: Working collectively
towards achieving a common goal.
Risk Management In Small Project:
1.Preparing for Risks: Looking for the external and internal
Risks :




Uncertain requirements
Unknown technology
Infeasible Design
Cost And Schedule uncertainty.
2.Identify and Analyze Risks: We need to identify the risks and
understand the nature of risks and prioritize the risks and try
to solve the risks.
3.Mitigate the risks: In this phase we have risk acceptance,
risk transfer, risk avoidance, risk control. We implement
them in this phase so that we can mitigate the risks.
Software Risk Management
Risk
Identification
Risk
Assessment
Risk
Analysis
Risk
Prioritization
Risk
Management
Risk mgmt
Planning
Risk
Control
Risk
Resolution
Risk
Monitoring
©USC-CSE
10/14/05
Checklists
Decision driver analysis
Assumption analysis
Decomposition
Performance models
Cost models
Network analysis
Decision analysis
Quality factor analysis
Risk exposure
Risk leverage/power
Compound risk reduction
Buying information
Risk avoidance
Risk transfer
Risk reduction
Risk element planning
Risk plan integration
Prototypes
Simulations
Benchmarks
Analyses
Staffing
Milestone tracking
Top-10 tracking
Risk reassessment
Corrective action
22
Risk Identification Techniques


Risk-item checklists
Decision driver analysis
 Comparison with experience
 Win-lose, lose-lose situations

Decomposition
 80 – 20 phenomena
• 80% of consequences had root in 20% of the causes.
 Task dependencies
 Uncertainty areas
23
©USC-CSE
10/14/05
Top 10 Risk Items: 1989 and 1995
1995
1989
1.
Personnel shortfalls
1.
Personnel shortfalls
2.
Schedules and budgets
2.
Schedules, budgets, process
3.
Wrong software functions
3.
COTS, external components
4.
Wrong user interface
4.
Requirements mismatch
5.
Gold plating
5.
User interface mismatch
6.
Requirements changes
6.
7.
Externally-furnished
components
Architecture, performance,
quality
7.
Requirements changes
8.
Externally-performed tasks
8.
Legacy software
9.
Real-time performance
9.
Externally-performed tasks
10. Straining computer science
10. Straining computer science
24
©USC-CSE
10/14/05
The Top Ten Software Risk Items
Risk Item
Risk Management Techniques
1. Personnel Shortfalls
Staffing with top talent; key personnel
agreements; incentives; team-building; training;
tailoring process to skill mix; peer reviews
2. Unrealistic schedules
and budgets
Business case analysis; design to cost; incremental
development; software reuse; requirements descoping;
adding more budget and schedule
3. COTS; external components
Qualification testing; benchmarking; prototyping;
reference checking; compatibility analysis; vendor
analysis; evolution support analysis
4. Requirements mismatch;
gold plating
Stakeholder win-win negotiation; business case
analysis; mission analysis; ops-concept formulation;
user surveys; prototyping; early users’ manual;
design/develop to cost
5. User interface mismatch
Prototyping; scenarios; user characterization
(functionality, style, workload)
25
©USC-CSE
10/14/05
The Top Ten Software Risk Items
(Concluded)
6. Architecture, performance,
quality
Architecture tradeoff analysis and review boards;
simulation; benchmarking; modeling; prototyping;
instrumentation; tuning
7. Requirements changes
High change threshold; information
hiding; incremental development (defer
changes to later increments)
8. Legacy software
Design recovery; phase-out options analysis;
restructuring
9. Externally-performed
tasks
Reference checking; pre-award audits;
award-fee contracts; competitive design
or prototyping; team-building
10. Straining Computer
Science capabilities
Technical analysis; cost-benefit analysis;
prototyping; reference checking
26
©USC-CSE
10/14/05

END
27
©USC-CSE
10/14/05
Download