Download presentation
Presentation is loading. Please wait.
Published byBranden Leonard Modified over 9 years ago
1
Software Engineering Economics SE(481) Asad Ur Rehman Assistant Professor asad.rehman@hamdard.edu.pk Department of Computing Hamdard Institute of Engineering & Technology Hamdard University Lecture # 01 Economics and Fundamental Concepts
2
Software Engineering Economic Definition of Economics Economics as “a social science concerned chiefly with description and analysis of the production, distribution, and consumption of goods and services.” Another definition of economics that is more helpful in explaining how economics relates to software engineering. Economics is the study of how people make decisions in resource limited situation. Ex: We have only 5 developer, take less time if we had 8 developers Ex: In 3 months we have give you 200 features 2 Hamdard Univeristy
3
Software Engineering Economic Definition of Economics Macro-economics is the study of how people make decisions in resource-limited situations on a national scale. It deals with the effects of decisions that national leaders make on such issues as.. tax rates, interest rates, and foreign and trade policy Micro-economics is the study of how people make decisions in resource-limited situations on a more personal scale. It deals with the decisions that individuals and organizations make on such issues as.. how much insurance to pay (for a given risk) which word processor to buy what prices to charge for their products or services 3 Hamdard Univeristy
4
Software Engineering Economic Economics & SW Engg Management Micro-economics deals with Software Engineering decisions. SW-Engg deals with limited resource Never have enough time and money to cover all good features in a Software product Decision situations in which you had to determine some key features to develop Many decision involving limited resource where SW-Engg Economics techniques will provide useful assistance. 4 Hamdard Univeristy
5
Software Engineering Economic Economics & SW Engg Management To have an idea what kind of situation you could have at senior management level, example is given below Feasibility Phase Plans and Requirements Phase Product Design Phase Programming Phase Integration and Test Phase Maintenance Phase 5 Hamdard Univeristy
6
Software Engineering Economic Economics & SW Engg Management Feasibility Phase How much should we invest in information system analyses (user questionnaires and interviews current-system analysis, workload characterizations, simulations, scenarios, prototypes) in order to converge on an appropriate definition and concept of operation for the system we plan to implement? Plans and Requirements Phase How rigorously should we specify requirements? How much should we invest in requirements validation activities (completeness, consistency, and traceability checks, analytic models, simulations, prototypes) before proceeding to design and develop a software system? 6 Hamdard Univeristy
7
Software Engineering Economic Economics & SW Engg Management Product Design Phase Should we organize the software to make it possible to use a complex piece of existing software that generally but not completely meets our requirements? Programming Phase Given a choice between three data storage and retrieval schemes that are primarily.. execution-time efficient storage efficient, and easy to modify which of these should we choose to implement ? 7 Hamdard Univeristy
8
Software Engineering Economic Economics & SW Engg Management Integration and Test Phase How much testing and formal verification should we perform on a product before releasing it to users? Maintenance Phase Given an extensive list of suggested product improvements, which ones should we implement first? Phase-out Given an aging, hard-to-modify software product, should we replace it with a new product, restructure it, or leave it alone? 8 Hamdard Univeristy
9
SW Engg & Economics Hamdard Univeristy 9
10
Software Engineering Economic SW Engineering & Economics Software engineering economics is about making decisions related to software engineering in a business context (biz justification). Success of a software product, service, and solution depends on good business management. In many organizations, software business relationships to software development and engineering remain vague. 10 Hamdard Univeristy
11
Software Engineering Economic SW Engineering & Economics Economics is the study of value, costs, resources, and their relationship in a given context or situation related to financial benefits (Biz). In the discipline of software engineering, activities have costs, but the resulting software itself has economic attributes as well. Software engineering economics provides a way to study the attributes of software and software processes in a systematic way that relates them to economic measures. 11 Hamdard Univeristy
12
Software Engineering Economic SW Engineering & Economics Economic measures can be weighed and analyzed when making decisions that are within the scope of a software house and those within the integrated scope of an entire production or acquiring business. Software engineering economics is concerned with aligning software technical decisions with the business goals of the organization. 12 Hamdard Univeristy
13
Software Engineering Economic SW Engineering & Economics Decisions like “Should we use a specific component?” may look easy from a technical perspective, but can have serious implications on the business viability of a software project and the resulting product. Often engineers wonder whether such concerns apply at all, as they are “only engineers.” Economic analysis and decision-making are important engineering considerations because engineers are capable of evaluating decisions both technically and from a business perspective. Hamdard Univeristy
14
14 Fundamental Concepts
15
Software Engineering Economic Fundamental Concepts Finance Finance is the branch of economics concerned with issues such as allocation, management, acquisition, and investment of resources. Finance is an element of every organization, including software houses. Finance deals with what was the budgeted money and how much is actually spent. Finance is concerned with providing the funds for an organization’s activities. This involves balancing risk and profitability, while attempting to maximize an organization’s wealth and the value of its stock. 15 Hamdard Univeristy
16
Software Engineering Economic Fundamental Concepts Accounting The primary role of accounting is to measure the organization’s actual financial performance. Also to communicate financial information about a business entity to stakeholders, such as Shareholders Financial auditors Investors Accounting is part of finance. It allows people whose money is being used to run an organization to know the results of their investment. 16 Hamdard Univeristy
17
Software Engineering Economic Fundamental Concepts Controlling Controlling is an element of finance and accounting. Controlling involves measuring and correcting the performance of finance and accounting. It ensures that an organization’s objectives and plans are accomplished. Controlling cost is to detect variances of actual costs from planned costs. 17 Hamdard Univeristy
18
Software Engineering Economic Fundamental Concepts Cash Flow Cash flow is the movement of money into or out of a business, project, or financial product over a given period. The concepts of cash flow instances and cash flow streams are used to describe the business perspective of a proposal. To make a meaningful business decision about any specific proposal, that proposal will need to be evaluated from a business perspective. 18 Hamdard Univeristy
19
Software Engineering Economic Economics Fundamentals Cash Flow The term cash flow stream refers to the set of cash flow instances over time that is caused by carrying out some given proposal. The cash flow stream is, in effect, the complete financial picture of that proposal. How much money goes out? When does it go out? How much money comes in? When does it come in? 19 Hamdard Univeristy
20
Software Engineering Economic Economics Fundamentals Decision-Making Process If we assume that candidate solution solve a given technical problem equally well, why should the organization care which one is chosen ? The answer is that there is usually a large difference in the costs and incomes from the different solutions. Commercial, off-the-shelf, object request broker product might cost a few thousand dollars, but the effort to develop a homegrown service that gives the same functionality could easily cost several hundred times that amount (build or buy). 20 Hamdard Univeristy
21
Software Engineering Economic Fundamental Concepts Decision-Making Process If the candidate solutions all adequately solve the problem from a technical perspective, then the selection of the most appropriate alternative should be based on commercial factors such as Optimizing total cost of ownership (TCO) Maximizing the short-term return on investment (ROI) A systematic process for making decisions will achieve transparency and allow later justification. Governance criteria in many organizations demand selection from at least two alternatives. 21 Hamdard Univeristy
22
Software Engineering Economic Fundamental Concepts Decision-Making Process 22 1)It starts with a business challenge (problem) at hand 2)Define the steps to identify alternative solutions 3)Define selection criteria 4)Evaluate the solutions 5)implement one selected solution 6)Monitor the performance of that solution Hamdard Univeristy 1 2 3 4 5 6
23
Software Engineering Economic Fundamental Concepts Valuation A financial basis for value-based comparison is comparing two or more cash flows. Several bases of comparison are available, including.. Present worth Future worth Internal rate of return Payback period 23 Hamdard Univeristy
24
Software Engineering Economic Fundamental Concepts Valuation The decision-making process— be it financial decision making or other— is about maximizing value. The alternative that maximizes total value should always be chosen. Note that value can’t always be expressed in terms of money. For example, whether an item is a brand name or not can significantly affect its perceived value. Relevant values that can’t be expressed in terms of money still need to be expressed in similar terms so that they can be evaluated objectively. 24 Hamdard Univeristy
25
Software Engineering Economic Fundamental Concepts Inflation and Depreciation Inflation describes long-term trends in prices. Inflation means that the same things cost more than they did before. If the planning horizon of a business decision is longer than a few years, or if the inflation rate is over a couple of percentage points annually, it can cause noticeable changes in the value of a proposal. The present time value therefore needs to be adjusted for inflation rates and also for exchange rate fluctuations. 25 Hamdard Univeristy
26
Software Engineering Economic Fundamental Concepts Time-Value of Money One of the most fundamental concepts in finance—and therefore, in business decisions— is that money has time-value: its value changes over time. A specific amount of money right now almost always has a different value than the same amount of money at some other time. This concept has been around since the earliest recorded human history and is commonly known as time-value. 26 Hamdard Univeristy
27
Software Engineering Economic Fundamental Concepts Time-Value of Money In order to compare proposals or portfolio elements, they should be normalized in cost, value, and risk to the net present value. Currency exchange variations over time need to be taken into account based on historical data. This is particularly important in cross-border developments of all kinds. 27 Hamdard Univeristy
28
Software Engineering Economic Fundamental Concepts Efficiency Efficiency means “doing things right.” Economic efficiency of a process, activity, or task is the ratio of resources actually consumed to resources expected to be consumed in accomplishing the process, activity, or task. An efficient behavior, like an effective behavior, delivers results—but keeps the necessary effort to a minimum. Factors that may affect efficiency in software engineering include product complexity, quality requirements time pressure, process capability team distribution, interrupts feature churn, tools and programming language 28 Hamdard Univeristy
29
Software Engineering Economic Fundamental Concepts Productivity Productivity is the ratio of output over input from an economic perspective. Output is the value delivered. Input covers all resources (e.g., effort) spent to generate the output. Productivity combines efficiency and effectiveness from a value oriented perspective: maximizing productivity is about generating highest value with lowest resource consumption. 29 Hamdard Univeristy
30
Software Engineering Economic Factors affecting productivity Application domain experience Quality development process have matured process in the organization Project Size Large size need bigger team and proper communication is required Technology Support SCM tool, MS-Project, Visio etc Working Environment 30 Hamdard Univeristy
31
Hamdard University
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.