GUIDANCE
The Pricing Handbook / Appendix 19D (Revised 01/2005)

19. Software Pricing


19D. POPULAR PARAMETRIC SOFTWARE COST MODELS

 

19D.1 Introduction

There are several sophisticated parametric software cost models that consider multiple parameters in computing cost or effort required. A list of some common models is provided below, listed in alphabetical order. Subsequent sections are a basic discussion of each model. For each of the models, general information, principal inputs, processing, principal outputs, calibration, and life cycle (or support) considerations will be discussed. When more detailed information is needed, cost estimators are encouraged to consult the referenced documents.

  • Automated Cost Estimating Integrated Tools (ACEIT)
  • COnstructive COst MOdel (COCOMO.II)
  • Cost Xpert
  • ForeSight
  • KnowledgePLAN Model
  • PRICE-S Model
  • Revised Enhanced Version of Intermediate COCOMO (REVIC)
  • SoftCost-Object-Oriented (OO) Model
  • Software Architecture, Sizing, and Estimating Tool (SASET)
  • Software ESTimator (SoftEST)
  • Software Life Cycle Model (SLIM)
  • System Evaluation and Estimation of Resources Software Estimating Model (SEER-SEM)

 

19D.2 Automated Cost Estimating Integrated Tools (ACEIT)

ACEIT is an estimating system consisting of a suite of tools designed to assist cost analysts in arriving at cost estimates, conducting "what-if?" studies, developing cost proposals and evaluations, conducting risk and uncertainty analysis, and developing Cost Estimating Relationships (CERs). Its primary purpose is Financial Management. ACEIT is a Joint Service system, sponsored by the Air Force Materiel Command (AFMC) Electronic Systems Center and the US Army Cost and Economic Analysis Center (CEAC). The result of government-sponsored efforts, the ACEIT suite of applications is available to U.S. Government organizations with no charge for use (but there is an annual maintenance & support fee). It is used by Acquisition Program Offices and at various other levels across the Armed Services, throughout DoD, and by other Government agencies.

The ACEIT system is comprised of five analysis/estimating tools:

  • Automated Cost Estimator (ACE), (the spreadsheet)
  • Automated Cost Database (ACDB), (library of commercial and non-commercial cost models)
  • Cost Analysis Statistics Package (CO$TAT), (full-feature statistics package)
  • Cost Risk Assessment (RI$K), (model which quantifies risk associated with a cost estimate)
  • ACE Executive.

ACE is the heart of ACEIT. It automates all of the steps of the estimating process, including, building a Work Breakdown Structure (WBS), specifying estimating methods, performing learning, time phasing and inflation, and documentation. ACE also provides access to on-line databases and a knowledge base of over 1000 cost estimating relationships, models, and source documents from which users can identify appropriate estimating methods and incorporate them into their estimate.

ACDB is an automated cost database with the capability to enter, search, and retrieve cost, schedule, technical, and programmatic data and to automatically load retrieved data into the Cost Analysis Statistics Package (CO$TAT). CO$TAT is a cost analysis statistical package built specifically for the cost estimator to perform statistical analyses commonly used in cost estimation. RI$K is a cost risk application that performs risk and uncertainty analysis. ACE Executive allows estimates and models hosted in ACE to act as cost model servers to other applications.

Product
Information:

Product :  ACEIT
Latest Version :  3.1
Last Release :  1997
First Release :  
 
Pricing Information :  as of 1Q1998
Single User Gov't :  Free w/ACEIT maint contract
Single User Commercial :  $2,500/yr
Annual Maintenance Site Licence Gov't :  $1.5K
Site Licence GSA :  $9,900/yr
Evaluation Copy :  Free for 90 days
Vendor
Profile :

Company :  ACEIT Gov't Prog Director
Address :  ESC/FMC
Hanscom AFB, MA 01731
800 Phone Number :  
Phone Number :  781-377-5120
Fax Number :   
Internet :  www.aceit.com
Marketing Contact :  Telecote Research, Inc.
Jenny Nigra
Phone :  805-964-6963
Fax Number :  805-964-7329
E-Mail :  jnigra@sb.telecote.com
 
System Requirements :
Recommended :  
OS :  Win 95/NT
RAM :  16 MB
HD Storage :  60 MB
 
Minimum :  
OS :  Win 3.1
RAM :  8 MB
HD Storage :  40 MB
 

The ACEIT system is comprised of five analysis/estimating tools: Automated Cost Estimator (ACE), (the spreadsheet); Automated Cost Database (ACDB), (relational data base); Cost Analysis Statistics Package (CO$TAT), (full-feature statistics package); Cost Risk Assessment (RI$K), (quantifies risk associated with a cost estimate) and ACE Executive. ACE, the Automated Cost Estimator, is a special purpose program, specifically developed for cost analysis. It has been organized and structured to follow the steps or phases used in developing a cost estimate, ranging from defining what is being estimated through time-phasing and final documentation. ACDB is the cost database module that contains cost, schedule, technical, and programmatic data on system acquisition contracts. It is a PC-based program designed to assist the user in building, loading, maintaining, and querying a relational data base of cost and technical data, and in analyzing data subsets retrieved from it. The ACEIT Executive is a three-part application: the ACE Calculation Server, the RI$K Calculation Server, and the Microsoft Excel Client. The Server applications let you run ACE and RI$K sessions from any client application. Using the Excel client, you can link applications that would naturally interface with Excel to ACE and RI$K. The user can either enter own CERs/equations or import the results of other models such as PRICE and SEER. Outputs look like spreadsheets or can link to Excel.

 

19D2.1 ACEIT Inputs

ACEs provides a workscreen or spreadsheet to perform each step required to make an estimate. The complete list of steps is as follows:

  1. Define the WBS/CES
  2. Enter the estimating methodologies
  3. Adjust G&A, fee, overhead, escalation, units
  4. Apply learning curves
  5. Time phase the estimate
  6. Estimate/perform what-ifs
  7. Document the estimate
  8. Review and Refine

The input screens resemble spreadsheets and require the equations and variables to be defined. Within each workscreen, functionality is provided in ACE by giving each column a dedicated purpose. For example, the Learning Curve Slope column only lets you enter a learning curve slope or a variable name that represents the slope. Each column has its own syntax. By making entries in several columns for a row, you can specify that rows estimating methodology. Typically, the rows in ACE represent WBS/CES line items or input variable items.

ACE can import from PRICE Software Models, SEER Cost Models, MS Excel and MS Word.


19D2.2 ACEIT Processing

Since the user enters the equations and variables, the user basically defines the processing. The ACE structure allows the user to progressively move from one workscreen to another. The user creates the model structure of the estimate, and calculates the result. This model building can be free-form. The user does not need to move through the workscreens in a pre-defined order. Unique IDs or variable names can be specified for each row and then used in the ACE columns of other rows. This lets rows of the model link together into a system of equations.


19D2.3 ACEIT Outputs

Reports are basically spreadsheets containing the results. Tools that ACE can export data to include MS Excel and MS Word.


19D2.4 ACEIT Calibration

Since the user controls the equations, calibration is accomplished by creating historical databases, experience and refining the equations.


19D2.5 ACEIT Life Cycle Considerations

Include the WBS Lifecycle elements into the model.

 

19D.3 COnstructive COst MOdel (COCOMO.II)

COCOMO.II is a screen-oriented, interactive-software package that assists in budgetary planning and schedule estimation of a software development project prior to any work beginning. Through the flexibility of COCOMO.II, a software project manager can develop a model (or multiple models) of projects in order to identify potential problems in resources, personnel, budgets, and schedules both before and after the potential software package has been completed.

The COCOMO.II software package is based upon a recently revised version of the original COnstructive COst MOdel (COCOMO) first published by Barry Boehm in his book Software Engineering Economics, Prentice-Hall (1981), and the Ada COCOMO (1987) predecessors. Table 19D-1 summarizes the different versions of COCOMO.

Table 19D-1. COCOMO Model Versions

Version

Description/Release Date

COCOMO 1.0

original version released 1981 for waterfall model.

Basic Level

Consists of 3 simple models with single parameter effort & schedule equations.

Intermediate Level

Contains nominal equations with 15 multipliers that adjust the results to reflect the unique attributes of the specific program.

Detailed Level

Adjusts the Intermediate Level multipliers for each phase of the SW development life cycle.

Ada COCOMO

1987 update for Ada SW language development

COCOMO.II.1997.0 (also referred to as COCOMO 2.0)

Released on March 7, 1997 to better estimate costs for new SW development processes.


The primary objectives of the COCOMO.II.1997 effort were to:

  • To develop a software cost and schedule estimation model attuned to the life cycle practices of the 1990's and 2000's.
  • To develop software cost database and tool support capabilities for continuous model improvement.
  • To provide a quantitative analytic framework, and set of tools and techniques for evaluating the effects of software technology improvements on software life cycle costs and schedules.

The full COCOMO.II model includes three stages. Stage 1 supports estimation of prototyping or applications composition efforts. Stage 2 supports estimation in the Early Design stage of a project, when less is known about the project’s cost drivers. Stage 3 supports estimation in the Post-Architecture stage of a project. The current version of COCOMO.II implements stage 3 formulas to estimate the effort, schedule, and cost required to develop a software product. It also provides the breakdown of effort and schedule into software life cycle phases and activities from the original COCOMO manual. These are still reasonably valid for waterfall model software projects, but need to be interpreted for non-waterfall projects.

Equation 19D-1 below is the equation used by COCOMO.II to calculate the estimated effort.

 

Equation 19D-1. Effort Estimation Equation

image

 Where:

image

image

Symbol Description
A Constant, provisionally set to 2.5
AA Assessment and assimilation
ADAPT Percentage of components adapted (represents the effort required in under-standing software)
AT Percentage of components that are automatically translated
ATPROD Automatic translation productivity
BRAK Breakage: Percentage of code thrown away due to requirements volatility
CM Percentage of code modified
DM Percentage of design modified
EM Effort multipliers: RELY, DATA, CPLX, RUSE, DOCU, TIME, STOR, PVOL, ACAP, PCAP, PCON, AEXP, PEXP, LTEX, TOOL, SITE
IM Percentage of integration and test modified
KASLOC Size of the adapted component expressed in thousands of adapted source lines of code
KNSLOC Size of component expressed in thousands of new source lines of code
PM Person Months of estimated effort
SF Scale Factors: PREC, FLEX, RESL, TEAM, PMAT
SU Software understanding (zero if DM = 0 and CM = 0)

 

Product
Information:

Product :  COCOMO.II
Latest Version :  2.0
Last Release :  1997
First Release : 1981
 
Pricing Information :  as of 1Q1998
Single User Gov't :  Free download
Single User Commercial : from COCOMO.II
Annual Maintenance  
Site Licence Gov't :
home page
Site Licence GSA :  
   
Vendor
Profile :

Company :  Developed by USC-CSE
Address :  Univ of So. California
Irvine, CA
800 Phone   Number :  
Phone Number :  213-740-6470
Fax Number :   
Internet :  Http://sunset.usc.edu/
COCOMOII/cocomo.html
Marketing  
Phone Number:
 
Fax Number :  
E-Mail :  Cocom-info@Sunset.usc.edu
 
System Requirements :
Recommended :  
OS :  Solaris 2.4
 SunOS 4.x
 w/Motif or
 Win 95/NT
RAM :  4 MB
HD Storage :  5 MB
 
Minimum :  
OS :  Solaris 2.4
 SunOS 4.x
 w/Motif or
 Win 3.1
RAM :  4 MB
HD Storage :  5 MB
 

Product Description:

COCOMO.II model is an updated version of the 1981 COCOMO and 1987 Ada COCOMO models tailored to the new software development life cycle processes and capabilities. Major new modeling capabilities of COCOMO.II include: a tailorable family of software sizing models, involving Object Points, Function Points, and Source Lines of Code (SLOC); non-linear models for software reuse and reengineering; an exponent-driver approach for modeling relative software diseconomies of scale; and several changes to previous COCOMO effort-multiplier cost drivers.

 

19D.3.1 COCOMO.II Inputs

The primary COCOMO.II input are the program size, in KDSI, Function Points or Object Points. However, ratings for sixteen additional attributes must be assessed. These attributes are included in four categories as follows:

  • Product attributes: These attributes describe the environment in which the program operates. The attributes in this category are: reliability requirements, database size, documentation matched to life cycle needs, required reusability and program complexity.
  • Platform attributes: These attributes refer to the limitations placed upon the development effort by the hardware and operating system being used to run the project. The attributes in this category are execution time constraints, main storage constraints, and platform volatility.
  • Personnel attributes: These attributes describe the skill levels of personnel assigned to the program. The attributes in this category include: analyst capability, applications experience, programmer capability, programming language experience, platform experience and personnel continuity.
  • Project attributes: These attributes refer to the constraints and conditions under which project development takes place. The attributes in this category are use of software development tools and multi-site development.

These 16 factors (or effort multipliers (EM)) are incorporated into the schedule and effort estimation formulas by multiplying them together. The numerical value of the ith adjustment factor is called EMi and their product is called the adjustment factor or EAF. The actual effort, PMtotal, is the product of the nominal effort times the EAF.


19D.3.2 COCOMO.II Processing

Using COCOMO.II, a nominal assessment of man-months based on size alone is assessed for the program being considered. Next, the ratings for all attributes are multiplied to compute the required man-months of effort for the project. The primary challenges in using COCOMO.II are determining size and assigning proper ratings to the sixteen attributes.


19D.3.3 COCOMO.II Outputs

The output of the COCOMO.II model is simply the level of effort in man-months for the project being estimated and a schedule in months. The effort output can easily be converted to a monetary value if the cost per man-month is known. The Phase Distribution is one of the outputs. Its function is to display a breakdown of the software effort and schedule into the phases of the development cycle. These phases are plans & requirements, design, programming and integration & test. The outputs of the model are very basic and not very flexible, so performance metrics will need to be created outside of this model.


19D.3.4 COCOMO.II Calibration

Calibration is essential to the proper use of software cost models. The user of the COCOMO.II may calibrate EAFs and the effort/schedule equations of the current project. (Detailed procedures for COCOMO calibration are discussed in the COCOMO Reference Manual.)


19D.3.5 COCOMO.II Life Cycle Considerations

There are no life cycle considerations included in the COCOMO.II model. The COCOMO Maintenance model (COCOMO-M), described in Chapter 30 of Boehm's book, can be used to estimate annual man-months required to support a software program. No mention of COCOMO-M is contained in the COCOMO.II literature. For the intermediate level COCOMO-M, all inputs from COCOMO 1.0 are used, except that different numerical values are assigned to two attributes: reliability and use of modern design practices. The annual support costs can be computed by multiplying the number of man-months by the average cost of a man-month.

 

19D.4 Cost Xpert

Marotz, Inc. developed a new model called Cost Xpert. The model is designed to provide software project cost estimates, to determine optimal delivery time, to break the project down into tasks by allocating time/effort and to perform quantitative risk/sensitivity analysis. It supports projects using object- oriented development, GUI development and formalized software reuse.

Product
Information:

Product :  Cost Xpert
Latest Version :  1.0
Last Release :  1997
First Release : 1997
 
Pricing Information :  as of 1Q1998
Single User Gov't :  .
Single User Commercial :  $995
Annual Maintenance  
Site Licence Gov't :
 25%
Site Licence GSA :  10 user, $7K
   
Vendor
Profile :

Company :  Marotz, Inc.
Address :  13518 Jamul Dr.
Jamul, CA 91935
800 Phone   Number :  800-477-6168
Phone Number :  619-669-3100
Fax Number :  619-669-6914
Internet :  www.marotz.com
Marketing  
Phone Number:
 
Fax Number :  
E-Mail :  Info@marotz.com
 
System Requirements :
Recommended :  
OS :  Win 95/NT
RAM :  4 MB
HD Storage :  4 MB
 
Minimum :  
OS :  Win 3.1
RAM :  4 MB
HD Storage :  4 MB
 

Product Description:

Cost Xpert is an automated tool that supports software costing, scheduling and risk assessment using SLOC, function points, GUI Metrics, top down and bottoms up methodologies. Cost Xpert consists of five main notebook tabs: Project, Volume, Environment, Constraints and Results. Outputs include an input data summary, software development cycle task report, risk report, labor report by labor category, maintenance report, and documentation deliverables report.

 

19D.4.1 Cost Xpert Inputs

The most important input parameter is size, which can be input as SLOC or function points, GUI Metrics, top down and bottoms up methodologies. All size inputs are converted to equivalent SLOC. When more than one size estimating methodology is used, the user can select which results to be averaged together to create the cost and schedule estimate. Cost Xpert has about thirty inputs which are included in the three other "notebooks tabs". A help screen for each input assists the user in selecting proper values. Each of the tabs is now summarized.

  • Project Tab: Inputs in this tab include primary and secondary programming language; project coefficients (commercial, military, embedded etc.); project standards (commercial, DoD-STD-2167A etc.) identifies documentation required; project type (commercial, embedded etc.) used to identify likely risk factors/defect rates; and project life cycle (client-server, standard-small etc.) used to relate activities to effort. These inputs can all be tailored.
  • Environment Tab: The user inputs the factors that influence the efficiency of the software development team such as analyst and programmer capability; applications, virtual machine and language experience; execution time and main storage constraints; virtual machine and requirements volatility; computer turn around time; database size; product complexity and reliability; required reuse and security; and use of modern programming practices and tools. Each of these can be in five levels rated from very low to very high with the definitions and numerical values included on the tab view.
  • Constraints Tab: The user can use the constraints tab to assign numerical values to eight constraint areas relevant to the project. These areas are time-cost trade-off, review time, requirements analysis, minimum review time, Beta testing, cushion, overlap and risk tolerance. The estimated percentages can be assigned by the user or left as a default value.

19D.4.2 Cost Xpert Processing

The model performs all computations based on "equivalent SLOC". The core costing equations involve a relatively simple equation of the form "Effort = a * volume b ." a and b are organization specific coefficients and can be adjusted by the user during calibration. The exact equations used in the model are not defined in the User’s Guide. The environmental factors used in Cost Xpert are very similar to those used in the REVIC model.


19D.4.3 Cost Xpert Outputs

The model’s primary outputs are development effort and schedule, including the optimal effort and schedule for the program(s) being analyzed. Cost Xpert provides staffing profiles by labor category/month. Cost Xpert also has a risk assessment with which the user can perform numerous size, effort, and schedule risk analyses, as well as identifying likely risks to the project and a sensitivity analysis. Maintenance and document deliverable reports summarize those areas. The schedule report is exportable to MS Project. There is a risk assessment tool available (Risk Xpert) that supports both risk assessment and contingency planning/tracking to mitigate risks in a formal, optimized manner.


19D.4.4 Cost Xpert Calibration

Cost Xpert contains a minimum amount of detail for calibrating the model. Basically, it is done by comparing actual historical data to model predicted results, then adjusting the coefficients a and b . Further calibration is made by tailoring the inputs in the Project and Constraints tabs.


19D.4.5 Cost Xpert Life Cycle Considerations

The model predicts both the maintenance effort for each year of the project and the projected maintenance adjusted for inflation. The quantity of software defect estimates and support calls are also estimated based on the original project input data.

 

19D.5 ForeSight Model

ForeSight is a parametric tool for forecasting time, effort, and cost of non-military software projects; the projects can be new developments, modifications, integration of off-the-shelf applications, maintenance programs, or software upgrades of any type. ForeSight is a tool for all project management tasks related to effort and time forecasting--budgeting, staffing plans, estimate to complete, performance measurement etc. This model has a one button OLE interface to MS Project.

ForeSight is a contemporary adaptation of the PRICE S model to address non-military software projects only. It was based upon the same database used to construct PRICE S. ForeSight, however, was tuned to the commercial and non-military government (AIS) records of the PRICE S database and has some different equations. In addition, several databases unique to ForeSight development were incorporated, among them: the National Software Data Information Repository (NSDIR), the ISBSG (International Software Benchmarking Standards Group) database, and a proprietary database of Object Oriented (OO) applications.

Product
Information:

Product :  ForeSight
Latest Version :  1.0
Last Release :  1997
First Release : 1997
 
Pricing Information :  as of 1Q1998
Single User Gov't :  $975
Single User Commercial :  
Annual Maintenance  
Site Licence Gov't :
 20%/yr
Site Licence GSA :  
Evaluation/Demo :  both available free
Vendor
Profile :

Company :  Lockheed Martin PRICE Systems
Address :  700 E. Gate Dr. Suite 200
Mount Laurel, NJ 08054
800 Phone   Number :  800-437-7423
Phone Number :  609-866-6789
Fax Number :  609-866-6591
Internet :  www.pricesystems.com
Marketing  
Phone Number :
 Jennifer Conale
 609-866-6550
Fax Number :  609-866-6789
E-Mail :  
 
System Requirements :
Recommended :  
OS :  Win 95/NT
RAM :  8 MB
HD Storage :  10 MB
 
Minimum :  
OS :  Win 3.1
RAM :  8 MB
HD Storage :  10 MB
 

Product Description:

ForeSight is a software tool for forecasting time, effort, and cost of non-military software projects; the projects can be new developments, modifications, integration of off-the-shelf applications, maintenance programs, or software upgrades. Project sizing metrics include: SLOC, function points and predictive object points (POPs). ForeSight produces estimates that include: size, schedules, staffing, labor effort, cost, and quality. This model has a one-button interface to MS Project for file creation, importing and updating. It tracks milestones and benchmarks the project against past history. ForeSight supports waterfall, spiral, evolutionary and incremental development projects. It allows Risk Analysis and will generate an Estimate To Complete (ETC).

 

19D.5.1 ForeSight Inputs

One of the primary inputs for the ForeSight model is program size. Size is usually expressed in SLOC that can be input directly by the user or computed using a sizing model included in the ForeSight package. The Sizer model estimates size by SLOC, by using predictive object points (POPs) or by converting a function point count to SLOC. Other key inputs include the following:

  • Application: The seven basic functional categories of the inherent software instruction difficulty are: mathematical, string manipulation, data storage and retrieval, on-line, real-time, interactive, and operating system. The result of this classification procedure is summarized in a single value called Application.
  • Productivity factor: A parameter that can be calibrated which relates the software program to the organizational capabilities, experience, and individual talents of the team that will perform the software development. This factor should be based upon historical data.
  • Complexity: Complexity describes the effects of additional factors affecting the development environment that are directly related to schedule or time, such as a development tools, personnel skills, and potential requirements growth.
  • Platform: Platform relates the cost of software development to the requirements of the environment in which the software must operate. It is a measure of the transportability, reliability, testing, and documentation required by the contract.
  • Utilization: The proportion of the processor capability used, relative to its available speed and memory capacity, is represented by the variable called Utilization.
  • Level of New Design and Code: Percentage of the end product that will require new design and/or coding effort. This input considers the degree of modification or reuse for the software.

There are other inputs for internal and external integration effort, schedule start and end dates, programming language used, and economic factors.

 

19D.5.2 ForeSight Processing

ForeSight uses a common core equation that relates schedule and effort to software product size and software production capability. The form of the core equation is:

M = A * SizeB;

where M is either effort or time and A and B are functions of software production capability and/or product type. ForeSight adjusts the size measure (in units of lines of code, function points, or object points) for software functionality and amount of reuse. Other areas around the core equation that influence project performance are treated by the forecasting engine. The exact equations are proprietary and are not included in the user’s manual.


19D.5.2 ForeSight Outputs

Results are provided in a number of fix formatted forms, including text and graphic reports, screens, Microsoft Project inputs, and a ForeSight project file in Microsoft Access format. ForeSight produces estimates that include: size, schedules, staffing, labor effort, cost, and quality.


19D.5.3 ForeSight Calibration

The Help menu provides no indication of how to calibrate this model other than by changing the individual attribute ratings or through updating "historical elements". Historical elements are software systems, subsystems or elements that have been completed and for which cost, schedule or effort information is available. A historical element may be integrated into a new system/subsystem as COTS or as an analogy for forecasting purposes. "In either case ForeSight will calibrate the technical and cost information to establish a unique performance measure for each historical element."

19D.5.4 ForeSight Life Cycle Consideration

The ForeSight Life Cycle Model, included in the ForeSight package, is a detailed model which computes software operation and support costs. The Profile menu generates a graphical display that is used to control the distribution of effort expended during the support period. The total effort is a combination of four distributions: Defect Detection, Defect Repair, Enhancement, and Adaptation. All four may be viewed on a single Profile screen at once. Associated with every element of an ForeSight Estimation Breakdown Structure is a table of data that enables tailoring of the type listed above. Supplemental data controls the level of tasks and resources estimated for elements.

 

19D.6 KnowledgePLAN Model (Replaces CHECKPOINT)

The KnowledgePLAN model algorithms are derived from over 6,700 projects. The model is applicable to all types of programs and has its knowledge base updated annually.

Product
Information:

Product :  KnowledgePlan
Latest Version :  2.0
Last Release :  1998
First Release : 1997
Free Demo Available : Slide show & 30 day loan of SW
 
Pricing Information :  as of 1Q1998
Single User Gov't :  
Single User :  $5,900
Annual Maintenance  
Site Licence Gov't :
 $500/copy
Site Licence GSA :  25 users/$99K
Vendor
Profile :

Company :  Software Productivity Research, Inc.
Address :  1 New England Executive Pk Burlington, MA 01803
800 Phone   Number :  
Phone Number :   781-273-0140
Fax Number :   781-273-5176
Internet :  www.spr.com
Marketing  
Phone Number:
 William Walsh
 301-657-6266
Fax Number :  301-942-4361
E-Mail :  billw@spr.com
 
System Requirements :
Recommended :  
OS :  Win 95/NT
RAM :  
HD Storage :  
 
Minimum :  
OS :  Win 95/NT
RAM :  
HD Storage :  
 

Product Description:

KnowledgePLAN is a tool that guides the user through the development of a software project estimate and plan using a large knowledge base that is updated annually. KnowledgePLAN combines knowledge-based estimation, "what if" analysis and scheduling functionality within one tool. Work Breakdown Structures can be integrated into a Project (MPX compatible) management tool and allows the PM tool to vary schedules, task assignments and resource allocations. Allows project sizing by SLOC, Function Point and Analogy. KnowledgePLAN creates and refines detailed project plans for a bi-directional interface with Microsoft Project or other enterprise project management system. The tool will track milestones, schedules, resources, actual work effort and defects found.

 

19D.6.1 KnowledgePLAN Inputs

Like the other models discussed, the primary input for KnowledgePLAN is size. However, KnowledgePLAN is different than most other models in that it works primarily in sizing by analogy or with function points instead of SLOC. The model will accept SLOC, but converts SLOC to function points using conversion factors in the model. In addition to size, the model requires certain inputs for a quick (or basic) estimate, and additional parameters for a detailed estimate. The inputs for each option are now summarized.

  • Quick Estimate Inputs: The following inputs are required for both quick and detailed estimates:
    • Project description information.
    • Project nature: Whether it is a new program, an enhancement, a conversion, reengineering, maintenance etc.
    • Project scope: Whether the program is a stand-alone program, program within a system, a disposable prototype etc.
    • Project Topology: Whether the project is being implemented as a stand-alone platform, local or wide area network, a client server, or a distributed network.
    • Project class: Who is the customer/end-user of the software project such as contract, commercial, government, IT/MIS and is it a single site, multi-site or network.
    • Project type: What kind of software is the deliverable; non-procedural application or system with subtypes such as off-line processing, interactive GUI etc.
    • Software Products: For sizing by analogy, which system/application is similar in size (small, medium, large) with similar applications such as business, generic, billing etc.
  • Detailed Estimate Inputs: KnowledgePLAN has over 100 factors, or project attributes, that can be used to fine-tune the model’s estimates. These are categorized into personnel, technology, process, environmental, product and maintenance which are briefly described. Each factor is rated essentially from "very low" to "very high" in five possible steps with "3" being average or typical. Lower ratings generally result in increased effort and schedule. If the user has no information for a factor, he or she can leave it as "not answered". The model keeps track of how many attributes have been answered (i.e., 25%) and this is included in the tool’s risk assessment.
    • Personnel attributes: These attributes are divided into four subsets: project management, development experience, user personnel experience, and quality personnel experience. Examples of project management attributes are organization structure, team morale, and project management experience.
    • Technology attributes: These attributes address the impact of Life Cycle software tools and hardware platforms on the development environment. Examples of attributes are design automation environment, project documentation library, development hardware stability, and terminal response time.
    • Process attributes: These attributes address the life cycle methodology used on the project that affects development and quality assurance. Examples are analysis, life cycle, quality, testing, and documentation..
    • Environment attributes: These attributes address the importance of organization and office factors.
    • Product factors: The Products Attributes dialog box allows the user to characterize any constraints that may affect the ability to fulfill user requirements such as security or performance. The Products Attributes dialog box has two tabs: Requirements and Architecture.

 

19D.6.2 KnowledgePLAN Processing

The specific algorithms used in this model are not defined in the KnowledgePLAN User’s Guide. The Guide does state that the project estimates are regulated by: algorithms from the project’s assigned knowledge base, by task category inclusion rules, by adjustment rules from the estimation engine, by task/category properties and by task estimation flags. The starting point is the knowledge base assigned to the project by the model based primarily on the answers to the quick estimate inputs. Knowledge bases contain the rules and estimates for the base estimate. The algorithms are tuned to the default settings of the project classification variables and can be viewed/modified by the user.


19D.6.3 KnowledgePLAN Output

The model provides the user with several different outputs. Like most other models, KnowledgePLAN provides an estimate of schedule, staffing, and effort in dollars or person-months in table or Gantt chart views. KnowledgePLAN provides a risk analysis of various input options selected; along with estimates for size, defects, test and reliability, maintenance, documentation, and various productivity parameters.


19D.6.4 KnowledgePLAN Calibration

The user can calibrate KnowledgePLAN by overriding the model’s default values for inputs or quality and productivity rates. This can either be done directly or, more commonly, by creating templates based on historical data. Templates include any values for which the user wants to override the model’s defaults, and are requested as part of a basic estimate. Templates pass along the domain and knowledge base that the new project will use. The KnowledgePLAN User's Guide provides information about template creation.


19D.6.5 KnowledgePLAN Life Cycle Considerations

KnowledgePLAN includes more than fifteen "maintenance" inputs in the "detailed estimate inputs". Examples are maintenance personnel experience, amount of replacement and restructure planning, number of sites, and customer support. The user can also specify the amount of code to be added or deleted annually. The model estimates the annual cost of maintenance and enhancements for a time period specified by the user, up to 20 years.

 

19D.7 PRICE-S Model

Martin Marietta Price Systems (initially RCA Price, then GE Price) originally developed this model as one of a family of models for hardware and software cost estimation. Developed in 1977, PRICE-S was the first commercially available detailed parametric software cost model to be extensively marketed and used. The PRICE-S model is proprietary; not all equations are published, although the PRICE-S Reference Manual describes the basic parametric relationships. The model is applicable to all types of software projects. It considers all eight phases of the software development cycle, plus system concept and operational testing phases.

Product
Information:

Product :  PRICE-S
Latest Version :  3.0
Last Release :  1997
First Release : 1977
 
Pricing Information :  as of 1Q1998
Single User Gov't :  &2,625
Single User Commercial :  $15,000
Annual Maintenance  
Site Licence Gov't :
 Same, a lease
&11,813
Site Licence GSA :  &25,000
   
Vendor
Profile :

Company :  Lockheed Martin PRICE Syst.
Address :  700 E. Gate Dr., Suite 200 Mount Laurel, NJ 08054
800 Phone   Number :  800-437-7423
Phone Number :  609-866-6789
Fax Number :  609-866-6591
Internet :  www.pricesystems.com
Marketing  
Phone Number:
 Jennifer Conale
609-866-6550
Fax Number :  609-866-6789
E-Mail :  
 
System Requirements :
Recommended :  
OS :  Unix/Motif 0r Win 95/NT
RAM :  
HD Storage :  
 
Minimum :  
OS :  Unix/Motif or Win95/NT
RAM :  
HD Storage :  
 

Product Description:

The PRICE Software Model Suite (PRICE-S) is a parametric cost and scheduling model that consists of three models to estimate costs and schedules for the development, operation and support of computer software. The PRICE-S Acquisition Model is an application of PRICE empirical modeling methods to the problem of forecasting software cost and schedule. The PRICE-S Sizing Model utilizes three analytical estimating tools to estimate the size of the software being developed. The first tool is used to estimate SLOC based on inputs for qualitative descriptors, quantitative descriptors and sizing factors. The second tool is a Function Point sizer that converts the function point count to SLOC. The third tool is an Object Metric, Predictive Object Points (POPs) for sizing object oriented development projects. The PRICE-S Life Cycle Cost Model is used to develop early costing of the maintenance and support phase for a software project. The Acquisition Model provides the development cost and design parameters to the Life Cycle Cost Model, with the user inputting the support activity and support period. Support cost estimates include Corrective, Enhancement and Growth categories. ForeSight is a new, less expensive software cost model that is compatible with PRICE-S except for military/mission critical software development projects.

 

19D.7.1 PRICE-S Inputs

One of the primary inputs for the PRICE-S model is program size. Size is usually expressed in SLOC that can be input directly by the user or computed using a sizing model included in the PRICE-S package. The Sizer model estimates size by SLOC, by using predictive object points (POPs) or by converting a function point count to SLOC. Other key inputs include the following:

  • Application. The seven basic functional categories of the inherent software instruction difficulty are: mathematical, string manipulation, data storage and retrieval, on-line, real-time, interactive, and operating system. The result of this classification procedure is summarized in a single value called Application.
  • Productivity factor. A calibratible parameter that relates the software program to the organizational capabilities, experience, and individual talents of the team that will perform the software development. This factor should be based upon historical data.
  • Complexity. Complexity describes the effects of additional factors affecting the development environment that are directly related to schedule or time, such as a development tools, personnel skills, and potential requirements growth.
  • Platform. Platform relates the cost of software development to the requirements of the environment in which the software must operate. It is a measure of the transportability, reliability, testing, and documentation required by the contract.
  • Utilization. The proportion of the processor capability used, relative to its available speed and memory capacity, is represented by the variable called Utilization.
  • Level of New Design and Code. Percentage of the end product that will require new design and/or coding effort. This input considers the degree of modification or reuse for the software.

There are other inputs for internal and external integration effort, schedule start and end dates, programming language used, and economic factors.


19D.7.2 PRICE-S Processing

Parametric relationships which combine management perception and historical results are used to relate new software projects to costs and schedules that are typical of the work to be accomplished. Although much material concerning the PRICE-S algorithms has been published, some details concerning the algorithms are proprietary and are not available to the user. It is known that PRICE-S computes a "weight" of software based on the product of instructions and application inputs, which are comparable to hardware volume and density respectively. The productivity factor and complexity inputs are very sensitive parameters that affect effort and schedule respectively. Platform is known to be an exponential input; hence, it can be very sensitive. Other input parameters are used to adjust the "weight" of software for a specific program. A 1988 paper published by PRICE Systems, entitled The Central Equations of the PRICE Software Cost Model, describes many internal algorithms in detail, although some algorithms may have been modified since that time.


19D.7.3 PRICE-S Outputs

PRICE-S computes an estimate in person-months which may be converted to cost in dollars or other currency units. The model estimates schedule by milestones, with a staffing profile. In addition to cost and schedule estimates, PRICE-S provides automatic sensitivity and schedule effect analyses, together with monthly cost and progress summaries to support budgeting, risk analysis, and project tracking.


19D.7.4 PRICE-S Calibration

Organizational performance history serves as input to a calibration mode that fits the model to user specific environments that characterize productivity within a line of business. The PRICE-S model can be run in the ECIRP (PRICE backwards) mode to calibrate selected parameters. The most common calibration is that of the productivity factor, which, according to the PRICE-S Reference Manual, tends to remain constant for a given organization. It is also possible to calibrate platform, application, and selected internal parameters.


19D.7.5 PRICE-S Life Cycle Consideration

The PRICE-S Life Cycle Model, included in the PRICE-S package, is a detailed model which computes software operation and support costs. The Life Cycle Model is designed to be used in conjunction with the Acquisition Model that provides the development costs and design parameters to the Life Cycle Model. The primary inputs are support descriptors such as number of installations, expected growth, and quality and enhancement levels; three calibratible support productivity factors; and separate size and expected growth. The Life Cycle Model outputs cost in three support categories: maintenance, enhancements, modifications and growth. It also outputs a predicted number of delivered defects in the program to be supported.

 

19D.8 RESERVED

 

19D.9 SoftCost-Object-Oriented (OO) Model

The SoftCost Object-Oriented (SoftCost-OO) model, developed and marketed by Resources Calculations, Inc. (RCI), evolved from the SoftCost-Ada model developed by Don Reifer which was, in turn, based on the published work of Dr. Robert Tausworthe of the Jet Propulsion Laboratory. In addition to Ada, SoftCost-OO has calibration files for the C++ language and generic object-oriented paradigms. The model is markedly different from the SoftCost-R model, which more closely paralleled COCOMO. The SoftCost-OO model has a database of over 240 Ada, 50 C++, and 120 object-oriented projects. The model is one of a family of models marketed by RCI, which includes SoftCost-R (a software cost estimation tool for data processing, scientific and real-time applications), Asset-R (a function point tool to estimate software size) and SSM (an analogy software sizing model).

SoftCost-OO includes a work breakdown structure (WBS) file editor which allows use of preloaded WBS files, modification of pre-loaded files, or development of a new WBS from scratch. The WBS file editor also checks for correct allocation of duration and effort percentages for each WBS item, and for an allowable set of predecessor activities in a network.

SoftCost-OO is applicable to all types of object-oriented programs and considers all phases of the software development cycle. The model’s equations are published in the SoftCost-OO User's Guide; however, the computer program used to solve these equations and related analyses is proprietary to RCI.

 

Product
Information:

Product :  SoftCost-OO
Latest Version :  3.2
Last Release :  1996
First Release : 1989
 
Pricing Information :  as of 1Q1998
Single User Gov't :  
Single User Commercial :  $8,000
Annual Maintenance  
Site Licence Gov't :
 25% of 1st year
Site Licence GSA :  $11,000
   
Vendor
Profile :

Company :  Resource Calculations, Inc.
Address :  7853 E. Arapahoe Ct, Ste. 2500 Englewood, CO 80112-1361
800 Phone   Number :  800-477-6168
Phone Number :  303-267-0379
Fax Number :  303-674-4869
Internet :  www.rcinc.com
Marketing  
Phone Number:
 Tony Collins
011-440-175-366-2572
Fax Number :  011-440-175-366-3398
E-Mail :  tcollins@dial.pipex.com
 
System Requirements :
Recommended :  
OS :  DOS
RAM :  
HD Storage :  
 
Minimum :  
OS :  DOS
RAM :  
HD Storage :  
 

Product Description:

SoftCost-OO is an object oriented and reuse software estimation tool. This tool is a PC-based parametric cost model consisting of a screen editor, estimation model, and outputs. Phases covered include software requirements through software testing, including hardware and software integration testing. There are three databases, Ada, C++, and Object-Oriented. SoftCost-OO contains five submodels, sizing, estimating, risk, allocation (effort/labor categories), and life cycle (maintenance). The sizing submodel calculates equivalent source lines of code for projects developed in Ada, C++, or a mix of languages. Function points can also be used. The estimating submodel develops an effort and schedule estimate for a project using parametric and size information provided by the user. The risk submodel allows the user to play "what-if" gaming scenarios by varying effort, schedule, and size. The allocation submodel takes the effort and schedule from the risk submodel and allocates it to the tasks that comprise the Work Breakdown Structure (WBS) for the project. This submodel also allocates effort by labor category across life cycle phases. The life cycle submodel calculates maintenance effort and cost for the system based on the effort selected in the risk submodel. This submodel contains a load-balancing feature that allows a user to assess the impact of fixed workforce on maintenance. Three other models marketed by RCI are required for non-object oriented and non-reuse software development estimates: SoftCost-R is used for estimating real time software in the traditional development mode, SSM is an analogy software sizing tool and Asset-R is a function point sizing tool..

 

19D.9.1 SoftCost-OO Inputs

A key input of SoftCost-OO is size, which can be input either as SLOC or function points. If SLOC is used, the minimum, most likely, and maximum SLOC are input for new, reused, and modified components. In addition to size, SOFTCOST-OO has twenty-eight other inputs, or attributes, in four categories. Some of the categories and inputs are similar to those used in COCOMO and REVIC. Most of these inputs require a rating ranging from "1" to "6" with "3" being "nominal" or "no-effect"; however, a few inputs such as number of organizations allow other numerical values. A help screen for each input assists the user in selecting proper values. The inputs in each category are as follows:

  • Product attributes: The attributes in this category are application type (avionics, command and control, simulation etc.), number of organizations, system architecture (centralized, distributed, multiple processors etc.), organizational interface complexity, staff and computer resources availability, and security requirements.
  • Process attributes: The attributes in this category include use of modern development methods, use of tools, tool and environment stability, degree of standardization, scope of support, and use of peer reviews.
  • Product attributes: The attributes in this category include a technology usage factor, product complexity, requirements volatility, degrees of real-time and optimization, reuse costs and benefits, and database size.
  • Personnel attributes: The attributes in this category include analyst capability; application, language, methodology, and environment experience; team capability, and number of OO projects completed.

SoftCost-OO also has a "Quick Run" capability where, if a similar project has previously been estimated, it can be recalled and only size is required as an input. Once size has been entered, the project can be analyzed like any other project.


19D.9.2 SoftCost-OO Processing

SoftCost-OO is one of the few models for which the mathematical algorithms are completely described in the Reference Manual. The SoftCost-OO equations are:

  • PM = A0 * Al * A2 * A3 * A4 * (SLOC)C
  • M = B0 * B1 * B2 * (PM)D

PM is the effort in person-months; M is schedule in months; A0 and B0 are calibration constants which depend on the application type input; Al is an architectural constant which depends on the system architecture input; A4 and B2 are scaling factors which vary with size, degree of reuse, and number of OO projects completed; A3 is the product of all inputs not used for other equation factors; and C and D are exponents which vary with number of OO projects completed. The SoftCost-Ada User's Manual illustrates values assigned to ratings for all model inputs to help the user understand the effect of each on effort and schedule. The model also has several other equations, as described in the SoftCost-OO Reference Manual.


19D.9.3 SoftCost-OO Outputs

SoftCost-OO computes a nominal estimate in person-months of effort and schedule for each project, along with a productivity value and an estimate of average number of personnel required. The model then allows for investigation of the sensitivity of each of the input variables and exploration of alternatives to the nominal estimate or changes in schedule, effort, or confidence level. The model also provides schedule outputs for Gantt and PERT charts.


19D.9.4 SoftCost-OO Calibration

The model contains three calibration files; an Ada file, a C++ file, and a generic OO file. The user must select one of these as an input for a model estimate. The user can change these files to reflect his or her environment, but this must be done carefully. RCI plans to develop an on-line calibration capability to work with SoftCost-OO as a separate product.


19D.9.5 SoftCost-OO Life Cycle Considerations

SoftCost-OO contains a separate life cycle model for support costs. In addition to SoftCost-OO developmental inputs, life cycle inputs include annual change traffic, length of the support period, a sustaining engineering factor, and economic factors. There is also a provision for entering and reporting on various staff levels, fixed support costs, and fixed work force levels.


19D.10 RESERVED

 

19D.11 RESERVED

 

19D.12 Software Life Cycle Model (SLIM)

This model was developed by Quantitative Software Management (QSM) Corporation, and is based on the work of Lawrence Putnam. SLIM is proprietary; however, much of the theory behind the model is published in previous works by Putnam, and his book Measures of Excellence. A key feature of SLIM is the use of the Rayleigh-Norden curve, illustrated in Figure 19D-1, to allocate resources during a project. The time integral of the Rayleigh-Norden curve results in the "software equation", which is as follows: (Note: TD is development time.)

Size = (Productivity Factor) * (Effort)1/3 * TD4/3

This software equation is fundamental to SLIM and the entire QSM approach.

SLIM is applicable to all types of projects, although it was originally developed for large projects. It computes costs for all software development phases. The "main build" phase initially computed by SLIM includes the detailed design through system test phases, but the model has the option to include the "requirements and design" phase, including software requirements and preliminary design, and a "feasibility study" phase to encompass system requirements and design.

Product
Information:

Product :  SLIM
Latest Version :  4.0
Last Release :  1997
First Release : 1978
 
Pricing Information :  as of 1Q1998
Single User Gov't :  
Single User :  $16,500
Annual Maintenance  
Site Licence Gov't :
 $35,000
Site Licence GSA :  none
   Demo free
Vendor
Profile :

Company :  Quantitative Software Management, Inc.
Address :  2000 Corporate Ridge, Ste.900 Mclean, VA 22102
800 Phone :  800-424-6755
Phone Number :  703-790-0055
Fax Number :  703-749-3795
Internet :  www.qsm.com
Marketing  
Phone Number:
 Joe Quattrone
703-790-0055
Fax Number :  703-749-3795
E-Mail :  Info@marotz.com
 
System Requirements :
Recommended :  
OS :  Win 95/NT
RAM :  
HD Storage :  
 
Minimum :  
OS :  Win 3.1
RAM :  
HD Storage :  
 

Product Description:

SLIM is a software cost, schedule, risk and reliability estimation tool for planning, control and risk analysis of developing software systems. The SLIM model is a combination of a program evaluation and review technique (PERT) algorithm, linear programming, Monte Carlo simulation and sensitivity profiling techniques. It uses expert system methodology and can be customized to a specific organization through the use of historic data. Associated software tools that can be procured from QSM to augment the capabilities of SLIM are SLIM Control (controls Software projects by employing advanced statistical process control techniques for monthly "health checks" using the SEI recommended "core metrics") and size planner.

 

19D.12.1 SLIM Input

The significant user inputs to the model are as follows:

  • vSize: Size is one of the two key user inputs to SLIM. Size is usually input as SLOC. SLIM does allow the user to input function points which are converted to SLOC using a ratio, or "gearing factor", that may be specified by the user. The user may also input the programming language used and, as in REVIC, inputs the least, most likely, and greatest size for each program to be analyzed.
  • Figure 19D-1. The Rayleigh-Norden Curve
    image

     

  • Productivity Index (PI): The other key input, PI, is a calibratible parameter that can either be input directly by the user or is computed by the model based on a multitude of additional inputs. The PI is a number that can vary from 1 to 40; higher values result in lower cost and schedule. It is also a very sensitive parameter; a change in one integer value can result in a twenty-five to thirty percent change in cost. SLIM uses fractions of PIs for fine-tuning. The inputs for computing or adjusting PI are as follows:
    • Application type: This is the key determinant of PI when the user asks the model to compute it. Some of the nine application types are micro-code, avionics, command and control, telecommunications, and business. If a program is of multiple application types, the user can specify percentages of each type.
    • Tooling and methods: This set of inputs includes factors such as hardware familiarity, use of various types of automated tools, and robustness and adherence to a development standard. For this set of additional inputs and for the next two sets, the user rates each factor from 1 to 10, with 5 usually being average.
    • Technical difficulty: This set of inputs includes the amount of new algorithms and logic, platform stability, and various complexity factors.
    • Personnel profile: This set of inputs includes management effectiveness, skill level, experience, degree of communication, and morale factors such as motivation and cohesiveness.
  • Other Inputs: The user can specify other factors that affect cost and schedule, including the following:
    • Phase adjustments: The user can specify the staffing profiles to be used during each phase of development, and can customize development phases.
    • Importance: The user can state the relative importance of cost, schedule, and quality for the program being estimated.
    • Constraints: The user can specify maximum cost or effort, maximum schedule, minimum and maximum staffing levels, and minimum mean-time-to-defect (MTTD) for the final product. The user can also specify the desired probability of meeting each constraint. The model will attempt to meet all constraints or determine an "optimal" solution that has the greatest chance of meeting all specified constraints.

19D.12.2 SLIM Processing

Although the actual equations for SLIM are proprietary, it is known that SLIM relies heavily on the Rayleigh-Norden curve and its inherent assumptions. The original curve assumed that the maximum manpower was allocated at TD, the development time, and that there was a 60:40 ratio of support costs to development costs. SLIM adjusts this curve as required to meet project-peculiar inputs, especially for smaller programs, and user-specified constraints.

The shape of the curve is determined by three key parameters within the model: size, PI, and the manpower buildup index (MBI). The MBI is a number that varies between -3 and 10. It reflects the rate at which personnel are added to a project. Higher ratings indicate faster buildup rates, and result in shorter schedules but higher costs. The Rayleigh curve, as shown in Figure 19D-1, is shifted upward and to the left as MBI increases. Lower size or higher PI values result in both lower costs and shorter schedules; the Rayleigh curve is shifted downward and to the left. Although MBI is a significant parameter, the user cannot input MBI directly. Instead, it is determined primarily by the user-specified constraints.


19D.12.3 SLIM Outputs

The primary output of SLIM is an optimal solution to meet the constraints specified by the user. In the absence of constraints, the model will compute a "minimum time" solution for which the user can reduce cost by relaxing the schedule. The "staffing view" of the model shows a staffing profile along with the model’s computed cost, effort, schedule, peak staffing required, and MTTD. The staffing view also shows the probabilities of meeting each of the specified constraints. The model also has a "ballpark view" and a "consistency view" where time, effort, MTTD, average staffing, and PI are compared with similar projects in the SLIM database. SLIM has numerous report options for risk analysis, defect profiles, and other areas of interest to the user. The model has a very impressive feature that allows the user to vary a certain parameter on a chart with the mouse and see the effect on the other parameters, including risk.


19D.12.4 SLIM Calibration

The PI for SLIM can (and should) be calibrated using historical data. The model has on-line calibration capability for the user to calibrate a PI from historical projects. All that is required are program size, development time in months, person man-months of effort, and, if available, MTTD for each historical project. PI is determined to the nearest tenth (e.g., 8.3) in calibration.


19D.12.5 SLIM Life Cycle Considerations

SLIM has an optional "maintenance" phase output which uses SLIM development inputs to compute man-months, schedule, and staffing profiles. The user can not specify any support-peculiar inputs except the shape of the curve (Rayleigh, stair step, exponential, straight line, or level load). The model computes all support outputs based on extrapolation of the staffing curve for the time after software development is completed using the user-specified curve shape, and the time to achieve either 99% or 99.9% reliability as specified by the user.

 

19D.13 System Evaluation and Estimation of Resources Software Estimating Model (SEER-SEM)

One of a family of models marketed by Galorath Associates, SEER-SEM is based on the work of Randall Jensen in his paper "An Improved Macro-Level Software Development Resource Estimation Model." It uses the Rayleigh-Norden curve (described in SLIM) to allocate resources during a software project and to estimate cost and schedule. SEER-SEM is applicable to all types of programs, and is applicable to all phases of the software development cycle except system requirements and design. The model is proprietary.

Product
Information:

Product :  SEER-SEM
Latest Version :  4.5
Last Release :  1996
First Release :  
 
Pricing Information :  as of 1Q1998
Single User Gov't :  
Single User Commercial :  $15,000
Annual Maintenance  
Site Licence Gov't :
 
Site Licence GSA :  
 Evaluation/Demo  Demo free
Vendor
Profile :

Company :  Galorath Associates Inc.
Address :  100 N. Sepulveda Blvd, Ste. 1801 El Segundo, CA 90245
800 Phone   Number :  
Phone Number :  310-414-3222
Fax Number :  310-414-3220
Internet :  www.gaseer.com
Marketing  
Phone Number:
 H. Kim Lett
703-893-5733
Fax Number :  
E-Mail :  klett@gaseer.com
 
System Requirements :
Recommended :  
OS :  Win 95/NT; Mac Sys 7
RAM :  
HD Storage :  
 
Minimum :  
OS :  Win 3.1, Mac Sys 6
RAM :  
HD Storage :  
 

Product Description:

SEER-SEM is a software development and maintenance analysis CASE tool that estimates cost, effort, schedule, reliability and risk. The primary driver of the program is software size along with descriptions of rework required for pre-existing software and software designed for reuse. A separately purchased tool SEER-SSM can be used to improve software sizing estimates by using historical information in concert with relative comparison methods. SEER-SSM produces size estimates in terms of SLOC or functions. SEER-SEM uses knowledge bases to describe development scenarios including staff loading, dynamic reallocation of resources and labor mix for methodologies.

 

19D.13.1 SEER-SEM INPUTS

The inputs for this model can be divided into three categories: size, knowledge base inputs, and input parameters. Each category of inputs is now summarized.

  • Size: The user can input size using one of three measures: SLOC, traditional function points, or Galorath function points. SEER converts function points to SLOC before generating an estimate. All code is further categorized as "new", "preexists designed for reuse", or "preexists not designed for reuse". For pre-existing software, the user must specify the amount of code deleted, and the percentages of redesign, recoding, and retest required to modify or reuse the program for the current application. The model uses PERT; therefore, the user must input a "minimum", "most likely", and "maximum" value for all size inputs.
  • Knowledge Base Inputs: SEER-SEM contains a myriad of knowledge bases for different types of software. The knowledge bases assign default values to the input parameters described below based on the type of software selected. The user must specify the following six inputs to specify the knowledge base to be used by the model.
    • Platform: The operating environment of the program, such as avionics, ground-based, or manned space.
    • Application: The overall function of the software, such as radar, command and control, mission planning, or testing.
    • Acquisition method: The method in which the software is to be acquired, such as development, modification, or re-engineering.
    • Development method: The method used for development, such as waterfall development, evolutionary development, object oriented, prototype or incremental development.
    • Development Standard: The Standard used in development and degree of tailoring to describe documentation, quality, and test standards such as ISO, 2167A etc.
    • Class: This input is primarily for user-defined knowledge bases.
  • Input Parameters: SEER-SEM contains more than thirty input parameters with which the user can refine an estimate. As in COCOMO, the values normally range from "very low" to "very high". As in size, the user must specify a least, greatest, and most likely value for each input. A user can use the default values generated by the chosen knowledge base if no further information is available. The primary categories of input parameters and a brief description of each follows.
    • Complexity: Assesses the difficulty of the software.
    • Personnel capability and experience: The parameters in this category, similar to the "personnel attributes" of COCOMO, measure the caliber of personnel used on the project.
    • Development support environment: Measures the usage of modern practices and tools, availability of resources, and frequency of changes to the environment.
    • Product development requirements: Measures the stringency of quality, documentation, and test requirements, as well as the frequency of changes in requirements.
    • Reusability requirements: Measures the degree of reuse needed for future programs and the percentage of software affected by reusability requirements.
    • Development environment complexity: Measures the complexity of the language, application, and host development system used.
    • Target environment: Measures special constraints for the target environment such as memory, special displays, and security (which is the most sensitive input parameter in the model).
    • Other input parameters: There are also special inputs for schedule constraints, labor rates, integration requirements, personnel costs, metrics, and software support.

19D.13.2 SEER-SEM Processing

Although the model is proprietary, some of the equations of the SEERSEM model can be found in the SEER-SEM User's Manual and in articles published by Randall Jensen. SEER-SEM computes an effective technology rating (ETR) based on several input parameters. The model apparently uses the Rayleigh-Norden curve to compute the required effort. SEER-SEM also contains windows where the user can compare two projects, examine several risk analysis graphs, and see what effect a changed input parameter will have on the overall development cost and schedule.


19D.13.3 SEER-SEM Outputs

SEER-SEM allows the user to select a variety of output reports and charts. A "quick estimate" provides a snapshot of size effort, schedule, and ETR anytime during the estimating process. Optional outputs include a basic estimate, staffing by month, cost by month, cost by activity, person-months by activity, and software metrics including delivered defects.


19D.13.4 SEER-SEM Calibration

The model may be calibrated by computing an ETR from past programs, by computing cost and schedule multipliers from past programs, or both. The cost and schedule multipliers are linear multipliers with a nominal value of one (which would have no effect). The ETR, multipliers, or both can be incorporated into a custom knowledge base for future programs of the type calibrated. One limitation of the ETR is that the user cannot input it directly as a model input; it must be adjusted by changing other input parameters. The cost and schedule multipliers, however, can be input directly. In addition to ETRs, knowledge bases and parameter setting may be calibrated.


19D.13.5 SEER-SEM Life Cycle Considerations

SEER-SEM contains an optional "maintenance" output report which provides annual costs and person-months for each year of a user-specified schedule in four categories: corrective, adaptive, perfective, and enhancements. The user can specify the support time period desired along with several other support-unique parameters. These include annual change rate, number of support sites, expected program growth, and differences between development and support personnel and environment, and degree of rigor (level of support).


19D.15 Other Models

The models discussed above do not encompass the entire arena of software parametric cost models; there are numerous other models available. For example, there are several variants of COCOMO available in addition to REVIC. Several companies have software cost models that are used solely within the company which developed the model. New models developed for more general use do appear occasionally. The models contained in this appendix were chosen because they were the ones included in most other Parametric Software Cost Estimating references (therefore are assumed to be the most widely used), they were free, or were new/inexpensive with a new approach. A list of other potential estimating tools is included in Appendix C of the Software Technology Support Center’s (STSC) Report on Project Management and Software Cost Estimation Technologies, dated April 1995, available for Internet download at www.stsc.hill.af.mil.