Software Engineering – Concepts and Implementations

Total Page:16

File Type:pdf, Size:1020Kb

Software Engineering – Concepts and Implementations Software Engineering – Concepts and Implementations Course Designer and Acquisition Editor Centre for Information Technology and Engineering Manonmaniam Sundaranar University Tirunelveli Software Engineering – Concepts and Implementation Centre for Information Technology and Engineering, Manonmaniam Sundaranar University CONTENTS Lecture 1 THE PRODUCT 1 Software Software Characteristics Software Components Software Applications Software A Crisis on the Horizon Software myths Lecture 2 PROCESS 13 Software Engineering – A Layered Technology Process, Methods, and Tools A Generic view of Software Engineering The Software Process Software process models Linear Sequential Models The Incremental model The formal methods Model Lecture 3 PROJECT MANAGEMENT CONCEPT 26 The management Spectrum People The Problem Problem decomposition The process Process Decomposition The Project Lecture 4 SOFTWARE PROJECT PLANNING – I 40 Observations on Estimating Project Planning Objectives Software Scope Obtaining Information Necessary for Scope A scoping Example Resources Human Resources Reusable Software Resources Environmental Resources Centre for Information Technology and Engineering, Manonmaniam Sundaranar University Lecture 5 SOFTWARE PROJECT PLANNING – II 50 Decomposition Techniques Problem Based Estimations An example of LOC Based Estimation Lecture 6 RISK MANAGEMENT 58 Reactive Vs. Proactive Risk Strategies Software Risks Risk Identification Risk projection Risk Mitigation, Monitoring and Management Safety Risk and Hazards Lecture 7 PROJECT SHCEDULING AND TRACKING – I 74 Comments on “Lateness” Basic Principles The Relationship Between People and Effort An Empirical Relationship Effort Distribution Defining a Task Set for the Software Project Degree of Rigor Defining Adaption Criteria Computing a Task Set Selector Value Interpreting the TSS value and Selecting the Task Set Lecture 8 PROJECT SCHUDELING AND TRACKING – II 85 Selecting Software Engineering Tasks Refinement of major Tasks Defining a Tasks Network Scheduling Timeline Charts Tracking the Schedule The Project Plan Lecture 9 SOFTWARE QUALITY ASSURANCE – I 97 Quality concept The Quality Movement Software Quality Assurance Software Reviews Lecture 10 SOFTWARE QUALITY ASSURACNE – II 108 Formal Techniques Reviews Formal Approaches to SQA Centre for Information Technology and Engineering, Manonmaniam Sundaranar University Statistical Quality Assurance Software Reliability The SQA Plan The ISO 9000 Quality Standards Lecture 11 SOFTWARE CONFIGURATION MANAGEMENT 123 Software Configuration management The SCM process Identification of Objects in the Software Configuration Version Control Change Control Configuration Audit Status Reporting SCM Standards Lecture 12 SYSTEM ENGINEERING – I 139 The System Engineering Hierarchy System Modeling Information Engineering : An Overview Product Engineering : An overview Information Engineering Lecture 13 SYSTEM ENGINEERING – II 150 Information Strategy Planning Enterprise modeling ‘Business Level Data Modeling Business Area Analysis Information flow modeling Lecture 14 SYSTEM ENGINEERING - III 161 Product Engineering Modeling The System Architecture System modeling and Simulation System Specification Lecture 15 ANALYSIS MODELING – I 175 The Elements of the Analysis model Data Modeling Data Objects, Attributes and Relationships Cardinality and modality Entity Relationship Diagrams Function modeling and information flow Centre for Information Technology and Engineering, Manonmaniam Sundaranar University Data Flow Diagrams Extensions for Real Time Systems Ward and Mellor Extension Hately and Pirbhai Extension Lecture 16 ANALYSIS MODELING –II 192 Behavioral Modeling The mechanic of Structured Analysis Creating an Entity Relationship Diagram Creating a Data flow model Creating a Control flow Model The Control Specification The Process Specification Lecture 17 ANALYSIS MODELING – III 207 Data Dictionary An Overview of other Classical Analysis methods Data Structured System Development Jackson System Development SADT Lecture 18 DESIGN CONCEPTS AND PRINCIPLES – I 214 Software Design and Software Engineering The Design Process Design Principle Design Concepts Lecture 19 DESIGN CONCEPTS AND PRINCIPLES – II 230 Functional independence Design Heuristics for Effective modularity The Design model Design Documentation Lecture 20 DESIGN METHODS – I 241 Architectural design The Architectural Design process Transform Mapping Transaction Mapping Sign Postprocessing Lecture 21 DISCUSSION Centre for Information Technology and Engineering, Manonmaniam Sundaranar University Lecture 22 DESIGN METHODS – II 262 Architectural Design optimization Interface Design Human Computer interface Design General Interaction Procedural Design Lecture 23 DISCUSSION Lecture 24 DESIGN FOR REAL TIME-I 284 Real Time Systems Integration and performance Issues Interrupt handling Real time databases Real Time Operating Systems Real Time Languages Task Synchronization and Communications Lecture 25 DESIGN FOR REAL TIME – II 293 Analysis and Simulation of Real Time Systems Real Time Design Syllabus 306 YZ Centre for Information Technology and Engineering, Manonmaniam Sundaranar University The Product Lecture 1 The Product Objectives In this lecture you will learn the following á Software characteristics á Software components á Software applications á Software myths Centre for Information Technology and Engineering, Manonmaniam Sundaranar University 1 Software Engineering – Concepts & Implementation Coverage Plan Lecture 1 1.1 Snap shot the evolving role of software 1.2 Software 1.3 Software Characteristics 1.4 Software Components 1.5 Software Applications 1.6 Software: a crisis on the horizon 1.7 Software Myths 1.8 Short Summary 1.9 Brain Storm Centre for Information Technology and Engineering, Manonmaniam Sundaranar University 2 The Product 1.1 Snap Shot Today software takes on a dual role. It is a product and at the same time the vehicle for deliveritn a product. As a product it delivers the computing potential embodied by computer hardware. Whether it resides within a cellular phone or operates inside a mainframe computer software is an information transformer producing, managing, acquiring modifying , displaying or transmitting information that can be as simple as a signle bit or as complex as a multimedia simulation. As the vehicle used to deliver the product softwre acts as the basis for the control of the computer (operation sytems) the communication of inforamtion (networks) and the creation and control of other programs (software tools and environments). Software delivers what many believe will be the most importatnt prodcut of the twenty-first century informatiion. Software transfroms personal data(e.g., an individual financial transactions) so that the data can be more useful in a local context it manages business information to enhance competiveness it provides a gateway to world wide inforamtion networks(e.g., the Internet) ; and it provides the means for acquirring information in all of its forms. 1.2 Software In 1970s less than 1 percent of the public could have intelligently d4escribed what “computer software “ meant. Today most professionals and many member of the public at large feel that they understand software. But do they? A textbook description of software might take the following form: Software is (1) instructions (computer programs) that when executed provide desired function and performance (2) data structures that enable the programs to adequately manipulate information and (3) documents that describe the operation and use of the programs. There is no question that other more complete definitions could be offered. But we need more than a formal definition. 1.3. Software Characteristics To gain an understanding of software (and ultimately an understanding of software engineering) it is important to examine the characteristic of software that make it different from other things that human beings build. When hardware is built the human creative process(analysis, design, construction) is ultimately translated into a physical form. If we build a new computer our initial sketches formal design drawings and bread boarded prototypes evolve into a physical product (VLSI chips, circuit boards, power supplies etc). Software is a logical rather than a physical system element. Therefore software has characteristic that differ considerably from those of hardware. Software is developed or engineered, it is not manufactured in the classical sense. Although some similarities exist between software development and hardware manufacture the two activities are fundamentally different. In both activities high quality is achieved through good design but the manufacturing phase for hardware can introduce quality problems that are nonexistent (or easily corrected) for software. Both activities depend on people but the relationship between people applied and work accomplished is entirely different. Centre for Information Technology and Engineering, Manonmaniam Sundaranar University 3 Software Engineering – Concepts & Implementation Software doesn’t wear out. Figure 1.1 depicts failure rate as a function of time for hardware. The relationship, often called the “bathtub curve”, indicates that hardware exhibits relatively high failure rates early in its life (these failures are often attributable to design or manufacturing defects) defects are corrected, and the failure
Recommended publications
  • Minimax TD-Learning with Neural Nets in a Markov Game
    Minimax TD-Learning with Neural Nets in a Markov Game Fredrik A. Dahl and Ole Martin Halck Norwegian Defence Research Establishment (FFI) P.O. Box 25, NO-2027 Kjeller, Norway {Fredrik-A.Dahl, Ole-Martin.Halck}@ffi.no Abstract. A minimax version of temporal difference learning (minimax TD- learning) is given, similar to minimax Q-learning. The algorithm is used to train a neural net to play Campaign, a two-player zero-sum game with imperfect information of the Markov game class. Two different evaluation criteria for evaluating game-playing agents are used, and their relation to game theory is shown. Also practical aspects of linear programming and fictitious play used for solving matrix games are discussed. 1 Introduction An important challenge to artificial intelligence (AI) in general, and machine learning in particular, is the development of agents that handle uncertainty in a rational way. This is particularly true when the uncertainty is connected with the behavior of other agents. Game theory is the branch of mathematics that deals with these problems, and indeed games have always been an important arena for testing and developing AI. However, almost all of this effort has gone into deterministic games like chess, go, othello and checkers. Although these are complex problem domains, uncertainty is not their major challenge. With the successful application of temporal difference learning, as defined by Sutton [1], to the dice game of backgammon by Tesauro [2], random games were included as a standard testing ground. But even backgammon features perfect information, which implies that both players always have the same information about the state of the game.
    [Show full text]
  • Bayesian Games Professors Greenwald 2018-01-31
    Bayesian Games Professors Greenwald 2018-01-31 We describe incomplete-information, or Bayesian, normal-form games (formally; no examples), and corresponding equilibrium concepts. 1 A Bayesian Model of Interaction A Bayesian, or incomplete information, game is a generalization of a complete-information game. Recall that in a complete-information game, the game is assumed to be common knowledge. In a Bayesian game, in addition to what is common knowledge, players may have private information. This private information is captured by the notion of an epistemic type, which describes a player’s knowledge. The Bayesian-game formalism makes two simplifying assumptions: • Any information that is privy to any of the players pertains only to utilities. In all realizations of a Bayesian game, the number of players and their actions are identical. • Players maintain beliefs about the game (i.e., about utilities) in the form of a probability distribution over types. Prior to receiving any private information, this probability distribution is common knowledge: i.e., it is a common prior. After receiving private information, players conditional on this information to update their beliefs. As a consequence of the com- mon prior assumption, any differences in beliefs can be attributed entirely to differences in information. Rational players are again assumed to maximize their utility. But further, they are assumed to update their beliefs when they obtain new information via Bayes’ rule. Thus, in a Bayesian game, in addition to players, actions, and utilities, there is a type space T = ∏i2[n] Ti, where Ti is the type space of player i.There is also a common prior F, which is a probability distribution over type profiles.
    [Show full text]
  • Outline for Static Games of Complete Information I
    Outline for Static Games of Complete Information I. Definition of a game II. Examples III. Definition of Nash equilibrium IV. Examples, continued V. Iterated elimination of dominated strategies VI. Mixed strategies VII. Existence theorem on Nash equilibria VIII. The Hotelling model and extensions Copyright © 2004 by Lawrence M. Ausubel Definition: An n-player, static game of complete information consists of an n-tuple of strategy sets and an n-tuple of payoff functions, denoted by G = {S1, … , Sn; u1, … , un} Si, the strategy set of player i, is the set of all permissible moves for player i. We write si ∈ Si for one of player i’s strategies. ui, the payoff function of player i, is the utility, profit, etc. for player i, and depends on the strategies chosen by all the players: ui(s1, … , sn). Example: Prisoners’ Dilemma Prisoner II Remain Confess Silent Remain –1 , –1 –5 , 0 Prisoner Silent I Confess 0, –5 –4 ,–4 Example: Battle of the Sexes F Boxing Ballet Boxing 2, 1 0, 0 M Ballet 0, 0 1, 2 Definition: A Nash equilibrium of G (in pure strategies) consists of a strategy for every player with the property that no player can improve her payoff by unilaterally deviating: (s1*, … , sn*) with the property that, for every player i: ui (s1*, … , si–1*, si*, si+1*, … , sn*) ≥ ui (s1*, … , si–1*, si, si+1*, … , sn*) for all si ∈ Si. Equivalently, a Nash equilibrium is a mutual best response. That is, for every player i, si* is a solution to: ***** susssssiiiiin∈arg max{ (111 , ... ,−+ , , , ... , )} sSii∈ Example: Prisoners’ Dilemma Prisoner II
    [Show full text]
  • Efficiency and Welfare in Economies with Incomplete Information∗
    Efficiency and Welfare in Economies with Incomplete Information∗ George-Marios Angeletos Alessandro Pavan MIT, NBER, and FRB of Minneapolis Northwestern University September 2005. Abstract This paper examines a class of economies with externalities, strategic complementarity or substitutability, and incomplete information. We first characterize efficient allocations and com- pare them to equilibrium. We show how the optimal degree of coordination and the efficient use of information depend on the primitives of the environment, and how this relates to the welfare losses due to volatility and heterogeneity. We next examine the social value of informa- tion in equilibrium. When the equilibrium is efficient, welfare increases with the transparency of information if and only if agents’ actions are strategic complements. When the equilibrium is inefficient, additional effects are introduced by the interaction of externalities and informa- tion. We conclude with a few applications, including investment complementarities, inefficient fluctuations, and market competition. Keywords: Social value of information, coordination, higher-order beliefs, externalities, transparency. ∗An earlier version of this paper was entitled “Social Value of Information and Coordination.” For useful com- ments we thank Daron Acemoglu, Gadi Barlevi, Olivier Blanchard, Marco Bassetto, Christian Hellwig, Kiminori Matsuyama, Stephen Morris, Thomas Sargent, and especially Ivàn Werning. Email Addresses: [email protected], [email protected]. 1Introduction Is coordination socially desirable? Do markets use available information efficiently? Is the private collection of information good from a social perspective? What are the welfare effects of the public information disseminated by prices, market experts, or the media? Should central banks and policy makers disclose the information they collect and the forecasts they make about the economy in a transparent and timely fashion, or is there room for “constructive ambiguity”? These questions are non-trivial.
    [Show full text]
  • Lecture 3 1 Introduction to Game Theory 2 Games of Complete
    CSCI699: Topics in Learning and Game Theory Lecture 3 Lecturer: Shaddin Dughmi Scribes: Brendan Avent, Cheng Cheng 1 Introduction to Game Theory Game theory is the mathematical study of interaction among rational decision makers. The goal of game theory is to predict how agents behave in a game. For instance, poker, chess, and rock-paper-scissors are all forms of widely studied games. To formally define the concepts in game theory, we use Bayesian Decision Theory. Explicitly: • Ω is the set of future states. For example, in rock-paper-scissors, the future states can be 0 for a tie, 1 for a win, and -1 for a loss. • A is the set of possible actions. For example, the hand form of rock, paper, scissors in the game of rock-paper-scissors. • For each a ∈ A, there is a distribution x(a) ∈ Ω for which an agent believes he will receive ω ∼ x(a) if he takes action a. • A rational agent will choose an action according to Expected Utility theory; that is, each agent has their own utility function u :Ω → R, and chooses an action a∗ ∈ A that maximizes the expected utility . ∗ – Formally, a ∈ arg max E [u(ω)]. a∈A ω∼x(a) – If there are multiple actions that yield the same maximized expected utility, the agent may randomly choose among them. 2 Games of Complete Information 2.1 Normal Form Games In games of complete information, players act simultaneously and each player’s utility is determined by his actions as well as other players’ actions. The payoff structure of 1 2 GAMES OF COMPLETE INFORMATION 2 the game (i.e., the map from action profiles to utility vectors) is common knowledge to all players in the game.
    [Show full text]
  • Bayesian Games with Intentions
    Bayesian Games with Intentions Adam Bjorndahl Joseph Y. Halpern Rafael Pass Carnegie Mellon University Cornell University Cornell University Philosophy Computer Science Computer Science Pittsburgh, PA 15213 Ithaca, NY 14853 Ithaca, NY 14853 [email protected] [email protected] [email protected] We show that standard Bayesian games cannot represent the full spectrum of belief-dependentprefer- ences. However, by introducing a fundamental distinction between intended and actual strategies, we remove this limitation. We define Bayesian games with intentions, generalizing both Bayesian games and psychological games [5], and prove that Nash equilibria in psychological games correspond to a special class of equilibria as defined in our setting. 1 Introduction Type spaces were introduced by John Harsanyi [6] as a formal mechanism for modeling games of in- complete information where there is uncertainty about players’ payoff functions. Broadly speaking, types are taken to encode payoff-relevant information, a typical example being how each participant val- ues the items in an auction. An important feature of this formalism is that types also encode beliefs about types. Thus, a type encodes not only a player’s beliefs about other players’ payoff functions, but a whole belief hierarchy: a player’s beliefs about other players’ beliefs, their beliefs about other players’ beliefs about other players’ beliefs, and so on. This latter point has been enthusiastically embraced by the epistemic game theory community, where type spaces have been co-opted for the analysis of games of complete information. In this context, types encode beliefs about the strategies used by other players in the game as well as their types.
    [Show full text]
  • Part II Dynamic Games of Complete Information
    Part II Dynamic Games of Complete Information 83 84 This is page 8 Printer: Opaq 10 Preliminaries As we have seen, the normal form representation is a very general way of putting a formal structure on strategic situations, thus allowing us to analyze the game and reach some conclusions about what will result from the particular situation at hand. However, one obvious drawback of the normal form is its difficulty in capturing time. That is, there is a sense in which players’ strategy sets correspond to what they can do, and how the combination of their actions affect each others payoffs, but how is the order of moves captured? More important, if there is a well defined order of moves, will this have an effect on what we would label as a reasonable prediction of our model? Example: Sequencing the Cournot Game: Stackelberg Competition Consider our familiar Cournot game with demand P = 100 − q, q = q1 + q2,and ci(qi)=0for i ∈{1, 2}. We have already solved for the best response choices of each firm, by solving their maximum profit function when each takes the other’s quantity as fixed, that is, taking qj as fixed, each i solves: max (100 − qi − qj)qi , qi 86 10. Preliminaries and the best response is then, 100 − q q = j . i 2 Now lets change a small detail of the game, and assume that first, firm 1 will choose q1, and before firm 2 makes its choice of q2 it will observe the choice made by firm 1. From the fact that firm 2 maximizes its profit when q1 is already known, it should be clear that firm 2 will follow its best response function, since it not only has a belief, but this belief must be correct due to the observation of q1.
    [Show full text]
  • Ex-Post Stability in Large Games (Draft, Comments Welcome)
    EX-POST STABILITY IN LARGE GAMES (DRAFT, COMMENTS WELCOME) EHUD KALAI Abstract. The equilibria of strategic games with many semi-anonymous play- ers have a strong ex-post Nash property. Even with perfect hindsight about the realized types and selected actions of all his opponents, no player has an incentive to revise his own chosen action. This is illustrated for normal form and for one shot Baysian games with statistically independent types, provided that a certain continuity condition holds. Implications of this phenomenon include strong robustness properties of such equilibria and strong purification result for large anonymous games. 1. Introduction and Summary In a one-shot game with many semi-anonymous players all the equilibria are approximately ex-post Nash. Even with perfect hindsight about the realized types and actions of all his opponents, no player regrets, or has an incentive to unilaterally change his own selected action. This phenomenon holds for normal form games and for one shot Bayesian games with statistically independent types, provided that the payoff functions are continuous. Moreover, the ex-post Nash property is obtained uniformly, simultaneously for all the equilibria of all the games in certain large classes, at an exponential rate in the number of players. When restricted to normal form games, the above means that with probability close to one, the play of any mixed strategy equilibrium must produce a vector of pure strategies that is an epsilon equilibrium of the game. At an equilibrium of a Bayesian game, the vector of realized pure actions must be an epsilon equilibrium of the complete information game in which the realized vector of player types is common knowledge.
    [Show full text]
  • The Role of Imperfect Information
    Chapter 3.1 The Role of Imperfect Information An obvious source of approaches to strategy formulation is the field of classical strategic games. Classical game-tree search techniques have been highly success- ful in classical games of strategy such as chess, checkers, othello, backgammon, and the like. However, all of these games are perfect-information games: each player has perfect information about the current state of the game at all points during the game. Unlike classical strategic games, practical adversarial reason- ing problems force the decision-maker to solve the problem in the environment of highly imperfect information. Some of the game-tree search techniques used for perfect-information games can also be used in imperfect-information games, but only with substantial modifications. In this chapter,1 we classify and describe techniques for game-tree search in imperfect information games. In addition, we offer case studies of how these techniques have been applied to two imperfect-information games: Texas Hold’em, which is a well-known poker variant, and kriegspiel chess, an imperfect- information variant of chess that is the progenitor of modern military wargaming [15]. Classical Game-Tree Search In order to understand how to use game-tree search in imperfect-information games, it is first necessary to understand how it works in perfect-information games. Most game-tree search algorithms have been designed for use on games that satisfy the following assumptions: 1This work was supported by the following grants, contracts, and awards: ARO grant DAAD190310202, ARL grants DAAD190320026 and DAAL0197K0135, the ARL CTAs on Telecommunications and Advanced Decision Architectures, NSF grants IIS0329851, 0205489 and IIS0412812, UC Berkeley contract number SA451832441 (subcontract from DARPA’s REAL program).
    [Show full text]
  • On Information Design in Games
    On Information Design in Games Laurent Mathevet Jacopo Perego Ina Taneva New York University Columbia University University of Edinburgh February 6, 2020 Abstract Information provision in games influences behavior by affecting agents' be- liefs about the state, as well as their higher-order beliefs. We first characterize the extent to which a designer can manipulate agents' beliefs by disclosing in- formation. We then describe the structure of optimal belief distributions, including a concave-envelope representation that subsumes the single-agent result of Kamenica and Gentzkow(2011). This result holds under various solution concepts and outcome selection rules. Finally, we use our approach to compute an optimal information structure in an investment game under adversarial equilibrium selection. Keywords: information design, belief manipulation, belief distributions, ex- tremal decomposition, concavification. JEL Classification: C72, D82, D83. We are grateful to the editor, Emir Kamenica, and to three anonymous referees for their comments and suggestions, which significantly improved the paper. Special thanks are due to Anne-Katrin Roesler for her insightful comments as a discussant at the 2016 Cowles Foundation conference, and to Philippe Jehiel, Elliot Lipnowski, Stephen Morris, David Pearce, J´ozsefS´akovics, and Siyang Xiong for their helpful comments and conversations. We are also grateful to Andrew Clausen, Olivier Compte, Jon Eguia, Willemien Kets, Matt Jackson, Qingmin Liu, Efe Ok, Ennio Stacchetti, and Max Stinchcombe, as well as to seminar audiences at Columbia University, Institut d’An`alisiEcon`omica,New York University, Michigan State University, Paris School of Economics, Stony Brook University, University of Cambridge, University of Edinburgh, UT Austin, the SIRE BIC Workshop, the 2016 Decentralization conference, the 2016 Canadian Economic Theory con- ference, the 2016 Cowles Foundation conference, the 2016 North American Summer Meeting of the Econometric Society, and SAET 2017.
    [Show full text]
  • Bayesian Action-Graph Games
    Bayesian Action-Graph Games Albert Xin Jiang Kevin Leyton-Brown Department of Computer Science Department of Computer Science University of British Columbia University of British Columbia [email protected] [email protected] Abstract Games of incomplete information, or Bayesian games, are an important game- theoretic model and have many applications in economics. We propose Bayesian action-graph games (BAGGs), a novel graphical representation for Bayesian games. BAGGs can represent arbitrary Bayesian games, and furthermore can compactly express Bayesian games exhibiting commonly encountered types of structure in- cluding symmetry, action- and type-specific utility independence, and probabilistic independence of type distributions. We provide an algorithm for computing ex- pected utility in BAGGs, and discuss conditions under which the algorithm runs in polynomial time. Bayes-Nash equilibria of BAGGs can be computed by adapting existing algorithms for complete-information normal form games and leveraging our expected utility algorithm. We show both theoretically and empirically that our approaches improve significantly on the state of the art. 1 Introduction In the last decade, there has been much research at the interface of computer science and game theory (see e.g. [19, 22]). One fundamental class of computational problems in game theory is the computation of solution concepts of a finite game. Much of current research on computation of solution concepts has focused on complete-information games, in which the game being played is common knowledge among the players. However, in many multi-agent situations, players are uncertain about the game being played. Harsanyi [10] proposed games of incomplete information (or Bayesian games) as a mathematical model of such interactions.
    [Show full text]
  • Externalities
    7 Externalities 7.1 Introduction An externality is a link between economic agents that lies outside the price system of the economy. Everyday examples include the pollution from a factory that harms a local fishery and the envy that is felt when a neighbor proudly displays a new car. Such externalities are not controlled directly by the choices of those a¤ected—the fishery cannot choose to buy less pollution nor can you choose to buy your neighbor a worse car. This prevents the e‰ciency theorems described in chapter 2 from applying. Indeed, the demonstration of market e‰ciency was based on the following two presumptions: f The welfare of each consumer depended solely on her own consumption decision. f The production of each firm depended only on its own input and output choices. In reality, these presumptions may not be met. A consumer or a firm may be directly a¤ected by the actions of other agents in the economy; that is, there may be external e¤ects from the actions of other consumers or firms. In the pres- ence of such externalities the outcome of a competitive market is unlikely to be Pareto-e‰cient because agents will not take account of the external e¤ects of their (consumption/production) decisions. Typically the economy will generate too great a quantity of ‘‘bad’’ externalities and too small a quantity of ‘‘good’’ externalities. The control of externalities is an issue of increasing practical importance. Global warming and the destruction of the ozone layer are two of the most signif- icant examples, but there are numerous others, from local to global environmental issues.
    [Show full text]