Software Project Management SPM

1 / 16
About This Presentation
Title:

Software Project Management SPM

Description:

( Work Breakdown Structure is needed. Good for later stages of the project) ... should be added to cover management activities, overheads, suppliers, travels etc. ... – PowerPoint PPT presentation

Number of Views:114
Avg rating:3.0/5.0
Slides: 17
Provided by: IBM84

less

Transcript and Presenter's Notes

Title: Software Project Management SPM


1
Software Project Management (SPM)
  • Lecture 4
  • - Software Effort Estimate
  • - Risk Assessments
  • - Cost Benefit Analysis
  • Dr. Daniel Keret

2
Reading Assignment
  • Software Project Management, Bob Hughes and Mike
    Cotterell, McGraw-Hill, 3rd Edition.
  • Chapters 2.8,3,5
  • A Guide to the Project Management Body of
    Knowledge, PMI Publications, 3rd Edition, 2004
  • Chapter 11.1

3
Software Effort Estimate
  • Software Effort Estimation Techniques
  • Function Points, Objects Points
  • COnstructive COst MOdel (COCOMO)
  • Expert Judgment
  • On-Going Adjustments
  • Strategic Planning, Feasibility Study, System
    Specification
  • Project Planning, Programming Phases, Change
    Control
  • Risk Assessments.

4
Accurate Estimation is a Management Goal
  • Difficulties in adjusting previous projects
    actual effort.
  • Major Projects are unique in nature
  • Changing Technology
  • Lack of homogenous previous projects data
  • Subjective nature of estimates ( overestimate
    difficulties of small tasks, underestimate of
    large tasks as the complexity is not linear to
    project size)
  • The need for accurate estimation
  • Parkinsons Law Work expands to fill the time
    allocated.
  • Brooks Law The work effort will grow
    disproportionately with the unneeded manpower
    assigned to the project.
  • Weinbergs law of zero reliability If a system
    does not have to be reliable it can meet any
    other objective.
  • Basic data for software estimating
  • Historic Data
  • Measure of Work (SLOC Source line s of code,
    Object, Function Points)
  • Complexity

5
Estimation Techniques
  • Bottom Up Adding the effort of each sub
    activity. (Work Breakdown Structure is needed.
    Good for later stages of the project)
  • Top Down Needs Parametric Models (effort
    system size X productivity rate SLOC X lines of
    code per day per programmer)
  • Expert Judgment Good for a Change in existing
    system.
  • ( knowledge in the application area and the
    development environment)

6
Estimation Techniques (Cont.)
  • Function Points FP (Evaluation of SLOC) Good
    for Information Systems.
  • Counts
  • external input types,
  • external output types,
  • logical internal record types,
  • external interface types,
  • external query types.
  • Takes into account the complexity of each
    parameter. (Defined by the FP users group)
  • Adjustment to programming language C 128
    lines of code for 1 FP.
  • NEEDS adjustments to the development environment.
    (subjective, difficult to define)

7
Estimation Techniques (Cont.)
  • Object Points Good for systems developed using
    High Level Application Building Tools (based on
    OBJECTS definition)
  • Screens Reports object points based on number
    of tables accesses to generate the object
  • 3GL component always weights as difficult
  • Adjustment according to relative complexity of
    screens, reports and logic code (3GL). Reused
    objects. Productivity based on the developers
    experience and capabilities.

8
Estimation Techniques (Cont.)
  • COCOMO II A Parametric Model
  • Person MonthA X Size(SLOC) exp (SF) X EM
  • A constant based on project type (organic,
    embedded, semi detached)
  • SF 0.91 0.01 X SUM( EDR) (Exponent Driver
    Rating)
  • EDR is based on existing/lack of
  • similar cases in the past, development
    flexibility, architecture/risk resolution, team
    disperse, process maturity)
  • EM EMa X EMb X . X EMk
  • EMi Effort Multiplier(i) depends on the stage
    of the project when the evaluation is executed
    (Project Definition, Early Design, Post
    Architecture)
  • Early stage samples schedule pressure,
    personnel experience
  • Post architecture samples use of software tools,
    product complexity

9
Estimation Techniques (Cont.)
  • Additional effort (time, cost) should allocate to
    requirements and specifications
  • Additional effort should be added to cover
    management activities, overheads, suppliers,
    travels etc.)
  • Additional effort should be added to
    implementation, training, cleanup activities.
  • Conversion of data is an integral part of the
    project effort .

10
Risk Breakdown Structure (RBS) - Example
11
Risk Assessments
  • Identification and Ranking (importance,
    likelihood)
  • Risk and NPV ( add risk factor to the discount
    rate)
  • Risk Profile Analysis (change a risk factor by
    /- 5 and recalculate the costs. Evaluate the
    sensitivity to the change. Focus on highly
    sensitive factors as possible risks)

12
Identification and Ranking (importance,
likelihood)
  • Basic Risk Matrix Rank High, Medium, Low and
    Unlikely to the Importance and Likelihood of each
    risk.
  • Deal (in the planning and decision stages) with
    risks that are ranked high on both importance and
    likelihood.

13
Reused Code
  • Can reduce cost, time and increase quality.
  • But. It has its own risks. (poor documentation,
    bad design, no testing procedures, etc.)
  • Codes types New, Modifies, Reused, Legacy
  • Simple adjustments to lines of code effort
  • New 100
  • Modifies 60
  • Reused 30

14
Reused Code Example
15
Cost Benefit Analysis
  • Business Plan
  • ROI Return On Investment
  • Risk Analysis
  • Alternative Approaches
  • Decision Trees Evaluate alternatives by
    multiply the probability of occurrence by
    expected cost to evaluate expected value.
  • Build/Buy/Customize/Outsource/Enhance
  • Cost Streams Definitions/Requirements, Solution
    Selection, Licenses, Hardware, Real Estate,
    Travel, Legal, Communication, Training,
    Development, Testing, Users Participation,
    Integration, Changes to Current
    Systems/Workflows, Maintenance, Ongoing-Support,
    Enhancements, Retirement.

16
Decision Tree(Market Expansion Market Growth
Beyond the Capability of the Enhanced System to
handle the growth)
decision
enhance
Npv10000
Npv40000
enhance
buy
Probability 0.2
0.8
0.2
0.8
market expansion
no expansion
market expansion
no expansion
-50000
Npv -100000
75000
250000
Write a Comment
User Comments (0)