Software Engineering Body of Knowledge (v3) (2014) (811503), страница 59
Текст из файла (страница 59)
A proposal is a single, separateoption that is being considered, like carrying outa particular software development project or not.Another proposal could be to enhance an existing software component, and still another mightbe to redevelop that same software from scratch.Each proposal represents a unit of choice—eitheryou can choose to carry out that proposal or youcan choose not to. The whole purpose of businessdecision-making is to figure out, given the currentbusiness circumstances, which proposals shouldbe carried out and which shouldn’t.2.8. Investment Decisions[1*, c4]Investors make investment decisions to spendmoney and resources on achieving a target objective.
Investors are either inside (e.g., finance,board) or outside (e.g., banks) the organization.The target relates to some economic criteria, suchas achieving a high return on the investment,strengthening the capabilities of the organization,or improving the value of the company. Intangible aspects such as goodwill, culture, and competences should be considered.2.9. Planning Horizon[1*, c11]When an organization chooses to invest in a particular proposal, money gets tied up in that proposal—so-called “frozen assets.” The economicimpact of frozen assets tends to start high anddecreases over time.
On the other hand, operating and maintenance costs of elements associatedwith the proposal tend to start low but increaseover time. The total cost of the proposal—thatis, owning and operating a product—is the sumof those two costs. Early on, frozen asset costsdominate; later, the operating and maintenancecosts dominate. There is a point in time where thesum of the costs is minimized; this is called theminimum cost lifetime.To properly compare a proposal with a fouryear life span to a proposal with a six-year lifespan, the economic effects of either cutting thesix-year proposal by two years or investing theprofits from the four-year proposal for anothertwo years need to be addressed. The planninghorizon, sometimes known as the study period,is the consistent time frame over which proposals are considered.
Effects such as software lifetime will need to be factored into establishing aplanning horizon. Once the planning horizon isestablished, several techniques are available forputting proposals with different life spans intothat planning horizon.2.10. Price and Pricing[1*, c13]A price is what is paid in exchange for a good orservice. Price is a fundamental aspect of financialmodeling and is one of the four Ps of the marketingmix. The other three Ps are product, promotion,and place.
Price is the only revenue-generating element amongst the four Ps; the rest are costs.Pricing is an element of finance and marketing.It is the process of determining what a companywill receive in exchange for its products. Pricingfactors include manufacturing cost, market placement, competition, market condition, and qualityof product.
Pricing applies prices to products andservices based on factors such as fixed amount,quantity break, promotion or sales campaign,Software Engineering Economics 12-9specific vendor quote, shipment or invoice date,combination of multiple orders, service offerings,and many others. The needs of the consumer canbe converted into demand only if the consumerhas the willingness and capacity to buy the product. Thus, pricing is very important in marketing.Pricing is initially done during the project initiation phase and is a part of “go” decision making.2.11. Cost and Costing[1*, c15]A cost is the value of money that has been used upto produce something and, hence, is not availablefor use anymore. In economics, a cost is an alternative that is given up as a result of a decision.A sunk cost is the expenses before a certaintime, typically used to abstract decisions fromexpenses in the past, which can cause emotionalhurdles in looking forward.
From a traditionaleconomics point of view, sunk costs should notbe considered in decision making. Opportunitycost is the cost of an alternative that must be forgone in order to pursue another alternative.Costing is part of finance and product management. It is the process to determine the cost basedon expenses (e.g., production, software engineering, distribution, rework) and on the target costto be competitive and successful in a market.The target cost can be below the actual estimatedcost. The planning and controlling of these costs(called cost management) is important and shouldalways be included in costing.An important concept in costing is the total costof ownership (TCO).
This holds especially forsoftware, because there are many not-so-obviouscosts related to SPLC activities after initial product development. TCO for a software product isdefined as the total cost for acquiring, activating,and keeping that product running. These costscan be grouped as direct and indirect costs. TCOis an accounting method that is crucial in makingsound economic decisions.2.12. Performance Measurement[3*, c7, c8]Performance measurement is the process wherebyan organization establishes and measures theparameters used to determine whether programs,investments, and acquisitions are achieving thedesired results.
It is used to evaluate whetherperformance objectives are actually achieved; tocontrol budgets, resources, progress, and decisions; and to improve performance.2.13. Earned Value Management[3*, c8]Earned value management (EVM) is a projectmanagement technique for measuring progressbased on created value.
At a given moment, theresults achieved to date in a project are compared with the projected budget and the plannedschedule progress for that date. Progress relatesalready-consumed resources and achievedresults at a given point in time with the respective planned values for the same date. It helpsto identify possible performance problems at anearly stage.
A key principle in EVM is trackingcost and schedule variances via comparison ofplanned versus actual schedule and budget versusactual cost. EVM tracking gives much earlier visibility to deviations and thus permits correctionsearlier than classic cost and schedule tracking thatonly looks at delivered documents and products.2.14. Termination Decisions[1*, c11, c12] [2*, c9]Termination means to end a project or product.Termination can be preplanned for the end of along product lifetime (e.g., when foreseeing that aproduct will reach its lifetime) or can come ratherspontaneously during product development(e.g., when project performance targets are notachieved). In both cases, the decision should becarefully prepared, considering always the alternatives of continuing versus terminating. Costs ofdifferent alternatives must be estimated—covering topics such as replacement, information collection, suppliers, alternatives, assets, and utilizing resources for other opportunities. Sunk costsshould not be considered in such decision makingbecause they have been spent and will not reappear as a value.12-10 SWEBOK® Guide V3.0Figure 12.4.
Goals, Estimates, and Plans2.15. Replacement and Retirement Decisions[1*, c12] [2*, c9]A replacement decision is made when an organization already has a particular asset and they areconsidering replacing it with something else; forexample, deciding between maintaining and supporting a legacy software product or redevelopingit from the ground up. Replacement decisions usethe same business decision process as describedabove, but there are additional challenges: sunkcost and salvage value.
Retirement decisions arealso about getting out of an activity altogether,such as when a software company considers notselling a software product anymore or a hardwaremanufacturer considers not building and selling aparticular model of computer any longer. Retirement decision can be influenced by lock-in factors such as technology dependency and high exitcosts.3. Risk and Uncertainty3.1. Goals, Estimates, and Plans[3*, c6]Goals in software engineering economics aremostly business goals (or business objectives).A business goal relates business needs (such asincreasing profitability) to investing resources(such as starting a project or launching a product with a given budget, content, and timing).Goals apply to operational planning (for instance,to reach a certain milestone at a given date or toextend software testing by some time to achieve adesired quality level—see Key Issues in the Software Testing KA) and to the strategic level (suchas reaching a certain profitability or market sharein a stated time period).An estimate is a well-founded evaluation ofresources and time that will be needed to achievestated goals (see Effort, Schedule, and Cost Estimation in the Software Engineering ManagementKA and Maintenance Cost Estimation in the Software Maintenance KA).
A software estimate isused to determine whether the project goals canbe achieved within the constraints on schedule,budget, features, and quality attributes. Estimatesare typically internally generated and are notnecessarily visible externally. Estimates shouldnot be driven exclusively by the project goalsbecause this could make an estimate overly optimistic. Estimation is a periodic activity; estimatesshould be continually revised during a project.A plan describes the activities and milestonesthat are necessary in order to reach the goals ofSoftware Engineering Economics 12-11a project (see Software Project Planning in theSoftware Engineering Management KA). Theplan should be in line with the goal and the estimate, which is not necessarily easy and obvious—such as when a software project with givenrequirements would take longer than the targetdate foreseen by the client.