institute for software excellence make or buy? a value-based approach to tco analysis dr. nicole...
TRANSCRIPT
Institute For Software Excellence
Make or Buy?A Value-Based Approach to TCO Analysis
Dr. Nicole RadziwillJames Madison University
ISE09 – 8:00am Wednesday, May 26, 2010
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
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
3
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)?
4
Components of TCO
• What costs can be associated with software development over a 3, 5 or 10-year maintenance cycle?
5
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 modulesJones, C. (2007). Geriatric Issues of Aging Software. Crosstalk, Dec. 2007.
6
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!
7
TCO Templateshttp://www.scribd.com/doc/16727390/TCO-for-Software-App-Template
International Conference on Software Quality - ICSQ 09
8
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 situationsCf. Ellram, L. (1994). A Taxonomy of TCO Models. Journal of Business
Logistics. 15(1), 171-192.
9
There are Alternatives…
• Multiple attribute utility theory (MAUT)
• Multi-objective programming
• Analytical hierarchy process (AHP)
10
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?
11
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
12
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
14
International Conference on Software Quality - ICSQ 09
15
Monday, April 10, 2023
Footer goes here 16
DATABASE
MESSAGING (CMES)
DATA PROCESSING (DPMS)
ASSET MANAGEMENT (AM/OSM)
Monday, April 10, 2023
Footer goes here 17
DATABASE
MESSAGING (CMES)
DATA PROCESSING (DPMS)
ASSET MANAGEMENT (AM/OSM)
Infor
JBoss
IBM MQ
Kepler
IFS
RedHat JBPM
Oracle
IBM DB2
IBM
IBM
Oracle AQ
IBM Maximo
Platform
Infor
JBoss
IBM MQ
Kepler
IFS
RedHat JBPM
Oracle
IBM DB2
IBM
IBM
Oracle AQ
IBM Maximo
Platform
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
20