Abstract
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.
Chapter PDF
References
Alexander, C. (1979) The Timeless Way of Building. Oxford University Press.
Basili, V.R. (1990) Viewing maintenance as reuse-oriented software development. IEEE Software, 7, (1), 19–25.
Berztiss, A. (1990) Formal specification methods and visualization. In Principles of Visual Programming Systems (ed. Berztiss, A), 231–290, Prentice Hall.
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.
Berztiss, A.T. (1995) Software methods for business reengineering. Springer-Verlag.
Berztiss, A.T. (1996) Unforeseen hazard conditions and software cliches. J. High Integrity Systems, to appear.
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.
Blum, B. (1989) A paradigm for the 1990s validated in the 1980s. In Proc. AIAA Conf. 1989, 502–511.
Burrus, D. (1993) Technotrends — How to Use Technology to Go Beyond Your Competition (with R. Gittines). Harper Business.
Coplien, J.O., and Schmidt, D.C, eds. (1995) Pattern Languages of Program Design. Addison-Wesley.
Coplien, J.O. (1995) A generative development-process pattern language. In Coplien and Schmidt (1995), 184–237.
Curtis, B., Krasner, H., and Iscoe, N. (1988) A field study of the software design process for large systems. Comm. ACM, 31, 1268–1287.
Davenport, T.H. (1993) Process innovation: reengineering work through information technology. Harvard Business School Press.
Glass, R.L., and Vessey, I. (1995) Contemporary application-domain taxonomies. IEEE Software 12, (4), 63–76.
Haase, V., Messnarz, R., Koch, G., Kugler, H.J., and Decrinis, P. (1994) Bootstrap: fine-tuning process assessment. IEEE Software 11, (4), 25–35.
Hammer, M., and Champy, J. (1993) Reengineering the corporation: a manifesto for business revolution. Harper Business.
Johansson, H.J., McHugh, P., Pendlebury, A.J., and Wheeler, W.A. (1993) Business Process Reengineering: Breakpoint Strategies for Reengineering. Wiley.
Kroenke, D. (1992) Management Information Systems. McGraw-Hill.
Lenat, D.B. (1995) CYC: a large-scale investment in knowledge infrastructure. Comm. ACM 38, (11), 33–38.
Maiden, N.A., and Sutcliffe, A.G. (1992) Exploiting reusable specifications through analogy. Comm. ACM 35, (4), 55–64.
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.
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.
McBrien, P., and Selveit, A.H. (1995) Coupling process models and business rules. In Information Systems Development for Decentralized Organizations, 201–217, Chapman & Hall.
Parnas, D.L. (1972) On the criteria to be used in decomposing systems into modules. Comm. ACM 15, 1053–1058.
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.
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.
Rich, C., and Waters, R.C. (1990) The Programmer’s Apprentice. ACM Press, 1990.
Rockart, J.F. (1979) Chief executives define their own data needs. Harvard Business Review 57, (2), 81–93.
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.
Swartout, W., and Balzer, R. (1982) On the inevitable intertwining of specification and implementation. Comm. ACM 25, 438–440.
Weller, E.F. (1993) Lessons from three years of inspection data. IEEE Software 10, (5), 3845.
Whitenack, B. (1995) RAPPeL: a requirements-analysis-process pattern language for object-oriented development. In Coplien and Schmidt (1995), 259–291.
Wing, J.M. (1988) A study of 12 specifications of the library problem. IEEE Software, 5, (4), 66–76.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1996 IFIP International Federation for Information Processing
About this chapter
Cite this chapter
Berztiss, A.T. (1996). Domains, patterns, reuse, and the software process. In: Sutcliffe, A., Benyon, D., van Assche, F. (eds) Domain Knowledge for Interactive System Design. IS&O 1996. IFIP Advances in Information and Communication Technology. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-35059-2_6
Download citation
DOI: https://doi.org/10.1007/978-0-387-35059-2_6
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-5041-2891-9
Online ISBN: 978-0-387-35059-2
eBook Packages: Springer Book Archive