150 likes | 260 Views
Building a Comprehensive Software Product Line Cost Model. Andy Nolan BSc Hons, CEng, FBCS, CITP Chief of Software improvement – The Software Centre of Excellence.
E N D
Building a Comprehensive Software Product Line Cost Model Andy Nolan BSc Hons, CEng, FBCS, CITP Chief of Software improvement – The Software Centre of Excellence
Certification evidence cannot be easily generated centrally but must be gathered on each project instance, during system integration and integration with the hardware Gathering this evidence, which can be over 50% of the Control Systems project’s total cost, has to be incurred on each configured project instance. Projects are typically low volume and are individually configured for their application. Engine Control Systems • The control system is fundamental to the certification of the engine and Airframe. The Control system software is classed as safety critical Electronic Engine Controller
The demand for software functionality is growing Size (Functionality) Source Lines of Code Functional Growth between 4% and 10%/year AND a growing legacy of obsolete platform requiring refresh 0% 1990 1995 2000 2005 2010 2015
Process Improvement will soon end EEC Control System Software Cost per Function Relative to"Baseline" 100% 90% 80% 70% 60% Cost Per Function Relative to "baseline" 50% Evolution has halved the costs of our projects. Process refinement may be reaching its natural limits. The next improvements will be in product design 40% 30% 20% 10% 0% 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014
Inputs SIMPLE CO-PL-MO • guide the Business - to estimate business level cash flow and benefits • guide the Project – when to adopt, when to clone and own, when to say “No” • guide the Architects – select the right assets & the right variation mechanisms COCOMO Experience Rolls-Royce Asset Data Rolls-Royce Process Data Rolls-Royce Past Project Data
COCOMO – The Development Environment Relative Productivity PREC – Precedence (Novelty) PMAT Process Maturity Experience (APEX, PLEX & LTEX SITE – organisation sites TEAM – team cohesion RESL Risk and Architecture result ion TOOL Capability REVL Requirements Volatility Relative Productivity Baseline Project 1 Project 2 Project 3 Project 4 Project 5 Project 6 Project 7 Project 8 Project 9 Project 10 Project You do not necessarily need products in your Product Line to add value to the business
Overview of the Model Factors for asset “value” rather than size Disruption to the “environment” (CO-CO-MO) Number of deployments Factors for safety critical processes and verification performed by each project The additional Product Line development costs (CO-PL-MO) The organisational overheads to govern PL and train the business Only relative benefits used
Business Model Outputs PL Benefit Cross Over Point Traditional Cumulative$M Product Line $M Cumulative $$€ PL Develop P1 P2 P3 P4 P5 P6 P7 P8 P9 P10
Asset Management In some cases, it may be more economical to clone and own an asset rather than use a Product Line option In some cases, there is no overall benefit from developing a Product Line Asset
In conclusion • If you do not have a cost model of your Product Line – then make one! • Despite some people’s beliefs, they are relatively easy to build • The best solution is often counter intuitive - don’t rely on subjectivity (alone) • Data makes decision making and persuasion very easy
Some observations from the model • You must select assets based on their value rather than size. • Not every assets will benefit from being made into a Product Line • Doing nothing is still expensive in a safety critical world (verification of the asset in situ). • You do not need products in your Product Line in order to add value! • Introducing a Product Line strategy "disturbs" the organisation – factor for it
Do you know if you can meet your business goals? Do you know what is important and what to monitor? Do you know what you are capable of achieving? Do you know what to improve? A model is at the heart of a business Business Goals Set Project Goals & Targets Estimate & Plan Project Understand Capability Improve capability Monitor & Control Project Benchmark Capability
Our philosophy From traditional reuse (clone and own) we would have expected some savings New New Product Development The costs to start with a blank sheet of paper The business case is based on the delta between the Product Line and what the project would have cost Traditional What the project would have cost had we not used a Product Line (some clone and own) Cost (Effort) Product Line Cost of the project based on Product Line Strategy
Estimated Resource Estimated Resource Profiles (FTE) PL Deployment PL Asset Development & Overheads Traditional Project Resource (Engineers) Year 1 Year 2 Year 3 Year 4 Year 5 Year 6 Year 7 Year 8 Year 9 Year 10 Year 11 Year 12 Year 13 Year 14 Year 15 Year 16 Year 17 Year 18