Skip to main content
Log in

A Rule-Based Approach to Developing Software Development Prediction Models

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

Managers of software development projects increasingly recognize the importance of planning and estimation and now have many sophisticated tools at their disposal. Despite this many systems are still delivered way behind schedule, cost far more to produce than original budget estimates and fail to meet user requirements.

It is the contention of the authors that many existing tools are inadequate because they fail to embrace the significant body of knowledge accumulated by past and present project managers.

This paper presents a new approach to planning which enables project managers to learn from the experience of others. The authors have adopted a bottom-up approach to planning which goes from the specific (planning the requirements capture and analysis process—RCA) to the general (planning the whole development process). A model, called MARCS, was constructed to give predictions of the resources (time, effort, cost, people) needed for the completion of and outcomes of the RCA process. Based on the predictions about the RCA process, the model then attempts to predict the resources and outcomes of the whole development process. MARCS is a combination of rule-based models and its main advantage is that it incorporates both qualitative and quantitative factors that can be easily identified and measured in the beginning of the development process.

Empirical data concerning 107 projects developed by more than 70 organizations within UK, gathered through a two-stage mail survey was used for the construction and validation of the MARCS planning model.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Abdel-Hamid, T. and Madnick, S. 1986. Impact of schedule estimation on software project behavior. IEEE Software, 70-75.

  • Bailey, R.W. 1982. Human Performance Engineering: A Guide for System Designers. Prentice-Hall.

  • Banker, R.D. and Kemerer, C.F. 1989. Scale economies in new software development. IEEE Transactions on Software Engineering, SE-15(10):416-429.

    Google Scholar 

  • Banker, R.D., Chang, H., and Kemerer, C.F. 1994. Evidence on economies of scale in software development. Information and Software Technology, 36(5):275-282.

    Google Scholar 

  • Barki, H. and Hartwick, J. 1989. Rethinking the concept of user involvement. MIS Quarterly, 13(1):52-63.

    Google Scholar 

  • Barki, H. and Hartwick, J. 1994a. Measuring user participation, user involvement, and user attitude. MIS Quarterly, March:59-82.

  • Barki, H. and Hartwick, J. 1994b. Explaining the role of user participation in information systems use. Management Science, 40(4):440-465.

    Google Scholar 

  • Boehm, B.W. 1981. Software Engineering Economics. Prentice-Hall.

  • Boehm, B.W. 1984. Software engineering economics. IEEE Transactions on Software Engineering, 10(1):4-21.

    Google Scholar 

  • Boehm, B.W. 1986. Software engineering. IEEE Trans. Comput., C-25:1226-1241.

    Google Scholar 

  • Boehm, B.W. and Papaccio, P.N. 1988. Understanding and controlling software costs. IEEE Transactions of Software Engineering, 14(10).

  • Briand, L.C., Basili, V.R., and Thomas, W.M. 1992. A pattern recognition approach for software engineering data analysis. IEEE Transactions on Software Engineering, 18(11):931-942.

    Google Scholar 

  • Bubenko, J.A. 1995. Challenges in requirements engineering. Second IEEE International Symposium on Requirements Engineering, York, UK.

  • Carmel, E. 1995. Time-to-completion factors in packaged software development. Information and Software Technology, 37(9):515-520.

    Google Scholar 

  • Chandrashekar, S., Mayfield, B., and Samadzadeh, M. 1993. Towards automating software project management. Intern. J. of Project Management, 11(1):29-38.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1995a. Requirements capture and analysis: The project managers dilemma. International Journal of Computer Applications in Technology, 8(3/4):190-202.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1995b. Requirements capture and analysis: A Planning Model. Information and Systems Engineering J., 1(3/4):271-287.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1996a. Requirements capture and analysis: A survey of a current practice. Requirements Engineering Journal, 1(2):75-87.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1996b. A review of existing planning and estimation models and the need for a new approach. International Journal of Project Management, 14(3):193-205.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1996c. Requirements capture and I.S methodologies. Information Systems Journal, 6:209-225.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1996d. The importance of human factors in planning the requirements capture stage of a project. International Journal of Project Management, 15(1):39-53.

    Google Scholar 

  • Chatzoglou P.D. and Macaulay, L.A. 1996e. Requirements capture and analysis: Determining the economical parameters. International Journal of Computer Applications in Technology, 9(5/6).

  • Conte, S.D., Shen, V.Y., and Dunsmore, H.E. 1986. Software Engineering Metrics and Models. Benjamin Cummins, Inc.

  • Costello, R.J. and Liu, D. 1995. Metrics for requirements engineering. Journal of Systems Software, 29:39-63.

    Google Scholar 

  • Cuelenaere, A.M., van Genuchten, M.J., and Heemstra, F.J. 1987. Calibrating a software estimation model: Why and how. Information and Software Technology, 29(10).

  • Curtis, H., Krasner, H., and Iscoe, N. 1988. A field study of the software design process for large systems. Communication of the ACM, 31(11):1268-1287.

    Google Scholar 

  • Deephouse, C., Mukhopadhyay, T., Goldenson, D., and Kellner, M.I. 1996. Software processes and project performance. J. of Management Information Systems, 12(3):187-205.

    Google Scholar 

  • DeMarco, T. 1982. Controlling Software Projects: Management, Measurement and Estimation. Prentice-Hall.

  • Fenton, N.E. 1991. Software Metrics: A Rigorous Approach. Chapman & Hall.

  • Fenton, N.E. and Littlewoods, B. (Ed.) 1991. Software Reliability and Metrics. Amsterdam: Elsevier.

    Google Scholar 

  • Flynn, D.J. 1992. Information Systems Requirements: Determination and Analysis. McGraw-Hill.

  • Gilb, T. 1986. Principles of Software Engineering Management. Addison-Wesley.

  • Gulezian, R. 1991. Reformulating and Calibrating COCOMO. Journal of Systems Software, 16:235-242.

    Google Scholar 

  • Hawryszkiewycz, I.T. 1988. Introduction to Systems Analysis and Design. Prentice-Hall.

  • Jarke, M. and Pohl, K. 1994. Requirements engineering in 2001: (virtually) Managing a changing software reality. Software Engineering Journal, 9(6):257-266.

    Google Scholar 

  • Jeffery, D.R. and Low, G. 1990. Generic estimation tools in management of software development. Soft. Eng. Journal, 5(4).

  • Jones, Q.W. 1990. Software Engineering. John Wiley and Sons.

  • Jones, T.C. 1986. Programming Productivity. New York: McGraw-Hill.

    Google Scholar 

  • Jordan, E.W. and Machesky, J.J. 1990. Systems Development: Requirements, Evaluation, Design, and Implementation. PWS-KENT Publishing Group.

  • Kalkanis, G. 1992. The Application of confidence interval error analysis to the design of decision tree classifiers. Pattern Recognition Letters. North Holland Publishers.

  • Keil, M. 1995. Pulling the plug: Software project management and the problem of project escalation. MIS Quarterly, 19(4):421-448.

    Google Scholar 

  • Kemerer, C.F. 1987. An empirical validation of software cost estimation models. Communication ACM, 30(5):416-429.

    Google Scholar 

  • Kemerer, C.F. 1993. Reliability of function points measurement. Communications of the ACM, 36:85-97.

    Google Scholar 

  • Kitchenham, B. 1991. Making process predictions. In N.E. Fenton (Ed.), Software Metrics: A Rigorous Approach, Chapman & Hall.

  • Kitchenham, B.A. and Taylor, N.R. 1985. Software development cost estimation. The Journal of Systems Software, 5:267-278.

    Google Scholar 

  • Kitchenham, B.R. and Littlewoods, B. (Eds.) 1989. Measurement for Software Control and Assurance. Elsevier.

  • Latham, G.P. 1986. Job performance and appraisal. In C.L. Cooper and I.T. Robertson (Eds.), International Review of Industrial and Organisational Psychology, Chichester, U.K.: Wiley Ltd.

    Google Scholar 

  • Lederer, A.L. and Prasad, J. 1995. Causes of inaccurate software development cost estimates. Journal of Systems Software, 31(2):125-134.

    Google Scholar 

  • Locke, E.A. and Latham, G.P. 1990. A Theory of Goal Setting and Task Performance. Prentice-Hall.

  • Louer, T.W. 1996. Software project managers' risk preferences. Journal of Information Technology, 11:287-295.

    Google Scholar 

  • Macala, R.R., Stuckey, L.D., and Gross, D.C. 1996. Managing domain-specific, product-line development. IEEE Software, 13(3):57-67.

    Google Scholar 

  • Macro, A. 1990. Software Engineering: Concept and Management. Prentice-Hall.

  • MERMAID. 1989. Comparative evaluation of existing cost estimation tools. ESPRIT II, Project P2046MERMAID.

  • Miyazaki, Y. and Mori, K. 1985. COCOMO evaluation and tailoring. Proc. of 8th Int. Conf. Soft. Eng., IEEE Computer Society Press.

  • Mukhopadhyay, T. and Kekre, S. 1992. Software effort models for early estimation of process control applications. IEEE Transactions, Software Engineering, 18(10):915-923.

    Google Scholar 

  • Nidumolu, S. 1995. The effect of coordination and uncertainty on software project performance: Residual performance risk as an intervening variable. Information Systems Research, 6(3):191-219.

    Google Scholar 

  • Palmer, J.D. 1987. Uncertainty in software requirements, Large Scale Systems in Information and Decision Technologies, North-Holland, 12(3).

  • Pengelly, A. 1995. Performance of effort estimating techniques in current development environments. Software Engineering Journal, 10(5):162-170.

    Google Scholar 

  • Porter, A. and Selby, R. 1990a. Empirically guided software development using metric-based classification trees. IEEE Software, 7:46-54.

    Google Scholar 

  • Porter, A. and Selby, R. 1990b. Evaluating techniques for generating metric-based classification trees. Journal of Systems Software, 12:209-218.

    Google Scholar 

  • Putnam, L. and Fitzsimmons, A. 1979. Estimating software costs, Datamation.

  • Quinlan J.R. 1990. Decision trees and decision making, IEEE Transactions on Systems, Man-Machine and Cybernetics, SMC-20(2):339-346.

    Google Scholar 

  • Rasch, R.H. and Tosi, H.L. 1992. Factors affecting software developers' performance: An integrated approach. MIS Quarterly, September:395-413.

  • Ratcliff, B. 1987. Software Engineering Principles and Methods. Blackwell.

  • Rendel, L.A. 1986. A general framework for induction and a study of selective induction. Machine Learning, 1(2):177-226.

    Google Scholar 

  • Rook, P. and Wingrove, A. 1990. Software project control and management. In P. Rook (Ed.), Software Reliability Handbook, Elsevier.

  • Rubin, H.A. 1985. A comparison of cost estimation tools (A panel session). Proc. of the 8th Int. Conf. on Software Engineering, New York: IEEE Computer Society Press, pp. 174-180.

    Google Scholar 

  • Samson, W.B., Dugard, P.I., Nevill, D.G., Oldfield, P.E., and Smith, A.W. 1989. The relationship between specifi-cation and implementation metrics. In Kitchenham and Littlewoods (Eds.), Measurement for Software Control and Assurance, Elsevier.

  • Senn, J.A. 1989. Analysis and Design of Information Systems (2nd edition). London: McGraw-Hill.

    Google Scholar 

  • Shneiderman, B. 1980. Software Psychology: Human Factors in Computer and Information Systems. Cambridge, MA: Winthrop.

    Google Scholar 

  • Simpson, W.D. 1987. New Techniques in Software Project Management. John Wiley.

  • Smith, R. 1974. Continuities in ordinal path analysis. Social Forces, 53:200-229.

    Google Scholar 

  • Sneed, H. 1989. Software Engineering Management. Ellis Horwood Ltd., Division of John Wiley & Sons.

  • SPSS-X, Users Guide (3rd edition), 1988. Chicago: SPSS Inc.

  • Tricker R.I. and Boland, R. 1982. Management Information and Control Systems (2nd edition). Chichester: Wiley.

    Google Scholar 

  • Vicinanza, S.S. Mukhopadhyay, T., and Prietula, M.J. 1991. Software-effort estimation: An exploratory study of expert performance. Information Systems Research, 2:243-262.

    Google Scholar 

  • Youl, D.P. 1990. Making Software Development Visible: Effective Project Control. John Wiley & Sons.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Chatzoglou, P.D., Macaulay, L.A. A Rule-Based Approach to Developing Software Development Prediction Models. Automated Software Engineering 5, 211–243 (1998). https://doi.org/10.1023/A:1008621131645

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008621131645

Navigation