0% found this document useful (0 votes)
114 views

IT8075-Software Project Management: Mr.M.Muthuraja Assistant Professor & Head/CSE Pavai College of Technology

The document discusses software project management concepts including: 1. It defines software project management and distinguishes it from other types of development projects. 2. It outlines the typical stages of a software project life cycle including planning, analysis, design, implementation, and support. 3. It explains common software development process models like waterfall, spiral, prototyping, incremental, and iterative and compares their benefits and drawbacks.

Uploaded by

Muthuraja
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
114 views

IT8075-Software Project Management: Mr.M.Muthuraja Assistant Professor & Head/CSE Pavai College of Technology

The document discusses software project management concepts including: 1. It defines software project management and distinguishes it from other types of development projects. 2. It outlines the typical stages of a software project life cycle including planning, analysis, design, implementation, and support. 3. It explains common software development process models like waterfall, spiral, prototyping, incremental, and iterative and compares their benefits and drawbacks.

Uploaded by

Muthuraja
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 92

IT8075-Software Project

Management

Mr.M.Muthuraja
Assistant Professor & Head/CSE
Pavai College of Technology
Course Objectives
 Define the scope of ‘software project management’;
 Distinguish between software and other types of
development project;
 Understand some problems and concerns of software
project managers;
 Define the usual stages of a software project;
 Explain the main elements of the role of management;
 Appreciate the need for careful planning, monitoring
and control;
 Identify the stakeholders of a project and their
objectives and ways of defining the success
in meeting those objectives
Unit I

PROJECT EVALUATION AND


PROJECT PLANNING
Project – Definition

In the broadest sense, a project is a


specific, finite task to be accomplished.
Any activity that results in a deliverable
or a product.
Projects always begin with a problem.
The project is to provide the solution to
this problem.
When the project is finished it must be
evaluated to determine whether it
satisfies the objectives and goals.
What is Management?
 Management can be defined as all activities and
tasks undertaken by one or more persons for the
purpose of planning and controlling the activities
of others in order to achieve objectives or
complete an activity that could not be achieved by
others acting independently.
 Management functions can be categorized as
 Planning
 Organizing
 Staffing
 Directing
 Controlling
Management Functions
 Planning
Predetermining a course of action for accomplishing
organizational Objectives
 Organizing
Arranging the relationships among work units for
accomplishment of objectives and the granting of
responsibility and authority to obtain those objectives
 Staffing
Selecting and training people for positions in the organization
 Directing
Creating an atmosphere that will assist and motivate people
to achieve desired end results
 Controlling
Establishing, measuring, and evaluating performance of
activities toward planned objectives
What is Project Management
 “The application of knowledge, skills,
tools and techniques to project
activities in order to meet project
requirements”
What is Project Management
Project management is a system of
 management procedures,
 practices,
 technologies,
 skills, and
 experience
that are necessary to successfully
manage a project.
Software Project Management
Concerned with activities involved in
ensuring
that software is delivered:
 on time
 on schedule
 in accordance with the requirements
of the organization developing and
procuring the software
Project Stakeholders
Stakeholders are the people involved
in or affected by the project actives
 Stakeholders include
 The project sponsor and project team
 Support staff
 Customers
 Users
 Suppliers
 Opponents to the project
Project Characteristics

 One clear objective


 A well defined set of end results
 Goal oriented
 End product or service must result

 Finite
 Fixed timeline, start date, end date, milestone dates

 Limited
 Budget, Resources, Time

 Life Cycle
 Recognizable sequence of phases
Product

Project People

Software Project Management


Product Project People

1. Assessing Processes 12. Building a WBS 23. Appraising Performance


2. Awareness of Process Standards 13. Documenting Plans 24. Handling Intellectual Property
3. Defining the Product 14. Estimating Costs 25. Holding Effective Meetings
4. Evaluating Alternative Processes 15. Estimating Effort 26. Interaction and Communication
5. Managing Requirements 16. Managing Risks 27. Leadership
6. Managing Subcontractors 17. Monitoring Development 28. Managing Change
7. Performing the Initial Assessment 18. Scheduling 29. Negotiating Successfully
8. Selecting Methods and Tools 19. Selecting Metrics 30. Planning Careers
9. Tailoring Processes 20. Selecting Project Mgmt Tools 31. Presenting Effectively
10. Tracking Product Quality 21. Tracking Process 32. Recruiting
11. Understanding Development Activities 22. Tracking Project Progress 33. Selecting a Team
34. Teambuilding

34 Competencies Every Software Project Manager Needs to Know


Product Life Cycles
Products also have life cycles
The Systems Development Life Cycle
(SDLC) is a framework for describing
the phases involved in developing and
maintaining information systems
Typical SDLC phases include planning,
analysis, design, implementation, and
support
Steps in SDLC
 Concept Exploration
 System exploration
 Requirements
 Design
 Implementation
 Installation
 Operations and support
 Maintenance
 Retirement
Process & Process Model
Software Process
 the set of activities, methods, and
practices that are used in the production
and evolution of software
Software Process Model
 one specific embodiment of a software
process architecture
Why Modeling?
To provide a common understanding
To locate any inconsistencies,
redundancies and omissions
To reflect the development goals and
provide early evaluation
To assist development team to
understand any special situation
Sample SDLC Models
 Waterfall model: has well-defined, linear stages
of systems development and support
 Spiral model: shows that software is developed
using an iterative or spiral approach rather than
a linear approach
 Incremental release model: provides for
progressive development of operational software
 RAD model: used to produce systems quickly
without sacrificing quality
 Prototyping model: used for developing
prototypes to clarify user requirements
Waterfall Model

Requirement
Analysis

System
Design

Coding

Testing

Maintenance
Waterfall Model
classical
one-shot approach
effective control
limited scope of iteration
long cycle time
not suitable for system of high
uncertainty
V Model
Maintenance

Requirements User Acceptance


Analysis Testing

System Design System Testing

Unit and
Program Design
Integration Testing

Coding
V Model
Additional validation process
introduced
Relate testing to analysis and design
Loop back in case of discrepancy
Spiral Model (adapted from Boehm 1987)
Spiral Model
Evolutionary approach
Iterative development combined with
risk management
Risk analysis results in “go, no-go”
decision
Spiral Model
Four major activities
 Planning
 Risk analysis
 Engineering
 Customer evaluation
Prototyping Model
Goals
 meet users’ requirements in early stage
 reduce risk and uncertainty
Classification of Prototype
Throw-away
 After users agree the requirements of the
system, the prototype will be discarded.
Evolutionary
 Modifications are based on the existing
prototype.
Incremental
 Functions will be arranged and built
accordingly.
Prototyping Model

YES
User
Build prototype
satisfaction

NO
User feedback
Benefits of Prototyping
Learning by doing
Improved communication
Improved user involvement
Clarification of partially-known
requirements
Prototyping Sequences
 Requirements gathering
 Quick design
 Prototype construction
 Customer evaluation
 Refinement
 Loop back to quick design for fine tuning
 Product engineering
Benefits of Prototyping
Demonstration of the consistency and
completeness of a specification
Reduced need for documentation
Reduced maintenance costs
Feature constraint
Production of expected results
Drawbacks of Prototyping
Users sometimes misunderstand the
role of the prototype
Lack of project standards possible
Lack of control
Additional expense
Close proximity of developers
Forms of Prototypes
Mock-ups
Simulated interaction
Partial working model
Incremental Model
Break system into small components
Implement and deliver small
components in sequence
Every delivered component provides
extra functionality to user
Incremental Model

Arrange Design and


Requirements
requirements develop
Analysis
in increments increment

NO

Validate Integrate System


increment increment OK?

YES
Iterative Model
Deliver full system in the beginning
Enhance functionality in new releases
Iterative Model

Design system
n = n+1
version n NO

Develop system Validate system System


version n version n complete

YES
Why Have Project Phases and
Management Reviews?

A project should successfully pass


through each of the project phases in
order to continue on to the next
Management reviews (also called phase
exits or kill points) should occur after
each phase to evaluate the project’s
progress, likely success, and continued
compatibility with organizational goals
Distinguishing Project Life Cycles and
Product Life Cycles

The project life cycle applies to all


projects, regardless of the products
being produced
Product life cycle models vary
considerably based on the nature of the
product
Most large IT products are developed
as a series of projects
Project management is done in all of
the product life cycle phases
Capability Maturity Model

 The CMM is a process model based on


software best-practices effective in
large-scale, multi-person projects.
 The CMM has been used to assess the
maturity levels of organization areas as
diverse as
software engineering, system engineering,
project management, risk management,
system acquisition, information
technology (IT) or personnel
management, against a scale of five key
processes, namely:
 Initial,
 Repeatable,
 Defined,
 Managed and
 Optimized.
Level 1 - Initial

 At maturity level 1, processes are


usually ad hoc, and the organization
usually does not provide a stable
environment. Success in these
organizations depends on the
competence and heroics of the people
in the organization, and not on the
use of proven processes
Level 2 - Repeatable

 At maturity level 2, software


development successes are
repeatable. The processes may not
repeat for all the projects in the
organization. The organization may
use some basic project management
to track cost and schedule.
Level 3 - Defined

 The organization’s set of standard


processes, which are the basis for level 3,
are established and improved over time.
These standard processes are used to
establish consistency across the
organization. Projects establish their
defined processes by applying the
organization’s set of standard processes,
tailored, if necessary, within similarly
standardized guidelines.
Level 4 - Quantitatively Managed

 Using precise measurements,


management can effectively control
the software development effort. In
particular, management can identify
ways to adjust and adapt the process
to particular projects without
measurable losses of quality or
deviations from specifications
Level 5 - Optimizing

 Maturity level 5 focuses on continually


improving process performance through
both incremental and innovative
technological improvements. Quantitative
process-improvement objectives for the
organization are established, continually
revised to reflect changing business
objectives, and used as criteria in
managing process improvement.
International Organization for
Standardization(ISO)
12 Engineering Activities
• Systems requirement analysis
• System architectural design
• Software requirement analysis
• Software architectural design
• Software detailed design
• Software coding and testing
• Software Integration
• Software qualification testing
• System integration
• System qualification testing
• Software installation
• Software acceptance test
Project Definition
Software Project Management
Characteristics of a Project
Software Projects and other
Projects?
 Invisibility Software project is not
immediately visible.
 Complexity More complex than other
engineered projects.
 Conformity Software Engineers have
to conform to the requirements of
human client.
 Flexibility Can be changed after
development
Activities covered by SPM
Feasibility study
 This investigates whether a prospective
project is worth starting – that it has a valid
business case.
 Information is gathered about the
requirements of the proposed application.
 Requirements elicitation can, at least initially,
be complex and difficult.
 With a large system, the feasibility study
could be treated as a project in its own right
– and have its own planning sub- phase.
Planning
 Planning of the project can take place
after feasibility study over.
 Types of plan:
√ Software development plan.
√ Quality assurance plan.
√ Validation plan.
√ Configuration management plan.
√ Maintenance plan.
√ Staff development plan.
Project Execution
 The project can now be executed. The
execution of a project often contains
design and implementation sub-
phases.
 Students new to project planning
often find it difficult to separate
planning and design, and often the
boundary between the two can be
hazy.
Verification and Validation
 Verification- Are we building the
Product Right?
Takes place in Developer side.
 Validation- Are we building the Right
Product?
Takes place in Customer Side.
Categorization of Software
Projects
Setting Objectives
 Informally, the objective of a project
can be defined by completing the
statement:
The project will be regarded as a success
“if-----------------”
Rather like post-conditions for the project
Focus on what will be put in place, rather
than how activities will be carried out
Setting Objectives
 Answering the question ‘What do
we have to do to have a success?’
 Need for a project authority
 Sets the project scope
 Allocates/approves costs
 Could be one person - or a group
 Project Board
 Project Management Board
 Steering Committee
Objectives should be
 S-Specific, that is, concrete and well-
defined
 M-Measurable
 A-Achievable
 R-Relevant
 T-Time constrained
Activities of Management or
Management Principles
Management Control
 Management Control System is
defined a ‘set of policies and
procedures designed to keep
operations going according to plan.
Project Control Cycle
Project Portfolio Management
 Project Portfolio Management (PPM) is
the centralized management of the
processes, methods, and technologies
used by project managers and project
management offices(PMOs) to analyze
and collectively manage current or
proposed projects based on numerous
key characteristics.
key aspects of Project portfolio
Management
 Portfolio Definition
 Portfolio Management
 Portfolio Optimization
Objectives of Project Portfolio
Management
 The need to create a descriptive document,
which contains vital information such as
name of project, estimated timeframe, cost
and business objectives.
 The project needs to be evaluated on a
regular basis to ensure that the project is
meeting its target and stays in its course.
 Selection of the team players, who will
work towards achieving the project's
objectives.
Benefits of Project Portfolio
Management
 Greater adaptability towards change.
 Advantage over other competitors.
 Helps to concentrate on the
strategies, which will help to achieve
the targets rather than focusing on
the project itself.
 Constant review and close monitoring
brings about a higher return.
Project Portfolio Management
Tools
 Celoxis
 Smartsheet
 Sciforma
 Proggio
 GanttPRO
 Hive
 Wrike
 Changepoint
 Liquid Planner
Essential Features of those
Tools
 A systematic method of evaluation of
projects.
 Resources need to be planned.
 Costs and the benefits need to be kept on
track.
 Undertaking cost benefit analysis.
 Progress reports from time to time.
 Access to information as and when its
required.
 Communication mechanism, which will take
through the information necessary.
Techniques Used to Measure
PPM
 Heuristic model.
 Scoring technique.
 Visual or Mapping techniques.
The use of such techniques should
be done in consideration of the
project and organizational objectives,
resource skills and the infrastructure
for project management.
The Five Question Model
Strategic Programmes
 Several projects together can implement a
single strategy. For example the merging
of two organizations’ computer systems
could require several projects each dealing
with particular application area. Each
activity could be treated as a distinct
project, but would be coordinated as a
programme.
 Strategic planning is an organization's
process of defining its strategy, or
direction, and making decisions on
allocating its resources to pursue this
strategy.
 In order to determine the direction of the
organization, it is necessary to understand
its current position and the possible
avenues through which it can pursue a
particular course of action.
Strategic Project Management
 Strategic Project Management (SPM) (also
called Enterprise Project Management by
some) has been defined by Callahan &
Brooks (2004) as “the use of the
appropriate project management
knowledge, skills, tools and techniques in
the context of the companies goals and
objectives so that the project deliverables
will contribute to company value in a way
that can be measured”.
The Process of Strategic Project
Management
 Know the direction of the Project
 Explain responsibilities
 Project planning
Stepwise Project Planning
Cost-Benefit Evaluation
Techniques
 Net profit
 Payback period
 Return on investment
 Net present value
 Internal rate of return
steps in cost-benefit
analysis
 Identifying and estimating all of the
costs and benefits of carrying out the
project and operating the delivered
application. It includes development
cost of system, Operating cost of
system, Benefits obtained by system.
 Expressing these costs and benefits in
common units.
Net profit
 Difference between total cost and
total income.
 Advantage is easy to calculate and
 Disadvantages are does not show
profit relative to size investment
Payback Period
 The payback period is the time taken
to break even or pay back the initial
investment.
 Advantage: Simple to calculate, not
sensitive to small forecasting errors.
 Disadvantage: Ignores the overall
profitability of the project.
Return on Investment
 It provides a way of comparing the net
profitability to the investment required.
ROI = average annual profit * 100
Total investment
 Average annual profit = net profit
Total no. of years
Net Present Value
 A project evaluation technique that takes
into account the profitability of a project
and the timing of the cash flows that are
produced.
Present value =
(value in year t)/(1+r)^t
Internal rate of return (IRR)
 Internal rate of return (IRR) is the
discount rate that would produce an
NPV of 0 for the project. It can be
used to compare different investment
opportunities
 Pros: Calculates figure which is
easily to interest rates
 Cons: Difficult to calculate
Risk Evaluation
 Risk evaluation is meant to decide
whether to proceed with the project
or not, and whether the project is
meeting its objectives.
Risk Occurs
 When the project exceed its original
specification
 Deviations from achieving it objectives
and so on.
 Every project involves risk. The project
risks which prevent the project being
completed successfully and the
business risk that the delivered
products are nor profitable.
Risk evaluation consists of
 Risk identification and ranking
 Risk and NPV
 Cost benefit analysis
 Risk profile analysis
Risk identification and ranking
 Identify the risk and give priority.
 Could draw up a project risk matrix
for each project to assess risks
 Project risk matrix used to identify
and rank the risk of the project.
Example of Project Risk Matrix
Risk and net present value
 Where a project is relatively risky it is
common practice to use a higher
discount rate to calculate the NPV.
The risk premium be an additional 2
% for a safe project or 5 % for a fairly
risky project
 Projects may be categorized as high,
medium or low risk using a scoring
method and risk premiums designated
for each category.
Risk Profile Analysis

You might also like