Decision Making in the Software Life Cycle Using Microeconomic Models Mr. Peleg Yiftachel supervised by Prof. Dan Peled Dr. Eitan Farchi Software Development Phases Requirements Specification System & Software Design Implementation & Unit Testing Integration & System Testing Operation & Maintenance 2 The Research Question What is the most profitable allocation of project resources among the different software production phases – – – – Requirements Design Implementation Testing 3 The Cost of Fixing a Bug 4 How to divide the budget ? 5 Novelty of this project Using economic theory to solve resource allocation problems in software development processes Measure the production of software manufacturer by quality instead of quantity – Each software product has its own “quality units” Use of objective and reliable measurements of factor allocation in an experimental setting – Does not rely on questionnaires 6 Using the Theory of the Firm Firm Theory answers three questions – How to produce? quantity units to produce? much to produce? – How many – What will the product price be? Answers are based on the concept of production function: Y=f(a,b,c,…) We replace quantity with quality – In both the production function and the market demand 7 Quality Production Function Q f ( R , D, I , T ) 8 From theory to practice Construct a production function for several specific software products Evaluate empirically the relationship between resulting quality and factors allocation 9 A Case Study: The Eight Puzzle Our “toy” product is an “Eight Puzzle” problem solver application The quality of the application will be measured according to the time it takes to solve the problem 10 The field study Collecting data on each product developed by a “firm” Firms simulated by students in a software development competition Rewards in competition tied to software quality: – Time it takes to solve an “Eight Puzzle” problem 11 Result Database Student1 R D I T .. .. .. .. Other parameters Quality Student2 Studentn 12 The field study - Measurements Automatically measuring of the time spent on each development phase Determining the quality of the product using unified automatic test methods 13 “Econometric” [demo] The “Econometric” application follows developer's behavior: – Measures the time spent on each development phase – Writes it to a log file 14 Future work Continue to develop our theoretical model – Generalization to the Spiral Model – Incorporating different market structures – Constructing demand function for SW products • Model the link between product quality and price • Considering alternative quality measures Continue the experiments – Improve accuracy and reliability of measurements • Controlling for subjects heterogeneity – Additional field studies • Backgammon competition 15 A&Q The End Agenda The Research Question Novelty of this project From theory to practice – The field study – “Econometric” 17 “Econometric” application The “Econometric” application follows developer's behavior – Measure the time spent on each development phase – Write it into a log file 18 Firm Theory & Software Life Cycle Obtain production function for SW product Production factors and Production units – production factors are be human resources allocated into each stage of the SW life cycle – production units are defined as quality units • Every SW product has it’s own quality units • The quality units are the linkage between the production side to the demand side 19 The Eight Puzzle application The application get two inputs – The Start board configuration – The Goal board configuration The application output is a solution to the problem – Sequence of legal moves starting with the Start board , and ending with the Goal board – The sequence has to be an optimal one (a shortest one) The quality of the application will be measured according to the time it takes to solve the problem – Define tt as the solution time Q(t ) 1 e1/ t 20 Composition of functions The “real” production function is – Q f Q , Q , Q , Q R D I T – Where QR f R R QD f D D QI f I I QT f T T After the functions composition – Q f ( R , D, I , T ) 21 Formalizing the SW manufacturer problem 22
© Copyright 2026 Paperzz