It Is Possible to Start . . . Earning Money Before . . . In View of This . . . Working on One Part at a Let Us Formulate This . . . Formulating the . . . Time is the Best Strategy for What Is Known and . . . Main Result: . . . Software Production: Proof: Transformation . . . A Proof Home Page Title Page Francisco Zapata 1 , Maliheh Zargaran 2 , and ◭◭ ◮◮ Vladik Kreinovich 2 1 Department of Industrial, Manufacturing, and ◭ ◮ Systems Engineering 2 Department of Computer Science Page 1 of 21 University of Texas at El Paso Go Back El Paso, TX 79968, USA fazg74@gmail.com, mzargaran@miners.utep.edu Full Screen vladik@utep.edu Close Quit
It Is Possible to Start . . . 1. It Is Possible to Start Earning Money Before Earning Money Before . . . the Whole Software Package Is Released In View of This . . . Let Us Formulate This . . . • When a company designs a software package, usually, Formulating the . . . – it does not have to wait until the whole package is What Is Known and . . . fully functional to profit from sales: Main Result: . . . – the company can often start earning money once Proof: Transformation . . . some useful features are implemented. Home Page • As an example, let us consider a company that designs Title Page a package for all kinds of numerical computations. ◭◭ ◮◮ • This package includes solving systems of equations, op- ◭ ◮ timization, etc. Page 2 of 21 • The company does not have to wait until all the parts Go Back of the software are ready. Full Screen • The company can first release – and start selling – the Close parts that solve systems of equations. Quit
It Is Possible to Start . . . 2. Earning Money Before the Package Is Released Earning Money Before . . . (cont-d) In View of This . . . Let Us Formulate This . . . • Thus, the company can start earning money before the Formulating the . . . whole package is ready for use. What Is Known and . . . • This possibility is critical. Main Result: . . . Proof: Transformation . . . • Indeed, for large software packages, full design can take Home Page years; so: Title Page – the possibility to recoup at least some of the origi- nal investment earlier ◭◭ ◮◮ – makes such long-term projects more acceptable to ◭ ◮ managers and shareholders. Page 3 of 21 • Thus, it makes these projects more probable to be ap- Go Back proved. Full Screen Close Quit
It Is Possible to Start . . . 3. In View of This Possibility, What Is The Opti- Earning Money Before . . . mal Release Schedule for Different Parts? In View of This . . . Let Us Formulate This . . . • How can we best take into account the possibility to Formulating the . . . earn money What Is Known and . . . – before the package is fully ready, Main Result: . . . – when only some parts of it are ready? Proof: Transformation . . . Home Page • What is the optimal schedule for releasing different Title Page parts? ◭◭ ◮◮ • In what order should we work on them? ◭ ◮ Page 4 of 21 Go Back Full Screen Close Quit
It Is Possible to Start . . . 4. Let Us Formulate This Problem in Precise Earning Money Before . . . Terms In View of This . . . Let Us Formulate This . . . • The software projects consist of several parts. Formulating the . . . • Some of these parts depend on others, in the sense that What Is Known and . . . we cannot design one part until the other part is ready. Main Result: . . . • For example, many numerical techniques for solving Proof: Transformation . . . Home Page systems of nonlinear equations use linearization. Title Page • Thus, they solve systems of linear equations at different stages; so: ◭◭ ◮◮ – in order to design a part for solving systems of non- ◭ ◮ linear equations, Page 5 of 21 – we need to have available a part for solving systems Go Back of linear equations. Full Screen • This dependency relation makes the set of all parts into Close a partially ordered set. Quit
It Is Possible to Start . . . 5. Formulating the Problem in Precise Terms Earning Money Before . . . (cont-d) In View of This . . . Let Us Formulate This . . . • In other words, this set a directed acyclic graph. Formulating the . . . • For each part i , we know the overall effort e i (e.g., in What Is Known and . . . man-hours) that is needed to design this part. Main Result: . . . Proof: Transformation . . . • We also know the profit p i that we can start earning Home Page once this part is released; so: Title Page – if we release part i at time t i , ◭◭ ◮◮ – then by some future moment of time T , selling this part will bring us the profit of p i · ( T − t i ). ◭ ◮ • How can we organize our work on different parts so as Page 6 of 21 to maximize the resulting overall profit. Go Back Full Screen Close Quit
It Is Possible to Start . . . 6. What Is Known and What We Do Earning Money Before . . . In View of This . . . • Several semi-heuristic strategies are known that lead to Let Us Formulate This . . . optimal (or at least close-to-optimal) release schedules. Formulating the . . . • Interestingly: What Is Known and . . . Main Result: . . . – while it is, in principle, possible for the company to Proof: Transformation . . . work on several parts at a time, Home Page – in all known optimal schedules, the design is per- Title Page formed one part at a time. ◭◭ ◮◮ • We show that the above empirical fact is not a coinci- dence: we will actually prove that ◭ ◮ – in the optimal schedule, Page 7 of 21 – we should always work on one part at a time. Go Back Full Screen Close Quit
It Is Possible to Start . . . 7. Main Result: Formulation and Discussion Earning Money Before . . . In View of This . . . • For each planning problem, there is an optimal schedule Let Us Formulate This . . . in which we always work on one part at a time. Formulating the . . . • This result does not necessarily means that in all opti- What Is Known and . . . mal scheduled, we work on one part at a time. Main Result: . . . Proof: Transformation . . . • Let us give a simple example. Home Page • Suppose that the software consists of three parts: Title Page – The first two parts are independent and require the ◭◭ ◮◮ same time t 1 = t 2 . ◭ ◮ – The third part depend on the first two parts. Page 8 of 21 • Suppose also that there is no market need for Part 1 or for Part 2, only for the final Part 3. Go Back Full Screen • In other words, we assume that p 1 = p 2 = 0. Close Quit
It Is Possible to Start . . . 8. Discussion (cont-d) Earning Money Before . . . In View of This . . . • In this case, it is reasonable to conclude that the fol- Let Us Formulate This . . . lowing schedule is optimal: Formulating the . . . – first, we work on Part 1; this take time t 1 ; What Is Known and . . . – then, we concentrate all or efforts on Part 2; this Main Result: . . . also takes time t 1 = t 2 ; Proof: Transformation . . . – after this, we work on Part 3; this takes time t 3 . Home Page • So, by time 2 t 1 + t 3 , we get the product that we can Title Page start selling. ◭◭ ◮◮ • Alternatively, we can use a different schedule. ◭ ◮ • First, we split the team into two equal sub-teams, with Page 9 of 21 – one sub-team working on Part 1, and Go Back – the other sub-team working on Part 2. Full Screen • Designing each part takes time t 1 = t 2 for the whole Close team. Quit
It Is Possible to Start . . . 9. Discussion (cont-d) Earning Money Before . . . In View of This . . . • Thus, it will take twice longer for the twice-smaller Let Us Formulate This . . . sub-teams. Formulating the . . . • After the time 2 t 1 , both Part 1 and Part 2 are ready, What Is Known and . . . so we can start working on Part 3. Main Result: . . . Proof: Transformation . . . • At the end, after time 2 t 1 + t 3 , we will get the ready- Home Page to-sell product. Title Page • In this example, at least one of the parts does not bring any profit, i.e., has p i = 0. We will see that ◭◭ ◮◮ ◭ ◮ – if each part can bring some profit, i.e., if p i > 0 for all i , Page 10 of 21 – then such examples are not possible, and in all op- Go Back timal schedules, we work on one part at a time. Full Screen Close Quit
It Is Possible to Start . . . 10. Proof: Transformation and Its Properties Earning Money Before . . . In View of This . . . • Let us start with an optimal schedule in which Let Us Formulate This . . . – at some moment of time, Formulating the . . . – we work on several parts at the same time. What Is Known and . . . Main Result: . . . • Let t f be the first moment of time with this property. Proof: Transformation . . . – If any part which is ready by this moment is not Home Page yet released in the original optimal plan, Title Page – then we can release it right away and thus provide ◭◭ ◮◮ the additional income from selling this part. ◭ ◮ • Thus, without losing generality, we can assume that: Page 11 of 21 – all the parts which are released after moment t f Go Back – are not yet fully ready for release at the moment t f . Full Screen • Let t r be the first moment of time after t f at which one Close of the parts is being released. Quit
Recommend
More recommend