EWSPT 2001: Software Process Technology pp 47-62 | Cite as
Experiences with Behavioural Process Modelling in FEAST, and Some of Its Practical Implications
Abstract
The FEAST/1 (1996-1998) and FEAST/2 (1999-2001) projects have been investigating the role and impact of feedback and feedback-based system dynamics as reflected by attributes of the long term evolution of industrial software and the behaviour of the processes that evolve them. The investigation was triggered by the hypothesis that, with the possible exception of the least mature processes, software processes are multi-agent, multi-level, multi-loop feedback systems that must be managed as such to achieve sustained process improvement. This paper summarises some of the findings of the FEAST projects to date with emphasis on the process modelling methodology that were adopted and that have evolved over the duration of the two projects. Such procedures encompass both metric based black-box and white-box (system dynamics) behavioural modelling. It will also draw attention to the practical industrial application of the results obtained in the form of over thirty-five rules and guidelines for software evolution planning and management.
Keywords
Software Evolution Software Process Imperial College Process Improvement Software Product LinePreview
Unable to display preview. Download preview PDF.
References
- 1.Abdel-Hamid, T.K. and Madnick, S.E.: Software Project Dynamics-An Integrated Approach, Prentice-Hall, Englewood Cliffs, NJ (1991)Google Scholar
- 2.Basseville, M. and Nikiforov, I.V.: Detection of Abrupt Changes: Theory and Application. PTR Prentice Hall, Englewood Cliffs, NJ (1993)Google Scholar
- 3.*Belady, L.A. and Lehman M.M.: An Introduction to Program Growth Dynamics. In Freiburger, W. (ed.): Statistical Computer Performance Evaluation, Academic Press, NY, (1972) 503–511Google Scholar
- 4.Box, G. and Luceño, A.: Statistical Control by Monitoring and Feedback Adjustment. Wiley, New York (1997)MATHGoogle Scholar
- 5.Chatters, B.W., Lehman, M.M., Ramil, J.F. and Wernick, P.: Modelling a Software Evolution Process. ProSim’99 Workshop, Silver Falls, Oregon, 28-30 June 99. Also as Modelling a Long Term Software Evolution Process. J. of Software Process-Improvement and Practice, vol. 5, iss. 2/3, July (2000) 95–102Google Scholar
- 6.Chatters, B.W.: Implementing an Experience Factory: Maintenance and Evolution of the Software and Systems Development Process. ICSM 99, 30 Aug. to 3 Sept.Oxford, UK, (1999) 146–151Google Scholar
- 7.Christie, A.: Simulation in support of CMM-based Process Improvement. Journal of Systems and Software, Vol. 46, No. 2/3 (1999) 107–112CrossRefGoogle Scholar
- 8.Coyle, R.G.: System Dynamics Modelling-A Practical Approach. Chapman & Hall, London (1996)MATHGoogle Scholar
- 9.Curtis, B., Kellner, M.I., and Over, J.: Process Modeling. Commun. ACM, Vol. 35, No. 9, Sept. (1992) 75–90CrossRefGoogle Scholar
- 10.El Eman, K. and Madhavji, N.H. (eds.): Elements of Software Process Assessment and Improvement. IEEE CS Press, Los Alamitos CA (1999)Google Scholar
- 11.FEAST 2000 Workshop on Feedback in Software and Business Processes, July 10-12 2000, Imperial College, London, UK, call and selected contributions, http://www.doc.ic.ac.uk/~mml/f2000
- 12.FEAST, Feedback, Evolution And Software Technology, project web page including publications listings at http://www.doc.ic.ac.uk/~mml/feast
- 13.Forrester, J.W., Industrial Dynamics. MIT Press, Cambridge MA (1961)Google Scholar
- 14.Forrester JW and Senge P, Tests for Building Confidence in System Dynamics Models. In System Dynamics, Legasto AA Jr., Forrester JW, Lyneis JM (eds.) TIMS Studies in the Management Sciences, Vol. 14. North Holland, New York, (1980) 209–228Google Scholar
- 15.Friedman, Y. and Sandler, U.: Evolution of Systems under Fuzzy Dynamics Laws, Fuzzy Sets and Systems vol. 84, (1996) 60–74CrossRefMathSciNetGoogle Scholar
- 16.Huff, K.E.: Process Measurement though Process Modelling and Simulation. ISPW 10, Proc. of the 10th International Software Process Workshop “Process Support of Software Product Lines”, Ventron, France, June 17-19 (1996) 97–99Google Scholar
- 17.Humphrey, W.S. and Singpurwalla, N.D.: Predicting (Individual) Software Productivity, IEEE Trans. on Softw. Eng., vol. 17, No. 2, (1991) 196–207CrossRefGoogle Scholar
- 18.Kahen, G., Lehman, M.M., Ramil, J.F. and Wernick, P.: Dynamic Modelling in the Investigation of Policies for E-type Software Evolution. ProSim Workshop, July 12-14, 2000, Imp. Col., London UK (2000), a revised version to appear in J. of Syst. and Softw. (2001)Google Scholar
- 19.Kaposi, A.A. and Myers, M.: Systems, Models and Measures. Springer-Verlag London (1994)Google Scholar
- 20.Kellner, M.I., Madachy, R.J. and Raffo, D.M., Software Process Simulation Modelling: Why? What? How? J. of Syst. and Softw., Vol. 46, No. 2/3, April (1999) 91–106CrossRefGoogle Scholar
- 21.Lehman, M.M.: Programs, Cities, Students, Limits to Growth?. Inaugural Lecture. In Imperial College Inaugural Lecture Series, Vol. 9, 1970 1974, 211–229. Also in Gries D. (ed.): Programming Methodology. Springer Verlag, (1978) 42-62Google Scholar
- 22.Lehman, M.M.: Programs, Life Cycles and Laws of Software Evolution, in Proceedings of IEEE Special Issue on Software Engineering, September, 1060–1076. With more detail as “Programs, Programming and the Software Life-Cycle,”. Also in System Design, Infotech State of the Art, Rep, Se 6, No 9, Pergamon Infotech Ltd, Maidenhead, 1981, 263-291Google Scholar
- 23.Lehman, M.M. and Belady, L.A.: Software Evolution-Processes of Software Change. Academic Press London (1985)Google Scholar
- 24.Lehman, M.M.: Uncertainty in Computer Application and its Control through the Engineering of Software, J. of Software Maintenance, Research and Practice, vol. 1, 1 September (1989), 3–27CrossRefGoogle Scholar
- 25.Lehman, M.M.: Uncertainty in Computer Application, Technical Letter, Comm. ACM, vol. 33, no. 5, pp. 584, May (1990)CrossRefGoogle Scholar
- 26.**Lehman, M.M. (ed.): Preprints of the three FEAST Workshops. Dept. of Computing, Imperial College (1994/5)Google Scholar
- 27.Lehman, M.M.: Feedback in the Software Evolution Process. Keynote Address, CSR 11th Annual Workshop on Software Evolution: Models and Metrics. Dublin, 7-9th Sept. 1994. Also in Information and Softw. Technology, sp. is. on Software Maintenance, Vol. 38, No. 11 (1996) 681–686MathSciNetGoogle Scholar
- 28.**Lehman M.M., Perry D.E. and Turski W.M.: Why is it so hard to find Feedback Control in Software Processes?, invited talk, Proc. of the 19th Australasian Comp. Sc. Conf., Melbourne, Australia, 31 Jan.-2 Feb. (1996) 107–115Google Scholar
- 29.**Lehman, M.M. and Stenning, V.: FEAST/1 Case for Support. Dept. of Comp., Imperial College, London, March (1996)Google Scholar
- 30.**Lehman, M.M.: FEAST/2 Case for Support. Dept. of Comp., Imperial College, London, July (1998)Google Scholar
- 31.**Lehman, M.M. and Ramil, J.F.: Implications of Laws of Software Evolution on Continuing Successful Use of COTS Software. Dept. of Computing, Res. Rep. 98/8, Imperial College, London, June (1998). A revised version as Software Evolution in the Age of Component Based Software Engineering, IEE Proceedings-Software, Vol. 147, No. 6, 249–255, December (2000)Google Scholar
- 32.Lehman, M.M., Perry, D.E. and Ramil, J.F.: Implications of Evolution Metrics on Software Maintenance. ICSM 98, Bethesda MD, 16-18 Nov. (1998) 208–217Google Scholar
- 33.id. On Evidence Supporting the FEAST Hypothesis and the Laws of Software Evolution, Metrics 98, Bethesda MD, 20-21 Nov. (1998) 84-88Google Scholar
- 34.Lehman, M.M.: Rules and Tools for Software Evolution and Management. FEAST 2000 Workshop. Pre-prints. July 10-12, Imperial College, London (2000). http://www.doc.ic.ac.uk/~mml/f2000 A revised and extended version (with Ramil, J.F.) to appear in Annals of Software Engineering, special volume on Software Management (2001)Google Scholar
- 35.* *Lehman, M.M. and Ramil, J.F.: Towards a Theory of Software Evolution-And Its Practical Impact, invited talk, Pre-prints of the International Symposium on the Principles of Software Evolution, ISPSE 2000, Kanazawa, Japan, Nov 1-2, (2000)Google Scholar
- 36.* *Lehman, M.M., Ramil, J.F., and Kahen G.: Thoughts on the Role of Formalisms in Studying Software Evolution, International Special Session on Formal Foundations of Software Evolution, Lisbon, Portugal, 13 Mar., 8 pps. (2001)Google Scholar
- 37.Low, G.C. and Jeffery, R.D.: Function Points in the Estimation and Evaluation of the Software Process. IEEE Trans. on Softw. Eng. Vol. 16, Jan. (1990) 64–71CrossRefGoogle Scholar
- 38.Osterweil, L: Software Processes Are Software Too, Proceedings of the 9th International Conference on Software Engineering, (1987), 2–12Google Scholar
- 39.Parnas, D.L., Software Aging. ICSE 16, Sorrento, Italy, May 16-21, (1994) 279–287Google Scholar
- 40.Paulk, M.C. et al: Capability Maturity Model for Software, Version 1.1. Software Engineering Institute Report, CMU/SEI-93-TR-24 (1993)Google Scholar
- 41.Ramil, J.F., Lehman, M.M. and Kahen, G.: The FEAST Approach to Quantitative Process Modelling of Software Evolution Processes, Proc. PROFES’2000 2nd Intl Conference on Product Focused Software Process Improvement, Oulu, Finland, 20-22 Jun. 2000, in Frank Bomarius and Markku Oivo (eds.) LNCS 1840, Springer Verlag, Berlin (2000) 311–325Google Scholar
- 42.Ramil, J.F. and Lehman M.M.: Metrics of Software Evolution as Effort Predictors-A Case Study, Proc. ICSM 2000, Int. Conf. on Software Maint., 11-14 Oct., San Jose, CA (2000)Google Scholar
- 43.Tesoreiro, R. and Zelkowitz, M.A.: Model of Noisy Software Engineering Data. ICSE 98, Kyoto, Japan, April 19-25 (1998) 461–476Google Scholar
- 44.Turski, WM: The Reference Model for Smooth Growth of Software Systems Revisited, submitted for publication, March (2001)Google Scholar
- 45.Wall, L., et al: Programming Perl. O’Reilly &; Associates, Sebastopol CA (1996)MATHGoogle Scholar
- 46.Wernick, P. and Lehman, M.M.: Software Process White Box Modelling for FEAST/1. ProSim 98 Workshop, Silver Falls, OR, 23 June (1998). Also in J. of Sys. and Softw., Vol. 46, No. 2/3, April (1999)Google Scholar
- 47.Wernick, P.: Identifying and Justifying Metrics for Software Evolution Investigations Using the Goal-Question Metric Method. FEAST 2000 Workshop. July 10-12, Imperial College, London (2000). http://www.doc.ic.ac.uk/~mml/f2000
- 48.Wirth, N: Program Development by Step-wise Refinement, Comm. ACM, Vol. 14, No. 4, April (1971) 221–227MATHCrossRefGoogle Scholar
- 49.Zahran, S.: Software Process Improvement-Practical Guidelines for Business Success. SEI Series in Software Engineering, Addison-Wesley, Harlow, England (1997)Google Scholar
- 50.Zurcher, F.W. and Randell, B.: Iterative Multi-Level Modeling-A Methodology for Computer System Design. IBM Res. Div. Rep. RC-1938, Nov. (1967). Also in Proc. IFIP Congr. 1968, Edinburgh, Aug. (1968), D138–D142Google Scholar