Software Engineering Economics SE 361 Lecture03 ENGINEERING ECONOMY

  • Slides: 23
Download presentation
Software Engineering Economics SE 361 Lecture-03

Software Engineering Economics SE 361 Lecture-03

ENGINEERING ECONOMY

ENGINEERING ECONOMY

Origins of Engineering Economy

Origins of Engineering Economy

GENERAL TOPICS IN ENGINEERING ECONOMY

GENERAL TOPICS IN ENGINEERING ECONOMY

THE RELEVANCE OF ENGINEERING ECONOMY TO ENGINEERING IN Science is defined as: GENERAL a

THE RELEVANCE OF ENGINEERING ECONOMY TO ENGINEERING IN Science is defined as: GENERAL a department of systematized knowledge as an object of study; knowledge or a system of knowledge covering general truths or the operation of general laws esp. as obtained and tested through scientific method.

Cont…… Authority for accrediting engineering and technology degree programs at colleges and universities in

Cont…… Authority for accrediting engineering and technology degree programs at colleges and universities in the United States. ABET defines engineering as…. The profession in which acknowledge of the mathematical and natural sciences gained by study, experience, and practice is applied with judgment to develop ways to utilize, economically, the materials and forces of nature for the benefit of mankind.

Cont…… Engineering = Science + Economics Software Engineering = Computer Science + Software Economics

Cont…… Engineering = Science + Economics Software Engineering = Computer Science + Software Economics

FUNDAMENTAL PRINCIPLES IN ENGINEERINGECONOMICS � Principle 1: Rupee now is worth more than rupee

FUNDAMENTAL PRINCIPLES IN ENGINEERINGECONOMICS � Principle 1: Rupee now is worth more than rupee at a later time. � Principle 2: All that counts is the differences among alternatives. � Principle 3: Marginal revenue must exceed marginal cost. � Principle 4: Additional risk is not taken without the expected additional return.

PRINCIPLES OF ENGINEERING ECONOMY

PRINCIPLES OF ENGINEERING ECONOMY

DEVELOP THE ALTERNATIVES

DEVELOP THE ALTERNATIVES

FOCUS ON THE DIFFERENCES Only the differences in expected future outcomes among the alternatives

FOCUS ON THE DIFFERENCES Only the differences in expected future outcomes among the alternatives are relevant to their comparison and should be considered in the decision.

USE A CONSISTENT VIEWPOINT Other, should be consistently developed from a defined viewpoint (perspective).

USE A CONSISTENT VIEWPOINT Other, should be consistently developed from a defined viewpoint (perspective).

USE A COMMON UNIT OF MEASURE

USE A COMMON UNIT OF MEASURE

CONSIDER ALL RELEVANT CRITERIA � Selection of a preferred alternative (decision making) requires the

CONSIDER ALL RELEVANT CRITERIA � Selection of a preferred alternative (decision making) requires the use of a criterion (or several criteria). � The decision process should consider the outcomes enumerated in the monetary unit and those expressed in some other unit of measurement or made explicit in a descriptive manner. Systematic Decision Process

5 STEPS OF DECISION MAKING 1. 2. 3. 4. 5. Define the opportunity Identify

5 STEPS OF DECISION MAKING 1. 2. 3. 4. 5. Define the opportunity Identify and analyze alternative courses of action Estimate their effects on the problem or opportunity choose a preferred course of action To implement the choice Evaluate the results and proceed with any follow up if necessary

MAKE UNCERTAINTY EXPLICIT Uncertainty is inherent in projecting (or estimating) the future outcomes of

MAKE UNCERTAINTY EXPLICIT Uncertainty is inherent in projecting (or estimating) the future outcomes of the alternatives and should be recognized in their analysis and comparison. �Outcome Analysis �Risk Management

REVISIT YOUR DECISIONS Improved decision making results from an adaptive process; to the extent

REVISIT YOUR DECISIONS Improved decision making results from an adaptive process; to the extent practicable, the initial projected outcomes of the selected alternative should be subsequently compared with actual results achieved. Decision Review

WHY SHOULD WE SOFTWARE FOLK CARE ABOUT ECONOMICS The answer lies in our chances

WHY SHOULD WE SOFTWARE FOLK CARE ABOUT ECONOMICS The answer lies in our chances of survival in the capitalist environment. And that, in turn, depends on how high our shop sets the bar for its notion of software success.

DEFINITIONS OF “SUCCESS” IN SHOPS 1. Success: We’re still here at the end of

DEFINITIONS OF “SUCCESS” IN SHOPS 1. Success: We’re still here at the end of the project. 2. Success: We’re still here at the end of the project and we’ve written a bunch of code. 3. Success: We’re still here at the end of the project and we we’ve written a bunch of code that runs.

Cont…. . 4. Success: We’re still here at the end of the project and

Cont…. . 4. Success: We’re still here at the end of the project and we have a bunch of code (from various sources) that does something useful. 5. Success: We’re still here at the end of the project and we have implemented cost effective solutions to real business problems and cost-effective exploitations of real business opportunities, involving a combination of manual and automated systems.

SOFTWARE ECONOMICS � Software economics has often been misconceived as the means of estimating

SOFTWARE ECONOMICS � Software economics has often been misconceived as the means of estimating the cost of programming projects. But economics is primarily a science of choice, and software economics should provide methods and models for analyzing the choices that software projects must make. � In and any software project there is always a balance between short-term and long-term concerns. . . economic methods can help us make enlightened choices.

SOFTWARE PROFESSIONALS ARE FACED WITH CHOICES EVERY DAY. � “Should we even do the

SOFTWARE PROFESSIONALS ARE FACED WITH CHOICES EVERY DAY. � “Should we even do the Alpha project? ” � “How much testing is enough? ” � “Should the Omega project use the Rational Unified Process [Kruchten 00] or would extreme Programming or one of the other Agile methods be better? ” � “What algorithm should we use in module Gamma? ”

SOFTWARE ECONOMICS � “Should the data structure be a linked list or an array?

SOFTWARE ECONOMICS � “Should the data structure be a linked list or an array? ”, and so on. � Apparently safe choices can have a noticeable effect on the organization’s finances. � At a minimum, a poor choice on something as seemingly insignificant as an algorithm or data structure could lead to inadequate performance, low maintainability, or defects and lead to unnecessary downstream maintenance.