Domain Engineering: A Software Engineering Discipline in Need of Research
Before software can be developed its requirements must be stated. Before requirements can be expressed the application domain must be understood. In this invited paper we outline some of the basic facets of domain engineering.
Domains seem, it is our experience, far more stable than computing requirements, and these again seem more stable than software designs. Thus, almost like the universal laws of physics, it pays off to first develop theories of domains.
But domain engineering, as in fact also requirements engineering, really is in need of thoroughly researched development principles, techniques and tools. The aim of this invited paper is to advocate: that researchers study these development method components, and that universities focus their education on basing well-nigh any course on the use of formal techniques: Specification and verification, and that software engineers take heed: Start applying formal techniques. A brief example of describing stake-holder perspectives will be given—on the background of which we then proceed to survey the notions of domain intrinsics, domain support technologies, domain management & organisation, domain rules & regulations, domain human behaviour, etc. We show elsewhere how to “derive” requirements from domain descriptions. Domain requirements: by domain projection, instantiation, extension and initialisation; interface requirements: multi-media, dialogue, etc.; and machine requirements: performance, dependability (reliability, availability, accessability, safety, etc.), and maintainability (adaptability, perfectability and correctability).
The current paper presents work-in-progress. The text of the paper is therefore very schematic.
KeywordsSoftware Engineer Requirement Engineering Support Technology Resource Provider Domain Engineering
Unable to display preview. Download preview PDF.
- 1.Dines Bjørner. Domain Engineering, Elements of a Software Engineering Methodology — Towards Principles, Techniques and Tools—A Study in Methodology. Research report, Dept. of Computer Science & Technology, Technical University of Denmark, Bldg. 343, DK-2800 Lyngby, Denmark, 2000. One in a series of summarising research reports , . 4, 15, 16, 17Google Scholar
- 2.Dines Bjørner. Domain Modelling: Resource Management Strategics, Tactics & Operations, Decision Support and Algorithmic Software. In J. C. P. Woodcock, editor, Festschrift to Tony Hoare. Oxford University and Microsoft, September 13–14 1999. 5, 16Google Scholar
- 3.Dines Bjørner. Domains as Prerequisites for Requirements and Software &c. In M. Broy and B. Rumpe, editors, RTSE’97: Requirements Targeted Software and Systems Engineering, volume 1526 of Lecture Notes in Computer Science, pages 1–41. Springer-Verlag, Berlin Heidelberg, 1998. 15, 16CrossRefGoogle Scholar
- 4.Michael A. Jackson. Software Requirements & Specifications: a lexicon of practice, principles and prejudices. ACM Press. Addison-Wesley Publishing Company, Wokingham, nr. Reading, England; E-mail: email@example.com, 1995. ISBN 0-201-87712-0; xiv + 228 pages. 15, 16Google Scholar
- 5.Dines Bjørner, Souleymane Koussoube, Roger Noussi, and Gueorgui Satchok. Jackson’s Problem Frames: Domain, Requirements and Design. In Shaoying Liu, editor, International Conference on Formal Engineering Methods: ICFEM’97,Washington D. C., USA, 12–14 November 1997. IEEE Computer Science Press; IEEE sponsored conference, Hiroshima, Japan. 15, 16Google Scholar
- 6.Michael A. Jackson. Problems, methods and specialisation. Software Engineering Journal, pages 249–255, November 1994. 16Google Scholar
- 7.Michael A. Jackson. Problems and requirements (software development). In Second IEEE International Symposium on Requirements Engineering (Cat. No. 95TH8040), pages 2–8. IEEE Comput. Soc. Press, 1995. 16Google Scholar
- 10.Dines Bjørner. Pinnacles of Software Engineering: 25 Years of Formal Methods. Annals of Software Engineering, 2000. Eds. Dilip Patel and Wang Yi. 16Google Scholar
- 11.Dines Bjørner. A Triptych Software Development Paradigm: Domain, Requirements and Software. Towards a Model Development of A Decision Support System for Sustainable Development. In ErnstRüdiger Olderog, editor, Festschrift to Hans Langmaack. University of Kiel, Germany, October 1999. 16Google Scholar
- 12.Dines Bjørner. Where do Software Architectures come from ? Systematic Development from Domains and Requirements. A Re-assessment of Software Engneering ? South African Journal of Computer Science, 1999. Editor: Chris Brink. 16Google Scholar
- 14.Dines Bjørner. Requirements Engineering, Elements of a Software Engineering Methodology—Towards Principles, Techniques and Tools—A Study in Methodology. Research report, Dept. of Computer Science & Technology, Technical University of Denmark, Bldg. 343, DK-2800 Lyngby, Denmark, 2000. One in a series of summarising research reports , . 16, 17Google Scholar
- 15.Dines Bjørner. Software Design: Architectures and Program Organisation, Elements of a Software Engineering Methodology—Towards Principles, Techniques and Tools—A Study in Methodology. Research report, Dept. of Computer Science & Technology, Technical University of Denmark, Bldg. 343, DK-2800 Lyngby, Denmark, 2000. One in a series of summarising research reports , . 16, 17Google Scholar