SlideShare a Scribd company logo
1 of 43
Objectives:
To provide a framework that enables the
   manager to make reasonable estimates of
   resources, cost and schedule.
Activities associated with project planning :
4. Determination of software scope :


Describes the function, performance
constraints, interfaces of the software.
 How to determine the scope ?
Conduct a preliminary meeting /interview
between the customer and developer(analyst)
Set of questions asked :
1. Context free questions :
Questions that determine the overall goal of
the system and identifies the people who want
a solution.
Eg:
Who is behind the request for the work?
Who will use the soln ?
What will be the economic benefit of a
successful soln. ?
6. Next set of questions :
What problems will the soln. address ?
What should be the most important goal of the
   proposed system?
What are the functionalities expected of the
   software ?
3. Meta questions : Focuses on the
   effectiveness of the meeting .
2. Are my questions relevant to the problem
   that you have ?
3. Am I asking too many questions ?
4. Should I be asking anything else ?
5. Can anyone else provide additional
   information .
2. Determine feasibility.
Ask
Is the software feasible ?
4 types of feasibility :
5. Technical feasibility :
   Is the project technically feasible ?
     Does the organization have the necessary
   h/w , s/w and operating system environment
   required to deploy the software ?
2. Cost
The project financially feasible ?
Can the development be completed at the cost
 of the client / can the market afford it.

3. Time :
Will the project be completed within the time
 frame dictated by the customer.
3. Analyze the risk for the project .
4. Estimate the resources required to
 accomplish the software development effort.
   Three major categories of software engineering resources
    ◦ People
    ◦ Development environment
    ◦ Reusable software components
   Each resource is specified with
    ◦   A description of the resource
    ◦   A statement of availability
    ◦   The time when the resource will be required              Time window
    ◦   The duration of time that the resource will be applied   Of the
                                                                 resource
1.   Human Resource
Factors considered are --
c)   Skills :
   * Organizational Position : Manager, senior
                         s/w engineer.
     * Specialty : Telecomm, database ,
        client/server.
f)   Location :
    For large projects software team has to be geographically
     dispersed across a no. of different locations.
    Hence location of each human resource is specified.
i)   No. of people required for a software project.
    Estimate the development effort (person –month)
2) Reusable software resource :
4 resource categories are considered :
     Off-the-shelf components
       Acquired from 3rd party or developed internally for a
        past project
       Ready for use on the current project and have been
        fully validated
     Full-experience components
       Existing specifications, designs, code or test data
        (developed for past projects) that are similar to the
        software to be built for the current project
       Members of the current software team have had full
        experience in the application area represented by
        these components; therefore low-risk modifications
 Partial-experience components (high risk)
  Existing specifications, designs, code or test data
   (developed for past projects) that are related to the
   software to be built for the current project
  Require substantial modification
  Members of the team have only limited experience;
   therefore modifications required for partial-
   experience components have a fair degree of risk
 New components
  Software components that must be built by the
   software team specifically for the needs of the
   current project
3) Environmental resources
 * Software tools, hardware, network resources.
 * Prescribe the time window required for these
  resources and verify that these will be available.
number                       software
                                                 tools
     skills                                                 hardware


                 people
                                            environment         network
location                                                       resources




                                project




                               reusable
                               software
                 OTS                              new
              components                       components


                   full-experience   part.-experience
                    components        components
5) Estimate cost and effort
   Decomposition techniques
    ◦   These take a "divide and conquer" approach
    ◦   Cost and effort estimation are performed in a stepwise fashion
        by breaking down a project into major functions and related
        software engineering activities
   Empirical estimation models
    ◦   Offer a potentially valuable estimation approach if the
        historical data used to seed the estimate is good
Decomposition Technique
   Before an estimate can be made and decomposition
    techniques applied, the planner must
    ◦ Understand the scope of the software to be built
    ◦ Generate an estimate of the software’s size
   Then one of two approaches are used
    ◦ Problem-based estimation
       Based on either source lines of code or function point
        estimates
    ◦ Process-based estimation
       Based on the effort required to accomplish each task
Problem based decomposition
2) LoC based estimation
Eg: Consider a software package to be developed for a CAD
  application for mechanical components.
The CAD s/w will accept 2-D and 3-D geometric data from an
  engineer. The engineer will interact and control the CAD
  system through a UI. All geometric data and other supporting
  info. Will be maintained in a DB.
Design analysis modules will be developed to produce the
  required o/p which will be displayed on a variety of graphics
  devices. The s/w will be designed to control and interact with
  peripheral devices that include a mouse, digitizer, laser
  printer and plotter.
Major s/w functions :
2. UI and Control facilities.
3. 2-D geometric analysis.
4. 3-D geometric analysis.
5. DBMS
6. Computer graphics and display facility.
7. Peripheral control function.
8. Design analysis modules
Step1 : A range of LOC estimates is developed
 for each function.
Eg : LOC estimate for 3-D geometric analysis:
  optimistic -- 4600
  Most likely – 6900
   Pessimistic -- 8600
Step2 :Expected value ‘S’ can be computed

    S = (Sopt + 4Sm + Spess)/6
Estimation table ---
   UI and Control facilities.               2300
   2-D geometric analysis.                  5300
   3-D geometric analysis.                  6800
   DBMS                                     3350
   Computer graphics and display facility. 4950
   Peripheral control function.     2100
   Design analysis modules                 8400



Step 3 : Estimated LOC                   33200
Step 4 : Review the historical data to find average productivity
Step 5 : Based on historical productivity data and LOC
  estimate--
Estimate the project cost and effort
Eg : Avg. productivity (from historical data) =620 LOC/pm
Let the labor rate be $8000 per month
Therefore Cost /LOC= $8000/620= $13
Total LOC is 33200
Therefore Project Cost = 33200 x 13 = #431000
Effort in person month = 33200/620=54 person month
Drawbacks :
   Focuses only on the coding activity.
    Total effort estimation should include effort put in
    analysis, design , testing and maintenance also.
   LOC is language dependent.
   Style of Programming varies from one person to
    another. Different programmers get different LOC.
   Difficult to estimate LOC from problem
    specification.
   Measures size not in terms of LOC of each function but from
    user’s point of view i.e on the basis of what the user requests
    and receives in return from the system.

   Based on the countable measures of software’s information
    domain and assessment of software complexity.

 5 information domain characteristics are determined and are
  counted :
1. No. of user inputs : Individual data items input by the
  user are not counted in the calculation of the no. of inputs,
  but a group of related inputs are considered as a single input.
  Eg. While entering the data concerning an employee, to
  employee pay roll software , the data items age, sex, name,
  address etc.
are considered as a single input.
2.   No. of user outputs : Refers to reports, screen
     outputs, error messages produced. Individual
     items within a report/screen are not considered.
3.   No. of inquiries : No. of interactive queries which
     are made by the users. Requests for instant access
     to information.
     Eg. Retrieve account balance.
4.   No. of files : Each logical file is counted.
5.   Number of interfaces : Information exchanges with

     other systems are counted.
    FP = count-total X [0.65 + 0.01 X
     Sum (F i )]
Sum (Fi)]------------
Answer the following questions(14) using a scale of [0-5]: 0
  not important; 5 absolutely essential. We call them influence
  factors (Fi).

1.   Does the system require reliable backup and recovery?
2.   Are data communications required?
3.   Are there distributed processing functions?
4.   Is performance critical?
5.   Does the system require on-line data entry?
2) Process Based Estimation
The process is decomposed into a relatively small set
of tasks and the effort required to accomplish each
task is estimated.
Steps in process-based estimation --
1. Delineation of software functions obtained from
    the project scope.
2. A series of software process activities must be
    performed for each function.
3. Once problem functions and process activities are
    combined, the planner estimates the effort (e.g., person-
    months) that will be required to accomplish each software
    process activity for each software function.
The following table depicts the process based estimation for developing
a CAD software System :
   Based on an average burdened labor rate of
    $8,000 per month,
   the total estimated project cost is
    8000*46=
    $368,000
and the estimated effort is 46 person-months.
    A formula is used to estimate effort using size
     (LOC) as an input.
    The formula is derived from data collected from
     past software projects
    COCOMO (Constructive Cost Model ) is an
     empirical estimation model developed by Barry
     Boehm.
     COCOMO I has 3 levels:
5.   Basic COCOMO
6.   Intermediate COCOMO
7.   Advanced COCOMO
1.    Basic COCOMO :
     Applies to 3 classes of software projects
c)    Organic projects :
     • Relatively small, simple software projects.
     • Small teams with good application experience
        work to a set of less than rigid requirements.
     • Similar to the previously developed projects.
     • relatively small and requires little innovation.
     Eg: Leave management project with intranet facilities
b) Semi-Detached Projects

 Intermediate (in size and complexity) software
 projects in which teams with mixed experience
 levels must meet a mix of rigid and less than rigid
 requirements.
Eg : S/w project for a large bank, including daily
 customer operations and ATM service.
c) Embedded Projects :

   Software projects that must be developed
    within a set of tight hardware, software, and

  operational constraints.
Eg. S/w for a nuclear power plant
E=a (KLOC)    b



                 D=c (E)   d




                  P=E/D

Where E is the effort applied in person-months,

D is the development time in chronological months,

P is the number of people required.
Software project      a       b      c      d

   Organic         2.4   1.05 2.5       0.38
   Semi-detached   3.0   1.12 2.5       0.35
   Embedded        3.6   1.20 2.5       0.32
2. The Intermediate COCOMO

    Is an extension of the Basic COCOMO.
    Considers a set of "cost driver attributes" that can be
     grouped into four major categories, each with a
     number of subcategories:
5.   Product attributes
6.   Hardware attribute
7.   Personnel attributes
8.   Project attributes
Product attributes
  Required software reliability
  Size of application database
  Complexity of the product
Hardware attributes
  Run-time performance constraints
  Memory constraints
  Volatility of the virtual machine environment
  Required turnabout time
Personnel attributes
  Analyst capability
  Software engineer capability
  Applications experience
  Virtual machine experience
  Programming language experience
Project attributes
  Use of software tools
  Application of software engineering methods
  Required development schedule
   Each of the 15 attributes is rated on a 6-point scale that ranges from
    "very low" to "extra high" (in importance or value).
   Based on the rating, an effort multiplier is determined from the table
    below. The product of all effort multipliers results in an 'effort
    adjustment factor (EAF). Typical values for EAF range from 0.9 to
    1.4.
   The Intermediate Cocomo formula now takes the form...
    E=EAF * a * (KLOC) b
 where E is the effort applied in person-months,
 KLOC is the estimated number of delivered lines of code
  for the project and
 EAF is the factor calculated above. The coefficient a and
  the exponent b are given in the next table.
 Software project                  ai           bi
       Organic               3.2          1.05
       Semi-detached         3.0          1.12
       Embedded              2.8          1.20
Note : D and P are calculated in the same way as Basic
       COCOMO
Calculate COCOMO effort, TDEV, average staffing, and
productivity for an organic project that is estimated to be
39,800 lines of code.
An organic project uses the application formulas.
1.     E=2.4 * (KLOC)1.05
        =2.4 * (39.8) 1.05
        = 2.4 * 47.85 = 114.8 Person-months.
2. TDEV = 2.5 * (114.8) 0.38
        =
          2.5 * 6.06 =15.15 months
3. Average staffing = E/TDEV = 114.8/15.15= 7.6 persons
4. Productivity = 39,800/(114.8)
                = 346.6 LOC /PM
We have determined our project fits the characteristics of Semi-
Detached mode
We estimate our project will have 32,000 Delivered Source
Instructions. Using the formulas, we can estimate:
Effort = 3.0*(32) ^1.12             = 146 man-months
Schedule = 2.5*(146)^ 0.35          = 14 months
Productivity                        = 32,000 DSI / 146 MM
                                             = 219 DSI/MM
Average Staffing                    = 146 MM /14 months
                                             = 10 people
6) Develop a schedule

More Related Content

What's hot

Object oriented testing
Object oriented testingObject oriented testing
Object oriented testingHaris Jamil
 
Software coding & testing, software engineering
Software coding & testing, software engineeringSoftware coding & testing, software engineering
Software coding & testing, software engineeringRupesh Vaishnav
 
SE2_Lec 20_Software Testing
SE2_Lec 20_Software TestingSE2_Lec 20_Software Testing
SE2_Lec 20_Software TestingAmr E. Mohamed
 
Software Testing Life Cycle Unit-3
Software Testing Life Cycle Unit-3Software Testing Life Cycle Unit-3
Software Testing Life Cycle Unit-3Raj vardhan
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basicRohit Singh
 
Software testing
Software testingSoftware testing
Software testingRavi Dasari
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesPunjab University
 
Object Oriented Testing
Object Oriented TestingObject Oriented Testing
Object Oriented TestingAMITJain879
 
Testing and types of Testing
Testing and types of TestingTesting and types of Testing
Testing and types of TestingMunaam Munawar
 
Practical Software Testing Tools
Practical Software Testing ToolsPractical Software Testing Tools
Practical Software Testing ToolsDr Ganesh Iyer
 
White box testing
White box testing White box testing
White box testing Mani Kanth
 
documentation-testing.ppt
documentation-testing.pptdocumentation-testing.ppt
documentation-testing.pptGaurav Nigam
 
Research issues in object oriented software testing
Research issues in object oriented software testingResearch issues in object oriented software testing
Research issues in object oriented software testingAnshul Vinayak
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9Ian Sommerville
 
Various types of software testing by kostcare | London | Waterloo
Various types of software testing by kostcare | London | WaterlooVarious types of software testing by kostcare | London | Waterloo
Various types of software testing by kostcare | London | WaterlooKostCare
 
Equivalence class testing
Equivalence  class testingEquivalence  class testing
Equivalence class testingMani Kanth
 
SE2_Lec 21_ TDD and Junit
SE2_Lec 21_ TDD and JunitSE2_Lec 21_ TDD and Junit
SE2_Lec 21_ TDD and JunitAmr E. Mohamed
 
White box testing
White box testingWhite box testing
White box testingAbdul Basit
 

What's hot (20)

Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Software coding & testing, software engineering
Software coding & testing, software engineeringSoftware coding & testing, software engineering
Software coding & testing, software engineering
 
Software coding and testing
Software coding and testingSoftware coding and testing
Software coding and testing
 
SE2_Lec 20_Software Testing
SE2_Lec 20_Software TestingSE2_Lec 20_Software Testing
SE2_Lec 20_Software Testing
 
Software Testing Life Cycle Unit-3
Software Testing Life Cycle Unit-3Software Testing Life Cycle Unit-3
Software Testing Life Cycle Unit-3
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Software testing
Software testingSoftware testing
Software testing
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Object Oriented Testing
Object Oriented TestingObject Oriented Testing
Object Oriented Testing
 
Testing and types of Testing
Testing and types of TestingTesting and types of Testing
Testing and types of Testing
 
Software testing methods
Software testing methodsSoftware testing methods
Software testing methods
 
Practical Software Testing Tools
Practical Software Testing ToolsPractical Software Testing Tools
Practical Software Testing Tools
 
White box testing
White box testing White box testing
White box testing
 
documentation-testing.ppt
documentation-testing.pptdocumentation-testing.ppt
documentation-testing.ppt
 
Research issues in object oriented software testing
Research issues in object oriented software testingResearch issues in object oriented software testing
Research issues in object oriented software testing
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9
 
Various types of software testing by kostcare | London | Waterloo
Various types of software testing by kostcare | London | WaterlooVarious types of software testing by kostcare | London | Waterloo
Various types of software testing by kostcare | London | Waterloo
 
Equivalence class testing
Equivalence  class testingEquivalence  class testing
Equivalence class testing
 
SE2_Lec 21_ TDD and Junit
SE2_Lec 21_ TDD and JunitSE2_Lec 21_ TDD and Junit
SE2_Lec 21_ TDD and Junit
 
White box testing
White box testingWhite box testing
White box testing
 

Viewers also liked

Make or Buy IT Decision
Make or Buy IT DecisionMake or Buy IT Decision
Make or Buy IT DecisionUmesh Bajaj
 
MG 6863 UNIT II MAKE OR BUY DECISION
MG 6863 UNIT II MAKE OR BUY DECISIONMG 6863 UNIT II MAKE OR BUY DECISION
MG 6863 UNIT II MAKE OR BUY DECISIONAsha A
 
MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS
MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS
MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS Asha A
 
Cocomo II
Cocomo IICocomo II
Cocomo IIActimel
 
Line of Code (LOC) Matric and Function Point Matric
Line of Code (LOC) Matric and Function Point MatricLine of Code (LOC) Matric and Function Point Matric
Line of Code (LOC) Matric and Function Point MatricAnkush Singh
 
Functional point analysis
Functional point analysisFunctional point analysis
Functional point analysisDestinationQA
 
software project management Cocomo model
software project management Cocomo modelsoftware project management Cocomo model
software project management Cocomo modelREHMAT ULLAH
 
Software Project Management ppt
Software Project Management pptSoftware Project Management ppt
Software Project Management pptAndreea Usatenco
 
Software engineering project management
Software engineering project managementSoftware engineering project management
Software engineering project managementjhudyne
 

Viewers also liked (16)

Cocomo II
Cocomo IICocomo II
Cocomo II
 
Cocomo II
Cocomo IICocomo II
Cocomo II
 
Make or Buy IT Decision
Make or Buy IT DecisionMake or Buy IT Decision
Make or Buy IT Decision
 
MG 6863 UNIT II MAKE OR BUY DECISION
MG 6863 UNIT II MAKE OR BUY DECISIONMG 6863 UNIT II MAKE OR BUY DECISION
MG 6863 UNIT II MAKE OR BUY DECISION
 
MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS
MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS
MG 6863 ENGG ECONOMICS UNIT IV REPLACEMENT AND MAITENANCE ANALYSIS
 
Cocomo II
Cocomo IICocomo II
Cocomo II
 
Make or buy diagram
Make or buy diagramMake or buy diagram
Make or buy diagram
 
Line of Code (LOC) Matric and Function Point Matric
Line of Code (LOC) Matric and Function Point MatricLine of Code (LOC) Matric and Function Point Matric
Line of Code (LOC) Matric and Function Point Matric
 
Functional point analysis
Functional point analysisFunctional point analysis
Functional point analysis
 
software project management Cocomo model
software project management Cocomo modelsoftware project management Cocomo model
software project management Cocomo model
 
COCOMO MODEL
COCOMO MODELCOCOMO MODEL
COCOMO MODEL
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
 
Cocomo ii
Cocomo iiCocomo ii
Cocomo ii
 
Software Project Management ppt
Software Project Management pptSoftware Project Management ppt
Software Project Management ppt
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
 
Software engineering project management
Software engineering project managementSoftware engineering project management
Software engineering project management
 

Similar to Softwareproject planning

Software estimation
Software estimationSoftware estimation
Software estimationMd Shakir
 
Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)ShudipPal
 
Spm project planning
Spm project planning Spm project planning
Spm project planning Kanchana Devi
 
SE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptxSE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptxTangZhiSiang
 
3wis_2.pdf
3wis_2.pdf3wis_2.pdf
3wis_2.pdfaustdali
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5SIMONTHOMAS S
 
Lecture5
Lecture5Lecture5
Lecture5soloeng
 
Software system design sample
Software system design sampleSoftware system design sample
Software system design sampleNorman K Ma
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineeringRupesh Vaishnav
 
System analysis and design
System analysis and designSystem analysis and design
System analysis and designRobinsonObura
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniqueskamal
 
Software engineering 8 Software project planning
Software engineering 8 Software project planningSoftware engineering 8 Software project planning
Software engineering 8 Software project planningVaibhav Khanna
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineeringHitesh Mohapatra
 
New paper delivery system final
New paper delivery system finalNew paper delivery system final
New paper delivery system finalArvind Vishwakarma
 

Similar to Softwareproject planning (20)

Software estimation
Software estimationSoftware estimation
Software estimation
 
Unit 5
Unit   5Unit   5
Unit 5
 
software engineering
software engineering software engineering
software engineering
 
Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)
 
Spm project planning
Spm project planning Spm project planning
Spm project planning
 
SE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptxSE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptx
 
3wis_2.pdf
3wis_2.pdf3wis_2.pdf
3wis_2.pdf
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5
 
Lecture5
Lecture5Lecture5
Lecture5
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Software system design sample
Software system design sampleSoftware system design sample
Software system design sample
 
Estimation sharbani bhattacharya
Estimation sharbani bhattacharyaEstimation sharbani bhattacharya
Estimation sharbani bhattacharya
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
 
System analysis and design
System analysis and designSystem analysis and design
System analysis and design
 
Software Estimation Techniques
Software Estimation TechniquesSoftware Estimation Techniques
Software Estimation Techniques
 
SPM 3.pdf
SPM 3.pdfSPM 3.pdf
SPM 3.pdf
 
Software engineering 8 Software project planning
Software engineering 8 Software project planningSoftware engineering 8 Software project planning
Software engineering 8 Software project planning
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
New paper delivery system final
New paper delivery system finalNew paper delivery system final
New paper delivery system final
 
Software engg unit 1
Software engg unit 1 Software engg unit 1
Software engg unit 1
 

More from saurabhshertukde (19)

Revision sql te it new syllabus
Revision sql te it new syllabusRevision sql te it new syllabus
Revision sql te it new syllabus
 
Oodbms ch 20
Oodbms ch 20Oodbms ch 20
Oodbms ch 20
 
Introduction er & eer
Introduction er & eerIntroduction er & eer
Introduction er & eer
 
Introduction er & eer
Introduction er &  eerIntroduction er &  eer
Introduction er & eer
 
Integrity & security
Integrity & securityIntegrity & security
Integrity & security
 
Er model
Er modelEr model
Er model
 
Er & eer to relational mapping
Er & eer to relational mappingEr & eer to relational mapping
Er & eer to relational mapping
 
Eer case study
Eer case studyEer case study
Eer case study
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Chapter 9
Chapter 9Chapter 9
Chapter 9
 
J2 ee archi
J2 ee archiJ2 ee archi
J2 ee archi
 
J2 ee architecture
J2 ee architectureJ2 ee architecture
J2 ee architecture
 
Software project-scheduling
Software project-schedulingSoftware project-scheduling
Software project-scheduling
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
Design concepts and principles
Design concepts and principlesDesign concepts and principles
Design concepts and principles
 
Analysis modelling
Analysis modellingAnalysis modelling
Analysis modelling
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principles
 
Risk analysis
Risk analysisRisk analysis
Risk analysis
 

Recently uploaded

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 

Recently uploaded (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 

Softwareproject planning

  • 1.
  • 2. Objectives: To provide a framework that enables the manager to make reasonable estimates of resources, cost and schedule. Activities associated with project planning : 4. Determination of software scope : Describes the function, performance constraints, interfaces of the software.
  • 3.  How to determine the scope ? Conduct a preliminary meeting /interview between the customer and developer(analyst) Set of questions asked : 1. Context free questions : Questions that determine the overall goal of the system and identifies the people who want a solution.
  • 4. Eg: Who is behind the request for the work? Who will use the soln ? What will be the economic benefit of a successful soln. ? 6. Next set of questions : What problems will the soln. address ? What should be the most important goal of the proposed system? What are the functionalities expected of the software ?
  • 5. 3. Meta questions : Focuses on the effectiveness of the meeting . 2. Are my questions relevant to the problem that you have ? 3. Am I asking too many questions ? 4. Should I be asking anything else ? 5. Can anyone else provide additional information .
  • 6. 2. Determine feasibility. Ask Is the software feasible ? 4 types of feasibility : 5. Technical feasibility : Is the project technically feasible ? Does the organization have the necessary h/w , s/w and operating system environment required to deploy the software ?
  • 7. 2. Cost The project financially feasible ? Can the development be completed at the cost of the client / can the market afford it. 3. Time : Will the project be completed within the time frame dictated by the customer.
  • 8. 3. Analyze the risk for the project .
  • 9. 4. Estimate the resources required to accomplish the software development effort.  Three major categories of software engineering resources ◦ People ◦ Development environment ◦ Reusable software components  Each resource is specified with ◦ A description of the resource ◦ A statement of availability ◦ The time when the resource will be required Time window ◦ The duration of time that the resource will be applied Of the resource
  • 10. 1. Human Resource Factors considered are -- c) Skills : * Organizational Position : Manager, senior s/w engineer. * Specialty : Telecomm, database , client/server. f) Location : For large projects software team has to be geographically dispersed across a no. of different locations. Hence location of each human resource is specified. i) No. of people required for a software project. Estimate the development effort (person –month)
  • 11. 2) Reusable software resource : 4 resource categories are considered :  Off-the-shelf components  Acquired from 3rd party or developed internally for a past project  Ready for use on the current project and have been fully validated  Full-experience components  Existing specifications, designs, code or test data (developed for past projects) that are similar to the software to be built for the current project  Members of the current software team have had full experience in the application area represented by these components; therefore low-risk modifications
  • 12.  Partial-experience components (high risk)  Existing specifications, designs, code or test data (developed for past projects) that are related to the software to be built for the current project  Require substantial modification  Members of the team have only limited experience; therefore modifications required for partial- experience components have a fair degree of risk  New components  Software components that must be built by the software team specifically for the needs of the current project
  • 13. 3) Environmental resources * Software tools, hardware, network resources. * Prescribe the time window required for these resources and verify that these will be available.
  • 14. number software tools skills hardware people environment network location resources project reusable software OTS new components components full-experience part.-experience components components
  • 15. 5) Estimate cost and effort  Decomposition techniques ◦ These take a "divide and conquer" approach ◦ Cost and effort estimation are performed in a stepwise fashion by breaking down a project into major functions and related software engineering activities  Empirical estimation models ◦ Offer a potentially valuable estimation approach if the historical data used to seed the estimate is good
  • 16. Decomposition Technique  Before an estimate can be made and decomposition techniques applied, the planner must ◦ Understand the scope of the software to be built ◦ Generate an estimate of the software’s size  Then one of two approaches are used ◦ Problem-based estimation  Based on either source lines of code or function point estimates ◦ Process-based estimation  Based on the effort required to accomplish each task
  • 17. Problem based decomposition 2) LoC based estimation Eg: Consider a software package to be developed for a CAD application for mechanical components. The CAD s/w will accept 2-D and 3-D geometric data from an engineer. The engineer will interact and control the CAD system through a UI. All geometric data and other supporting info. Will be maintained in a DB. Design analysis modules will be developed to produce the required o/p which will be displayed on a variety of graphics devices. The s/w will be designed to control and interact with peripheral devices that include a mouse, digitizer, laser printer and plotter.
  • 18. Major s/w functions : 2. UI and Control facilities. 3. 2-D geometric analysis. 4. 3-D geometric analysis. 5. DBMS 6. Computer graphics and display facility. 7. Peripheral control function. 8. Design analysis modules
  • 19. Step1 : A range of LOC estimates is developed for each function. Eg : LOC estimate for 3-D geometric analysis: optimistic -- 4600 Most likely – 6900 Pessimistic -- 8600 Step2 :Expected value ‘S’ can be computed S = (Sopt + 4Sm + Spess)/6
  • 20. Estimation table ---  UI and Control facilities. 2300  2-D geometric analysis. 5300  3-D geometric analysis. 6800  DBMS 3350  Computer graphics and display facility. 4950  Peripheral control function. 2100  Design analysis modules 8400 Step 3 : Estimated LOC 33200
  • 21. Step 4 : Review the historical data to find average productivity Step 5 : Based on historical productivity data and LOC estimate-- Estimate the project cost and effort Eg : Avg. productivity (from historical data) =620 LOC/pm Let the labor rate be $8000 per month Therefore Cost /LOC= $8000/620= $13 Total LOC is 33200 Therefore Project Cost = 33200 x 13 = #431000 Effort in person month = 33200/620=54 person month
  • 22. Drawbacks :  Focuses only on the coding activity. Total effort estimation should include effort put in analysis, design , testing and maintenance also.  LOC is language dependent.  Style of Programming varies from one person to another. Different programmers get different LOC.  Difficult to estimate LOC from problem specification.
  • 23. Measures size not in terms of LOC of each function but from user’s point of view i.e on the basis of what the user requests and receives in return from the system.  Based on the countable measures of software’s information domain and assessment of software complexity.  5 information domain characteristics are determined and are counted : 1. No. of user inputs : Individual data items input by the user are not counted in the calculation of the no. of inputs, but a group of related inputs are considered as a single input. Eg. While entering the data concerning an employee, to employee pay roll software , the data items age, sex, name, address etc.
  • 24. are considered as a single input. 2. No. of user outputs : Refers to reports, screen outputs, error messages produced. Individual items within a report/screen are not considered. 3. No. of inquiries : No. of interactive queries which are made by the users. Requests for instant access to information. Eg. Retrieve account balance. 4. No. of files : Each logical file is counted. 5. Number of interfaces : Information exchanges with other systems are counted.
  • 25.
  • 26. FP = count-total X [0.65 + 0.01 X Sum (F i )] Sum (Fi)]------------ Answer the following questions(14) using a scale of [0-5]: 0 not important; 5 absolutely essential. We call them influence factors (Fi). 1. Does the system require reliable backup and recovery? 2. Are data communications required? 3. Are there distributed processing functions? 4. Is performance critical? 5. Does the system require on-line data entry?
  • 27. 2) Process Based Estimation The process is decomposed into a relatively small set of tasks and the effort required to accomplish each task is estimated. Steps in process-based estimation -- 1. Delineation of software functions obtained from the project scope. 2. A series of software process activities must be performed for each function. 3. Once problem functions and process activities are combined, the planner estimates the effort (e.g., person- months) that will be required to accomplish each software process activity for each software function.
  • 28. The following table depicts the process based estimation for developing a CAD software System :
  • 29. Based on an average burdened labor rate of $8,000 per month,  the total estimated project cost is 8000*46= $368,000 and the estimated effort is 46 person-months.
  • 30. A formula is used to estimate effort using size (LOC) as an input.  The formula is derived from data collected from past software projects  COCOMO (Constructive Cost Model ) is an empirical estimation model developed by Barry Boehm.  COCOMO I has 3 levels: 5. Basic COCOMO 6. Intermediate COCOMO 7. Advanced COCOMO
  • 31. 1. Basic COCOMO :  Applies to 3 classes of software projects c) Organic projects : • Relatively small, simple software projects. • Small teams with good application experience work to a set of less than rigid requirements. • Similar to the previously developed projects. • relatively small and requires little innovation. Eg: Leave management project with intranet facilities
  • 32. b) Semi-Detached Projects Intermediate (in size and complexity) software projects in which teams with mixed experience levels must meet a mix of rigid and less than rigid requirements. Eg : S/w project for a large bank, including daily customer operations and ATM service.
  • 33. c) Embedded Projects :  Software projects that must be developed within a set of tight hardware, software, and operational constraints. Eg. S/w for a nuclear power plant
  • 34. E=a (KLOC) b D=c (E) d P=E/D Where E is the effort applied in person-months, D is the development time in chronological months, P is the number of people required.
  • 35. Software project a b c d  Organic 2.4 1.05 2.5 0.38  Semi-detached 3.0 1.12 2.5 0.35  Embedded 3.6 1.20 2.5 0.32
  • 36. 2. The Intermediate COCOMO  Is an extension of the Basic COCOMO.  Considers a set of "cost driver attributes" that can be grouped into four major categories, each with a number of subcategories: 5. Product attributes 6. Hardware attribute 7. Personnel attributes 8. Project attributes
  • 37. Product attributes  Required software reliability  Size of application database  Complexity of the product Hardware attributes  Run-time performance constraints  Memory constraints  Volatility of the virtual machine environment  Required turnabout time Personnel attributes  Analyst capability  Software engineer capability  Applications experience  Virtual machine experience  Programming language experience Project attributes  Use of software tools  Application of software engineering methods  Required development schedule
  • 38. Each of the 15 attributes is rated on a 6-point scale that ranges from "very low" to "extra high" (in importance or value).  Based on the rating, an effort multiplier is determined from the table below. The product of all effort multipliers results in an 'effort adjustment factor (EAF). Typical values for EAF range from 0.9 to 1.4.
  • 39.
  • 40. The Intermediate Cocomo formula now takes the form... E=EAF * a * (KLOC) b  where E is the effort applied in person-months,  KLOC is the estimated number of delivered lines of code for the project and  EAF is the factor calculated above. The coefficient a and the exponent b are given in the next table.  Software project ai bi Organic 3.2 1.05 Semi-detached 3.0 1.12 Embedded 2.8 1.20 Note : D and P are calculated in the same way as Basic COCOMO
  • 41. Calculate COCOMO effort, TDEV, average staffing, and productivity for an organic project that is estimated to be 39,800 lines of code. An organic project uses the application formulas. 1. E=2.4 * (KLOC)1.05 =2.4 * (39.8) 1.05 = 2.4 * 47.85 = 114.8 Person-months. 2. TDEV = 2.5 * (114.8) 0.38 = 2.5 * 6.06 =15.15 months 3. Average staffing = E/TDEV = 114.8/15.15= 7.6 persons 4. Productivity = 39,800/(114.8) = 346.6 LOC /PM
  • 42. We have determined our project fits the characteristics of Semi- Detached mode We estimate our project will have 32,000 Delivered Source Instructions. Using the formulas, we can estimate: Effort = 3.0*(32) ^1.12 = 146 man-months Schedule = 2.5*(146)^ 0.35 = 14 months Productivity = 32,000 DSI / 146 MM = 219 DSI/MM Average Staffing = 146 MM /14 months = 10 people
  • 43. 6) Develop a schedule