210 likes | 463 Views
Make or Buy? A Value-Based Approach to TCO Analysis. Dr. Nicole Radziwill James Madison University ISE09 – 8:00am Wednesday, May 26, 2010. Motivation.
E N D
Make or Buy?A Value-Based Approach to TCO Analysis Dr. Nicole Radziwill James Madison University ISE09 – 8:00am Wednesday, May 26, 2010 Institute For Software Excellence
Motivation • The price of purchasing software is typically very low (<10%) compared to the how much it really costs – in total – to acquire and use a software product over its lifetime • Even free software can be expensive! MacCormack, A. (2003). The true costs of software. Computerworld, 5/29/2003. http://www.computerworld.com/s/article/81590/The_True_Costs_of_Software?taxonomyId=18&pageNumber=2
Objectives • Summarize the Total Cost of Ownership (TCO) concept • Discuss the components of TCO • Identify the limitations of a TCO analysis in the context of a real software selection problem • Present a value-based extension of TCO analysis that helps you factor in other considerations that are useful in “Make vs. Buy” decisions
TCO Can Help Answer: • Should we buy a Commercial Off-the-Shelf (COTS) solution and customize it? • Should we build our software from scratch? • Should we use open source software? • Should we use Software-as-a-Service (SaaS)?
Components of TCO • What costs can be associated with software development over a 3, 5 or 10-year maintenance cycle?
Components of TCO According to Capers Jones: • Initial cost of building an application • Cost of enhancing the app with new features • Cost of repairing defects and bugs • Cost of customer support • Cost of refactoring • Removal of error-prone modules Jones, C. (2007). Geriatric Issues of Aging Software. Crosstalk, Dec. 2007.
Components of TCO • Cost to purchase software • Cost to customize software • Licenses for named or concurrent users • Cost of infrastructure that software will run on: servers, network connections, network upgrades to support higher loads or number of transactions • Staffing: training, maintenance, support, administration, incidental personnel • COSTS OF QUALITY!
TCO Templates http://www.scribd.com/doc/16727390/TCO-for-Software-App-Template International Conference on Software Quality - ICSQ 09
Barriers to TCO Analysis • Lack of relevant data (or inability to find appropriate and relevant data) • Difficulty of determining the right costs to factor into the TCO calculation • Difficulty of determining the TCO itself • Organizational culture • Irrelevance of analysis in certain situations Cf. Ellram, L. (1994). A Taxonomy of TCO Models. Journal of Business Logistics. 15(1), 171-192.
There are Alternatives… • Multiple attribute utility theory (MAUT) • Multi-objective programming • Analytical hierarchy process (AHP)
But…. • These methods can be complex, and are still based on costing… it’s hard to integrate qualitative concerns. • Total Cost isn’t always the only factor you need to consider. The most cost effective software might be really difficult to customize or maintain. • How do you factor these considerations into your Make vs. Buy decision?
Context of the Problem • A new observatory needs to select a database, a messaging system, a data processing system, and an asset management system • Wants to select a cost-effective option that will yield the highest value over the 3-year lifetime of the construction project
3D Total Cost of Ownership • Three Dimensions are: • Priority of Selection Criteria/Requirements • % of criteria that can satisfied at each priority level • Relative TCO, which is Total Cost of Ownership (TCO) relative to the most expensive candidate for a subsystem • We are looking for options with: • Ability to Satisfy all Observatory Requirements (100% through out-of-the-box functionality or customizations; selected subsystems MUST cross the 1.0 satisfiability line) • High Value (vertical lines indicate that we can satisfy many more requirements with only a small investment) • Lowest TCO (lines as far left as possible) • Only Oracle DB, IBM Maximo asset management, and Platform data processing systems meet all three selection criteria • Both JBoss and IBM MQ high value candidates for messaging system
What’s Needed for 3D TCO • Prioritized requirements (examples have three levels of prioritization for COTS, four for software-from-scratch) • Satisfiability: know what proportion of the requirements are satisfied at each priority level • An estimate of TCO over a selected time horizon for each priority level (example uses 3 year TCO) • Normalize all satisfiability estimates to LARGEST satisfiability • Normalize all TCO estimates to LARGEST for each subsystem
DATABASE MESSAGING (CMES) DATA PROCESSING (DPMS) ASSET MANAGEMENT (AM/OSM) Footer goes here
IBM Maximo Oracle IBM MQ IFS DATABASE Infor IBM IBM DB2 MESSAGING (CMES) Platform JBoss Oracle AQ RedHat JBPM DATA PROCESSING (DPMS) IBM Kepler ASSET MANAGEMENT (AM/OSM) Footer goes here
IBM Maximo Oracle IBM MQ Infor Platform IBM IBM DB2 IFS Oracle AQ RedHat JBPM JBoss IBM Kepler
Identifying Best Candidates • Line should hit the top of the chart (indicating 100% satisfiability of requirements) • Steep slope indicates that you get more requirements satisfied with just a little more investment in terms of TCO • Line should be as far left as possible indicating lower TCOs