Example: stock market

Making the Business Case for Software Performance …

1 INTRODUCTIONP erformance responsiveness and scalability is amake-or-break quality for Software . Yet, despite wide-spread recognition of the importance of Performance tothe success of a project, many Software products can-not be used as they are initially implemented due toperformance problems. They fail to respond rapidlyenough to user actions or to handle the number oftransactions that occur under peak load Performance failures cost the Software industrymillions of dollars every year. The costs of performancefailures include: Increased Operational Costs Poor perfor-mance means that your staff needs more timeto complete key tasks, or that you need morestaff to complete these tasks in the sameamount of time. In extreme cases, users maybypass the automated system altogether infavor of faster manual processes. Increased Development Costs One companydiscovered, during integration testing, that anonline transaction that should have taken 10seconds could not be completed in less that 60seconds.

2 Software performance engineering (SPE) [Smith and Williams, 2002], [Smith, 1990] provides a systematic, quantitative approach to constructing software systems

Tags:

  Business, Performance, Engineering, Software, Case, Business case for software performance, Software performance engineering

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Making the Business Case for Software Performance …

1 1 INTRODUCTIONP erformance responsiveness and scalability is amake-or-break quality for Software . Yet, despite wide-spread recognition of the importance of Performance tothe success of a project, many Software products can-not be used as they are initially implemented due toperformance problems. They fail to respond rapidlyenough to user actions or to handle the number oftransactions that occur under peak load Performance failures cost the Software industrymillions of dollars every year. The costs of performancefailures include: Increased Operational Costs Poor perfor-mance means that your staff needs more timeto complete key tasks, or that you need morestaff to complete these tasks in the sameamount of time. In extreme cases, users maybypass the automated system altogether infavor of faster manual processes. Increased Development Costs One companydiscovered, during integration testing, that anonline transaction that should have taken 10seconds could not be completed in less that 60seconds.

2 Some transactions took as long as200 seconds. When problems like these arise,you need to allocate additional resources to theproject to tune or even redesign the softwareto try to meet Performance objectives. Increased Hardware Costs If tuning or rede-sign isn t sufficient to solve the problem, youmay need to increase your hardware capacity(for example, by adding more processors orupgrading to faster disks) to achieve your per-formance objectives. Canceled Projects In some cases it will beimpossible to meet Performance objectives bytuning, and too expensive to redesign the sys-tem late in the process or add more hardwarecapacity. These projects will be canceled andtheir costs will be largely unrecoverable. Damaged Customer Relations Poorly per-forming Software can cause your organization simage to suffer. The effects of poorly performingWeb sites are well documented; customers willsimply go elsewhere rather than endure longwaits.

3 This problem is not limited to Web sites,however. Long waits on the telephone whilecustomer-service representatives access cus-tomer data will ultimately have the same if the problem is fixed later, negative per-ceptions will continue. Lost Income Tuning or redesign results inlate deployment or delivery of Software . In somecases, you may find yourself paying penaltiesfor late delivery or failure to meet contractualperformance requirements. Reduced Competitiveness Late delivery dueto tuning or redesign can also mean that youmiss a critical market window, allowing yourcompetition to increase their market share atyour the Business case forSoftware Performance EngineeringShrinking budgets and increased fiscal accountability mean that management needs asound financial justification before committing funds to Software process improvementssuch as Software Performance engineering (SPE).

4 Preparing a Business case for SPEcan demonstrate that the commitment is financially worthwhile and win support for an SPEinitiative. This paper presents an introduction to the use of Business case analysis to justifyinvesting in SPE to reduce costs due to Performance failures. A case study illustrates howto perform a financial analysis and calculate a projected return on G. Williams, engineering Research264 Ridgeview LaneBoulder, Colorado 80302(303) U. Smith, engineering ServicesPO Box 2640 Santa Fe, New Mexico, 87504-2640(505) 988-3811 2003, Software engineering Research and Performance engineering Services. All rights Performance engineering (SPE) [Smith andWilliams, 2002], [Smith, 1990] provides a systematic,quantitative approach to constructing Software systemsthat meet Performance objectives. With SPE, youdetect problems early in development, and use quanti-tative methods to support cost-benefit analysis of hard-ware solutions versus Software requirements or designsolutions, or a combination of Software and is a Software -oriented approach: it focuses onarchitecture, design, and implementation choices.

5 Ituses model predictions to evaluate trade-offs in soft-ware functions, hardware size, quality of results, andresource requirements. The models assist developersin controlling resource requirements by enabling themto select architecture and design alternatives withacceptable Performance characteristics. The modelsaid in tracking Performance throughout the develop-ment process and prevent problems from surfacing latein the life cycle (typically during final testing).SPE also prescribes principles and Performance pat-terns for creating responsive Software , performanceantipatterns for recognizing and correcting commonproblems, the data required for evaluation, proceduresfor obtaining Performance specifications, and guide-lines for the types of evaluation to be conducted ateach development stage. It incorporates models forrepresenting and predicting Performance as well as aset of analysis many of us, the above paragraphs sound like a solidargument for adopting SPE.

6 Yet, when we present ourcase to management, they frequently remain uncon-vinced. Why?The problem is often a disconnect between what we,as Software developers or Performance engineers,consider a justification for adopting a technology andwhat management expects. To management, theabove argument is a technical justification preceded bysome general, qualitative economic information. Itdoesn t provide the hard financial information that theyneed to make a today s world, management is being asked to domore with fewer resources. As a result, they need spe-cific, quantitative data to evaluate the economic advan-tages and disadvantages of adopting a new technologysuch as SPE. That means Making a Business case IS A Business case ?A Business case is a document presented to win man-agement commitment for investment in a proposedproject or course of action. It establishes that theproject will meet an identified Business need and is fea-sible, affordable and a sound investment.

7 If there arecompeting alternatives, it provides a quantitative basisfor choosing among them. The Business case also pro-vides a basis for managing the proposed project andmeasuring its concept of preparing a Business case to justify aproposed investment is not new. However, in today seconomy shrinking budgets, competing proposals forlimited funds, and higher fiscal accountability for man-agement have combined to revive the popularity of thistool. Business and government entities from IT depart-ments to human service organizations are now requir-ing that employees justify new initiatives with abusiness Business case describes the cash flows (both costsand benefits) that occur as a result of pursuing the pro-posed course of action and their timing as well as themethods and assumptions that were used in calculat-ing them. It also includes a discussion of critical suc-cess factors ( , training or the use of consultants),the impact of the project on the organization (will itchange the organization chart?)

8 , and an identificationof any significant risks that could change the outcomealong with recommendations for mitigating example, a Business case for SPE would identifythe problem to be solved, indicate how SPE can solvethe problem, and quantify the costs and benefits ofadopting SPE for a given project or the organization asa whole. It would also discuss the impact of SPE on thesoftware development process and identify any risksthat might prevent the projected benefits from beingrealized along with strategies for mitigating themThe following section describes the contents of a busi-ness case in more case CONTENTSThe following sections describe the essential compo-nents of a Business case . The title and format of eachsection will vary by SummaryThe Executive Summary should be a short summary ofyour Business case ; one page is usually best. The restof the document will provide details to support the sum-mary.

9 This may be the only part of your Business casethat some people read, however, so you need to makeyour case here clearly and succinctly. Include a high-level summary of the results and focus on the financialanalysis. Leave the details and explanations for thebody of the StatementThere is a reason you are proposing this project. ForSPE that reason could be a history of Performance fail-ures on previous projects or a high risk of failure on anew project. This section should summarize the issues,how they affect the organization and your assessmentof what the source of the problem SolutionThis section describes how the problem will beaddressed and the expected outcomes. Begin with anoverview of the project. Then provide enough detail todemonstrate that what you propose is in line with yourorganization s Business goals and can, in fact, AnalysisThe financial analysis details the costs and benefits ofthe proposed solution and summarizes them using oneor more of the financial analysis tools described is based on a cost model a spreadsheet model thatincludes all of the costs and benefits related to the pro-posed model serves as a guide for performing a cost/benefit analysis (see below).

10 The model results arethen used to compute financial metrics such as: Returnon Investment, Internal Rate of Return, or Total Cost ofOwnership. These metrics are discussed major step in implementing your proposed solu-tion should be shown on a timeline such as a GanttChart. These include major milestones ( , comple-tion of training) as well as major cash flows ( ,expenditures such as equipment).Sensitivity Analysis and RisksThis section discusses potential problems that mightprevent achievement of the objectives and overall ben-efits of the proposal. For example, what if one or moreof the assumptions used in the financial analysis iswrong? Or, what if a step in the process cannot becompleted on time?Sensitivity analysis looks for items in the cost model forwhich a small change in value can make a difference inthe outcome of the analysis. If assumptions were usedin deriving these numbers, they should be examinedand best- and worst- case estimates used to predictwhat happens if the assumptions become section should also include any potential risks tothe project or organization.


Related search queries