EWSPT 2001: Software Process Technology pp 47-62 | Cite as

Experiences with Behavioural Process Modelling in FEAST, and Some of Its Practical Implications

  • Meir M. Lehman
  • Juan F. Ramil
  • Goel Kahen
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2077)

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 Line 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abdel-Hamid, T.K. and Madnick, S.E.: Software Project Dynamics-An Integrated Approach, Prentice-Hall, Englewood Cliffs, NJ (1991)Google Scholar
  2. 2.
    Basseville, M. and Nikiforov, I.V.: Detection of Abrupt Changes: Theory and Application. PTR Prentice Hall, Englewood Cliffs, NJ (1993)Google Scholar
  3. 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. 4.
    Box, G. and Luceño, A.: Statistical Control by Monitoring and Feedback Adjustment. Wiley, New York (1997)MATHGoogle Scholar
  5. 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. 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. 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. 8.
    Coyle, R.G.: System Dynamics Modelling-A Practical Approach. Chapman & Hall, London (1996)MATHGoogle Scholar
  9. 9.
    Curtis, B., Kellner, M.I., and Over, J.: Process Modeling. Commun. ACM, Vol. 35, No. 9, Sept. (1992) 75–90CrossRefGoogle Scholar
  10. 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. 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. 12.
    FEAST, Feedback, Evolution And Software Technology, project web page including publications listings at http://www.doc.ic.ac.uk/~mml/feast
  13. 13.
    Forrester, J.W., Industrial Dynamics. MIT Press, Cambridge MA (1961)Google Scholar
  14. 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. 15.
    Friedman, Y. and Sandler, U.: Evolution of Systems under Fuzzy Dynamics Laws, Fuzzy Sets and Systems vol. 84, (1996) 60–74CrossRefMathSciNetGoogle Scholar
  16. 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. 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. 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. 19.
    Kaposi, A.A. and Myers, M.: Systems, Models and Measures. Springer-Verlag London (1994)Google Scholar
  20. 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. 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. 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. 23.
    Lehman, M.M. and Belady, L.A.: Software Evolution-Processes of Software Change. Academic Press London (1985)Google Scholar
  24. 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. 25.
    Lehman, M.M.: Uncertainty in Computer Application, Technical Letter, Comm. ACM, vol. 33, no. 5, pp. 584, May (1990)CrossRefGoogle Scholar
  26. 26.
    **Lehman, M.M. (ed.): Preprints of the three FEAST Workshops. Dept. of Computing, Imperial College (1994/5)Google Scholar
  27. 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. 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. 29.
    **Lehman, M.M. and Stenning, V.: FEAST/1 Case for Support. Dept. of Comp., Imperial College, London, March (1996)Google Scholar
  30. 30.
    **Lehman, M.M.: FEAST/2 Case for Support. Dept. of Comp., Imperial College, London, July (1998)Google Scholar
  31. 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. 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. 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. 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. 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. 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. 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. 38.
    Osterweil, L: Software Processes Are Software Too, Proceedings of the 9th International Conference on Software Engineering, (1987), 2–12Google Scholar
  39. 39.
    Parnas, D.L., Software Aging. ICSE 16, Sorrento, Italy, May 16-21, (1994) 279–287Google Scholar
  40. 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. 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. 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. 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. 44.
    Turski, WM: The Reference Model for Smooth Growth of Software Systems Revisited, submitted for publication, March (2001)Google Scholar
  45. 45.
    Wall, L., et al: Programming Perl. O’Reilly &; Associates, Sebastopol CA (1996)MATHGoogle Scholar
  46. 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. 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. 48.
    Wirth, N: Program Development by Step-wise Refinement, Comm. ACM, Vol. 14, No. 4, April (1971) 221–227MATHCrossRefGoogle Scholar
  49. 49.
    Zahran, S.: Software Process Improvement-Practical Guidelines for Business Success. SEI Series in Software Engineering, Addison-Wesley, Harlow, England (1997)Google Scholar
  50. 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

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Meir M. Lehman
    • 1
  • Juan F. Ramil
    • 1
  • Goel Kahen
    • 1
  1. 1.Department of ComputingImperial College of Science, Technology and MedicineLondonUK

Personalised recommendations