Maintenance Cost Estimation



Similar documents
Fundamentals of Measurements

Measuring the Effectiveness of a Test

Gleim / Flesher CMA Review 15th Edition, 1st Printing Part 1 Updates

Apache Web Server Execution Tracing Using Third Eye

A Process for ATLAS Software Development

Overview of the Airbnb Community in Berlin

Patterns to Introduce Continuous Integration to Organizations

How a large German Transport company uses Function Points for Estimating

Journal Ranking & Impact Factors

Does the Act of Refactoring Really Make Code Simpler? A Preliminary Study

Transforming Software Quality Assurance &Testing

Data Domain Profiling and Data Masking for Hadoop

Automatic software measurement data collection for students

Concepts of QJ-Pro. Page 1 Copyright 2004 GPL License. All rights reserved.

CHAPTERS A NEW KNOT MODEL FOR COMPONENT BASED SOFTWARE DEVELOPMENT

CSTE Mock Test - Part I - Questions Along with Answers

DRIVING BUSINESS PERFORMANCE WITH BUSINESS INTELLIGENCE

Chapter 24 - Quality Management. Lecture 1. Chapter 24 Quality management

Analytical Data Methodology

Clarifying a vision on certification of MDA tools

Standard Glossary of Terms Used in Software Testing. Version 3.01

Sales Variances: Time for the hard sell?

COVER PAGE. INDICATE NAME OF THE BUSINESS (Top part of page)

Software Project Management Matrics. Complied by Heng Sovannarith

Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology

Introduction to Computers and Programming. Testing

Software Quality Management

Software Development Best Practices

A Regression Testing Approach for Software Product Lines Architectures

STRATEGY 1: DETERMINE DESIRED PERFORMANCE METRICS

OPERATIONAL CASE STUDY PRACTICE EXAM ANSWERS

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question on the accompanying scantron.

Definitions. Software Metrics. Why Measure Software? Example Metrics. Software Engineering. Determine quality of the current product or process

Software Development Going Incremental, Iterative and Agile:

Percerons: A web-service suite that enhance software development process

Portugal. Qualifying conditions. Benefit calculation. Earnings-related. Key indicators. Portugal: Pension system in 2012

APPORTIONMENT OF COMMON PROCESS COSTS

Ten steps to better requirements management.

SharePoint Intranet and Internet Spaces

Lecture 20: Software Evolution

Building Reusable Testing Assets for a Product Line

Comments on the Basel Committee on Banking Supervision s Consultative Document: Monitoring indicators for intraday liquidity management

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas...

Reaching CMM Levels 2 and 3 with the Rational Unified Process

Modernized and Maintainable Code. Frank Weil, Ph.D. UniqueSoft, LLC

WebSphere Business Modeler

An Introduction to. Metrics. used during. Software Development

SPANISH AGRICULTURAL INSURANCE SYSTEM

1) Write the following as an algebraic expression using x as the variable: Triple a number subtracted from the number

Progress Report Aspect Oriented Programming meets Design Patterns. Academic Programme MSc in Advanced Computer Science. Guillermo Antonio Toro Bayona

APT How to Better Manage Risk by Outsourcing Risk Measurement. London 11 June 2014

IBM Software Testing and Development Control - How to Measure Risk

9 Research Questions Resolved

Best Practice in SAS programs validation. A Case Study

BUSINESS INTERRUPTION Loss of Profits, Salaries and Fixed Expense Insurance S A M P L E

Baseline Code Analysis Using McCabe IQ

This unit will lay the groundwork for later units where the students will extend this knowledge to quadratic and exponential functions.

Configuration Management for Reusable Software

Sparx Systems Enterprise Architect Cloud-based repository hosting

Lesson 20. Probability and Cumulative Distribution Functions

White Paper April 2006

How To Store Files On A Computer Or Computer Online

ERA-CAPS Data Sharing Policy ERA-CAPS. Data Sharing Policy

Improving Management Review Meetings Frequently Asked Questions (FAQs)

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

Unit Testing Strategies

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

Advanced Excel Charts : Tables : Pivots : Macros

Evolutionary Approach to Coverage Testing of IEC Function Block Applications

Jet Enterprise Cubes. Microsoft Dynamics NAV. Version 3.0

The Ten Principles of Material Handling

EXPONENTIAL FUNCTIONS

For additional information, see the Math Notes boxes in Lesson B.1.3 and B.2.3.


Power of Oracle in the Cloud

8 Tips On How To Prepare A Proper PowerPoint Presentation

Clavis ecommerce Information Quality Insight. Survey uncovers missing, inaccurate and incomplete brand information on leading ecommerce sites.

Google Analytics Access for Bentley Employees

Quality Management. What is quality? Managing the quality of the software process and products ISO 9000

Karunya University Dept. of Information Technology

AN EMPIRICAL REVIEW ON FACTORS AFFECTING REUSABILITY OF PROGRAMS IN SOFTWARE ENGINEERING

Semi-Supervised and Unsupervised Machine Learning. Novel Strategies

Metrics for Analyzing the Quality of Model Transformations

The Ambiguity Review Process. Richard Bender Bender RBT Inc. 17 Cardinale Lane Queensbury, NY

Ingegneria del Software Corso di Laurea in Informatica per il Management. Object Oriented Principles

Software Engineering Compiled By: Roshani Ghimire Page 1

Managing the End Game of A Software Project

Overview. The Knowledge Refinery Provides Multiple Benefits:

Automating Business Processes Using SharePoint Designer

Kevin James. MTHSC 102 Section 1.5 Exponential Functions and Models

2015/2016 Filing Smart

ON THE CONGRUENCE OF MODULARITY AND CODE COUPLING

SQMB '11 Automated Model Quality Rating of Embedded Systems

Environment Canada Data Management Program. Paul Paciorek Corporate Services Branch May 7, 2014

MAT12X Intermediate Algebra

We ( have extensive experience in enterprise and system architectures, system engineering, project management, and

Evaluation Reminders. For Team Chairs Evaluators, Financial Reviewers, And Generalists Institutions being Reviewed

Planning Optimization in AX2012

Math 1 Chapter 3 notes.notebook. October 22, Examples

STC Test Report Dashboard Art of Showcasing data graphically, dynamically

Transcription:

MEST Maintenance Cost Estimation 1 Classifying Maintenance Activities 12 Adjusting System Size through Complexity 2 Product Versions = Maintenance Projects 13 Adjusting System Size through Quality 3 Types of Maintenance Costs 14 Specification-based Change Estimation 4 Calculating Maintenance Project Costs 15 Code-based Change Estimation 5 Estimating Correction Costs 16 Measuring previous Productivity 6 Calculating the Error Correction Effort 17 Impact Analysis of new Requirements 7 Estimating Effort for Error Correction 18 Estimating Evolution Costs 8 Predicting the Number of Errors 19 Costs of Software Maintenance Management 9 Estimating Error Correction Costs 20 Maintenance Management Activities 10 Estimating Evolution Costs 21 Estimating Management Overhead Costs 11 Measuring System Size 22 Calculating Overall Maintenance Costs

MEST-1 Classifying Maintenance Activities Classifying Maintenance Activities Software Maintenance Maintenance of the last Version Development of the new Version Management Corrective Maintenance Emergency Fixes Enhancive Maintenance Adaptive Maintenance Perfective Maintenance Collecting & Tracking of Error Reports Collecting & Filtering of Change Requests Product & Project Planning Product & Project Monitoring

MEST-2 Product Versions = Maintenance Projects Product Versions = Maintenance Projects 1 1999 7 1999 1 2000 1 2001 1 2002 Management Maintenance Management Maintenance Management Maintenance Management Maintenance Maintenance Maintenance Effort of Version 3 of Version 4 Maintenance of Version 5 Development Development Effort of Version 4 Development Development of Version 5 of Version 6 Version 3 Version 4 Version 5 Version 6

MEST-3 Types of Maintenance Costs Types of Maintenance Costs Development e e of next Version Correction o of last Version Appreciable because of fimpact tanalysis Adaptive Maintenance Enhancive Maint. Perfective Maint. Maintenance Management Hardly predictable Corrective Maintenance Overhead Costs relative to Overhead Costs relative to Operational Costs

MEST-4 Calculating Maintenance Project Costs Calculation of Maintenance Project Costs requires combining several different costs Maintenance Project Costs = Costs of Development of the new Version + Costs of Correction of the last Version + Costs of Maintenance Management Costs of new Version are computed based on the size of the added functions and data Costs of correction are based on the number of errors to correct

MEST-5 Estimating Correction Costs Estimation of Correction Costs 1 2 3 Counting of Error Reports so far Version_1 = 16 Error Reports Version_2 = 12 Error Reports Calculating Efforts of Error Correction so far Version_1 = 30 Person Days = 1.4 PD per Error Version_2 = 20 Person Days = 1.6 PD per Error Estimation of Error Reports for the next Version Version_3 = Number of Errors 4 Estimation i of Error Correction Efforts for the next Version Version_3 =? Person Days = PD per Error x Number of Errors

MEST-6 Calculating Error Correction Effort Calculating Error Correction Effort Effort per Error so far Size of last Version in Complexity of last Version in Quality of last Version in Lines of Code or Statements or Function Points or Data Points or Object Points Interface Complexity, Control Flow Complexity, Condition Complexity, Inheritance Complexity, Data Flow Complexity, Language Complexity etc. Modularity, Flexibility, Testability, Conformity etc. Size, Complexity and Quality of current Version

MEST-7 Estimating Effort for Error Correction Estimation of Effort for Error Correction Effort per Error so far = 1.6 PD Differences between the last and the current Version Version Size x Complexity adjusted Size x Quality adjusted Size Difference Last: 20,000 0,7 29,000 0.6 22,400 0.7/0.5 = 1.4 0.5/0.6 0.8 Current: 22,000 0,75 33,000 0,55 29,700 0.75/0.5 5 =15 1.5 05/055 0.5/0.55 09 0.9 Diff: 2,000 0.05 5,000 0.05 7,300 = 1.3 Effort per Error = 1.6 x 1.3 = 2.0 PD per Error Correction

MEST-8 Projecting the Number of Errors Estimation of Number of Errors Last Error Number = 52 Last System Size = 20,000 Last Error Density = 52 / 20,000 = 0.0026 Last Test Coverage =082 0,82 Last uncovered Portion = 20,000 x (1.00-0.82) = 3,600 Last uncovered Error Density = 3,600 / 52 = 69 per uncovered Portion [1 pro 69] (Statements, Function Points, Object Points) Current System Size = 22,000 Current Test Coverage = 0,85 Current uncovered Portion = 22,000 x (1.00-0.85) = 3,300 Estimated Number of Errors = 3300 / 69 = 48 Estimated Error Density = 48 / 22,000 = 0.0022

MEST-9 Estimating Error Correction Costs Estimation of Error Correction Costs Version Size Coverage Effort per Error Error Effort over all Version_1 17,000 0.75 1,4 56 78.4 Version_2 20,000 0.82 1,6 52 83.2 Version_3 22,000 085 0.85 20 2,0 48 96.0 Version_3 = (22,000 x (1-0,85) / 69) = 48 x 2 = 96 Correction Effort = 96 Person Days

MEST-10 Estimating Evolution Costs Estimation of Evolution Costs 1 2 3 4 Measure Size, Complexity and Quality of the last Version Justified_Size = Bare_Size x Complexity x Quality Measurement of the Impacts of new Requirements (Enhancements, Adaptations, Perfections) % Change = % Enhancement + % Adaptation + % Perfection Measure Productivity so far Productivity = Adjusted Impact Area / Person Days Estimate Effort for new Version Version_4 = Person Days = Change Portion / Productivity

MEST-11 Measuring the System Size Measurement of the System Size Lines of Code Statements Data Points Object Points = Classes x 4 + Methods x 3 + Associations x 2 + Variables x 1 = Lines over all Comment Lines Empty Lines = Declarations + Procedural Statements = Data Entities x 8 (Tables, Structures, Classes) + Data Keys x 4 + Data Relations x 2 + Data Attributes x 1 Function Points = Inputs x (3:6) + Outputs x (4:7) + Interfaces x (5:10) + Data Entities x (7:15)

MEST-12 Adjusting System Size through Complexity Adjusting System Size through Complexity Complexity = Median of Data Complexity (0.720) (0,700) Data Flow Complexity (0.760) Interface Complexity (0.920) Control Flow Complexity (0.600) Condition Complexity (0.480) Branching Complexity (0.640) Language Complexity (0.780) Complexity Factor = Complexity / Median Complexity (1.4) = (0.7) / (0.5) Adjusted Size = Raw Size x Complexity Factor (28.000) (20.000) x (1.4)

MEST-13 Adjusting System Size through Quality Adjusting System Size through Quality Quality = Median of Maintainability (0.500) Testability y( (0.600) Reusability (0.420) Conformity (0.720) Modularity (0.640) Flexibility y( (0.560) Readability (0.800) Portability (0.480) Quality Factor = Median Quality / Quality (0.83) = (0.5) / (0.6) Justified Size = Bare Size x Quality Factor (22.400) (28.000) x (0.8)

MEST-14 Specification based Change Request Cost Estimation +----------------------------------------------------------------------+ Specification based Cost Report Product : GEOS System : NOSTRO Project : Harry Date : 03.11.01 Repository : d:\tools\maintain\softanal\cmfanal\output\metrics +----------------------------------------------------------------------+ Change Adjusted Monthly Person Metric Quantity Rate Complexity Quality Quantity Product Months +----------------------------------------------------------------------+ Stmnts: 1680 X 0.500 X 1.528 X 0.917 = 1176 / 480 = 2.45 Dat_Pt: 773 X 0.500 X 1.528 X 0.917 = 541 / 152 = 3.56 Obj_Pt: 1116 X 0.500 X 1.528 X 0.917 = 781 / 152 = 5.14 Fct_Pt: 161 X 0.500 X 1.528 X 0.917 = 112 / 36 = 3.13 Median: 0 X 0.500 X 1.528 X 0.917 = 0 / 00 = 3.57 +----------------------------------------------------------------------+

SWPM Code based Change Request Cost Estimation MEST-15 +----------------------------------------------------------------------+ Code based Cost Report Product : GEOS System : NOSTRO Project : CR2 Date : 11.09.01 Repository : d:\maintain\softrepo\tables +----------------------------------------------------------------------+ Change Adjusted Monthly Person Metric Quantity Rate Complexity Quality Quantity Product Months +----------------------------------------------------------------------+ Stmnts: 333 X 0.500 X 1.028 X 0.595 = 101 / 500 = 0.20 Dat_Pt: 65 X 0.500 X 1.028 X 0.595 = 19 / 150 = 0.13 Obj_Pt: 425 X 0.500 X 1.028 X 0.595 = 129 / 140 = 0.93 Fct_Pt: 108 X 0.500 X 1.028 X 0.595 = 33 / 32 = 1.03 Median: 0 X 0.500 X 1.028 X 0.595 = 0 / 00 = 0.57 +----------------------------------------------------------------------+

MEST-16 Measuring previous Productivity Measurement of previous Productivity Adjusted Size of Version (i) = 22,400 (i) Impact Domain of Version (i) = 0.15 Change Portion of Version (i) = 3,360 Effort over all of Version (i) = 360 Person Days Productivity (i) = Change Portion (i) / Effort (i) 9.3 Stmts per PT = (3,360) / (360) Productivity so far = Average (Version 1:n) that means 10 Productivity Units per Person Day

MEST-17 Impact Analysis of new Requirements Impact Analysis of new Requirements Enhancement Impact = (Enhancement_1 = 0.030) (0.060) 060) + (Enhancement _2 = 0.010) 010) + (Enhancement _3 = 0.020) Change Impact = (Change _1 = 0.005) (0.020) + (Change _2 = 0.005) + (Change _3 = 0.010) Perfection Impact = (Perfection _1 = 0.008) (0.020) + (Perfection _2 = 0.012) Impact over all = Enhancement Impact(0.06) (0.100) + Change Impact (0.02) + Perfection Impact (0.02)

MEST-18 Estimating Evolution Costs of the new Version Estimation of Evolution Costs of the new Version Change Proportion Productivity so far = 10% von 22,400 = 2,240 Productivity units = 10 pro Person Days New Effort = Change Proportion / Productivity it so far New Effort = (2,240 / (10) New Effort = 224 Person Days

MEST-19 Costs of Software Maintenance Management Two Levels of Software Maintenance Management Overhead = 1/3 of operational costs Maintenance Process (administrative) new Measures Planning, Organization and Controlling of Maintenance Tasks old Version Maintenance Process (operational) Performance of Maintenance Tasks new Version

MEST-20 Maintenance Management Activities Maintenance Process Cycle Order Analysis Maintenance Management = Order Entry Management Order Entry Definition of Version Management Process Release of Version Administrative Cycle Planning of Version Version Assignment Docu Analysis Technical Process Test Operational Cycle Programming Design Management 33% Analyse Analysis 16% Prog 12% Doku Docu 7% Technik Technics 67% Design 8% Test 24% 0 20 40 60 80

MEST-21 Estimating Management Overhead Costs Estimation of Management Costs According to the Experience in the Maintenance Process: Management = 33% of the Over All Effort Execution Effort = Correction Effort ( 96 PD s) + Evolution Effort (224 PD s) = 320 PD s Management Costs = Execution Effort x 0.5 Management Costs = (320) x 0.5 = 160 PD s

MEST-22 Calculating Overall Maintenance Costs Calculation of Overall Maintenance & Evolution Costs Over All Maintenance Effort Correction Effort Evolution Effort Management Costs Over All Effort = Correction Effort + Evolution Effort + Management Costs = 96 Person Days = 224 Person Days = 160 Person Days = 480 Person Days Costs per Person Day = Euro 750 Costs of Maintenance Project = Euro 360 000 (Next Pass through the Life Cycle)