Domains, patterns, reuse, and the software process

  • Alfs T. Berztiss
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)


The business world of today is characterized by very rapidly changing business conditions that require rapid responses. The responses can be rapid only if we understand how to use models of the domain in which the business operates. Unfortunately there is considerable confusion regarding domain analysis, which seems to be due to the complex structure of a realistic domain model. In an attempt to remove some of the confusion, we establish a framework for defining this structure, and propose a software development process based on the structure. Our main contribution is the identification of three aspects of domain analysis, namely domain partitioning, refinement of domain models, and analysis of situations. Our emphasis is on how domain analysis can help software reuse.


Business software system domain analysis domain knowledge domain model pattern reuse software process 


  1. Alexander, C. (1979) The Timeless Way of Building. Oxford University Press.Google Scholar
  2. Basili, V.R. (1990) Viewing maintenance as reuse-oriented software development. IEEE Software, 7, (1), 19–25.CrossRefGoogle Scholar
  3. Berztiss, A. (1990) Formal specification methods and visualization. In Principles of Visual Programming Systems (ed. Berztiss, A), 231–290, Prentice Hall.Google Scholar
  4. Berztiss, A.T. (1992) Engineering principles and software engineering. In Proc. 6th SEI Conference on Software Eng. Educ., 1992 (Springer-Verlag LNCS No. 640), 437–451.Google Scholar
  5. Berztiss, A.T. (1995) Software methods for business reengineering. Springer-Verlag.Google Scholar
  6. Berztiss, A.T. (1996) Unforeseen hazard conditions and software cliches. J. High Integrity Systems, to appear.Google Scholar
  7. Berztiss, A.T., and Bubenko, J.A. (1995) A software process model for business reengineering. In Information Systems Development for Decentralized Organizations, 184–200, Chapman & Hall.CrossRefGoogle Scholar
  8. Blum, B. (1989) A paradigm for the 1990s validated in the 1980s. In Proc. AIAA Conf. 1989, 502–511.Google Scholar
  9. Burrus, D. (1993) Technotrends — How to Use Technology to Go Beyond Your Competition (with R. Gittines). Harper Business.Google Scholar
  10. Coplien, J.O., and Schmidt, D.C, eds. (1995) Pattern Languages of Program Design. Addison-Wesley.Google Scholar
  11. Coplien, J.O. (1995) A generative development-process pattern language. In Coplien and Schmidt (1995), 184–237.Google Scholar
  12. Curtis, B., Krasner, H., and Iscoe, N. (1988) A field study of the software design process for large systems. Comm. ACM, 31, 1268–1287.CrossRefGoogle Scholar
  13. Davenport, T.H. (1993) Process innovation: reengineering work through information technology. Harvard Business School Press.Google Scholar
  14. Glass, R.L., and Vessey, I. (1995) Contemporary application-domain taxonomies. IEEE Software 12, (4), 63–76.CrossRefGoogle Scholar
  15. Haase, V., Messnarz, R., Koch, G., Kugler, H.J., and Decrinis, P. (1994) Bootstrap: fine-tuning process assessment. IEEE Software 11, (4), 25–35.CrossRefGoogle Scholar
  16. Hammer, M., and Champy, J. (1993) Reengineering the corporation: a manifesto for business revolution. Harper Business.Google Scholar
  17. Johansson, H.J., McHugh, P., Pendlebury, A.J., and Wheeler, W.A. (1993) Business Process Reengineering: Breakpoint Strategies for Reengineering. Wiley.Google Scholar
  18. Kroenke, D. (1992) Management Information Systems. McGraw-Hill.Google Scholar
  19. Lenat, D.B. (1995) CYC: a large-scale investment in knowledge infrastructure. Comm. ACM 38, (11), 33–38.CrossRefGoogle Scholar
  20. Maiden, N.A., and Sutcliffe, A.G. (1992) Exploiting reusable specifications through analogy. Comm. ACM 35, (4), 55–64.CrossRefGoogle Scholar
  21. Maiden, N.A.M., and Sutcliffe, A.G. (1993) People-oriented software reuse: the very thought. In Advances in Software Reuse (eds. Maiden, N.A.M., and Sutcliffe, A.G), 176–185, IEEE Computer Society Press.CrossRefGoogle Scholar
  22. Marques, D., Dallemagne, G., Klinker, G., McDermott, J., and Tung, D. (1992) Easy programming: empowering people to build their own applications. IEEE Expert 7, (3), 16–29.CrossRefGoogle Scholar
  23. McBrien, P., and Selveit, A.H. (1995) Coupling process models and business rules. In Information Systems Development for Decentralized Organizations, 201–217, Chapman & Hall.CrossRefGoogle Scholar
  24. Parnas, D.L. (1972) On the criteria to be used in decomposing systems into modules. Comm. ACM 15, 1053–1058.CrossRefGoogle Scholar
  25. Paulk, M.C., Curtis, B., Chrissis, M.B., and Weber, C.V. (1993) Capability Maturity Model, Version 1.1. IEEE Software, 10 (4), 18–27.CrossRefGoogle Scholar
  26. Paulk, M.C., Weber, C., Garcia, S., Chrissis, M.B., and Bush, M. (1993a) Key practices of the Capability Maturity Model Version 1.1. SEI Report CMU/SEI-93-TR-25, Software Engineering Institute of Carnegie-Mellon University.Google Scholar
  27. Rich, C., and Waters, R.C. (1990) The Programmer’s Apprentice. ACM Press, 1990.Google Scholar
  28. Rockart, J.F. (1979) Chief executives define their own data needs. Harvard Business Review 57, (2), 81–93.Google Scholar
  29. Shaw, M. (1995) Architectural issues in software reuse: it’s not just functionality, it’s the packaging. In Proc. ACM SIGSOFT Symp. Software Reusability (special issue of ACM SIGSOFT Software Engineering Notes), 3–6.Google Scholar
  30. Swartout, W., and Balzer, R. (1982) On the inevitable intertwining of specification and implementation. Comm. ACM 25, 438–440.CrossRefGoogle Scholar
  31. Weller, E.F. (1993) Lessons from three years of inspection data. IEEE Software 10, (5), 3845.CrossRefGoogle Scholar
  32. Whitenack, B. (1995) RAPPeL: a requirements-analysis-process pattern language for object-oriented development. In Coplien and Schmidt (1995), 259–291.Google Scholar
  33. Wing, J.M. (1988) A study of 12 specifications of the library problem. IEEE Software, 5, (4), 66–76.CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 1996

Authors and Affiliations

  • Alfs T. Berztiss
    • 1
    • 2
  1. 1.Department of Computer ScienceUniversity of PittsburghPittsburghUSA
  2. 2.SYSLABUniversity of StockholmSweden

Personalised recommendations