Abstract
We discuss a concept of method in terms of its postulated principles, techniques and tools for the realm of software engineering. Software engineering is here seen as a confluence of domain engineering,requirements engineering and software design. Our scope is the concept of domains and domain engineering, and, our span is the concept of domain facets. We shall briefly contrast these with domain attributes such as for example put forward by Michael Jackson [1]. For the domain facet area of software development we then identify, exemplify and investigate, the latter rather briefly, a number of domain facet development principles and techniques. The main contributions of this essay are believed to be the identification of the domain facet concept, and the collection (including identification), classification, part investigation, and “fitting into a larger whole”, of domain facet principles and techniques, as well as the thereby substantiated claim that these principles and techniques help characterise methods.
The essay has technical examples, but they are merely sketches. Had they been more substantial, the essay would not have been an essay. More substantial examples are given elsewhere1
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Michael A. Jackson. Software Requirements & Specifications: a lexicon of practice, principles and prejudices, Addison-Wesley, 1995.
Dines Bjorner. 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.
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, 22: 3–13, 1999.
Dines Bjørner. Formal Software Techniques in Railway Systems. In Eckehard Schnieder, editor, 9th IFAC Symposium on Control in Transportation Systems, pages 1–12, Technical University, Braunschweig, Germany, 13–15 June 2000. VDINDE-Gesellschaft Mess— und Automatisieringstechnik, VDI-Gesellschaft für Fahrzeug— und Verkehrstechnik. Invited plenum lecture.
Dines Bjørner. Pinnacles of Software Engineering: 25 Years of Formal Methods. Annals of Software Engineering, 10:11–66, 2000. Eds. Dilip Patel and Wang Yi.
Michael A. Jackson. Problems, Methods and Specialisation. Software Engineering Journal, pages 249–255, November 1994.
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.
Michael A. Jackson. The meaning of requirements. Annals of Software Engineering, 3: 5–21, 1997.
Dines Bjtørner and O. Oest, editors. Towards a Formal Description of Ada, LNCS, vol. 98. Springer-Verlag, 1980.
Dines Bjørner and M. Nielsen. Meta Programs and Project Graphs. In ETW: Esprit Technical Week, pages 479–491. Elsevier, May 1985.
Dines Bjørner. Project Graphs and Meta-Programs: Towards a Theory of Software Development. In N. Habermann and U. Montanari, editors, Proceedings Capri ‘86 Conference on Innovative Software Factories and Ada, Lecture Notes on Computer Science. Springer-Verlag, 1986.
Dines Bjøgrner. Software Development Graphs — A Unifying Concept for Software Development? In K.V. Nori, editor, Vol. 241 of Lecture Notes in Computer Science: Foundations of Software Technology and Theoretical Computer Science, pages 1–9. Springer-Verlag, Dec. 1986.
A.P. Ravn and H. Rischel. Requirements capture for embedded real-time systems. In P. Borne, editor, IMACS-IFAC Symposium MCTS, Villeneuve d’Ascq, France, May 1991. IMACS Transaction Series, 1991.
Jens U. Skakkebaek, Anders P. Ravn, Hans Rischel, and Zhou ChaoChen. Specification of Embedded, Real-time Systems. Technical report, Dept. of Computer Science, Technical University of Denmark, EuroMicro Workshop on Formal Methods for Real-time Systems, 1992 December 1991. The example: A railway road/rail crossing.
Jens Ulrik Skakkebaek. Development of Provably Correct Systems. Technical report, Dept. of Computer Science, Technical University of Denmark, 30 August 1991 M.Sc. Thesis.
Dines Bjørner. A ProCoS Project Description. Published in two slightly different versions: (1) EATCS Bulletin, October 1989, (2) (Ed. Ivan Plander:) Proceedings: Intl. Conf. on AI & Robotics, Strebske Pleso, Slovakia, Nov. 5–9, 1989, North-Holland, Dept. of Computer Science, Technical University of Denmark, October 1989.
Jess Stein (Ed.). The Random House American Everyday Dictionary. Random House, New York, N.Y., USA, 1949, 1961.
Chris George, Anne Haxthausen, Steven Hughes, Robert Milne, Søren Prehn, and Jan Storbank Pedersen. The RAISE Method. The BCS Practitioner Series. Prentice-Hall, 1995.
Chris George, Peter Haff, Klaus Havelund, Anne Haxthausen, Robert Milne, Claus Bendix Nielsen, Soren Prehn, and Kim Ritter Wagner. The RAISE Specification Language. The BCS Practitioner Series. Prentice-Hall, Hemel Hampstead, England, 1992.
Dines Bjtørner. Domain Modelling: Resource Management Strategics, Tactics & Operations, Decision Support and Algorithmic Software. In J.C.P. Woodcock, editor, Millennial perspectives in computer science, Palgrave, 2000.
Zhou Chaochen, C. A. R. Hoare, and A. P. Ravn. A Calculus of Durations. Information Proc. Letters, 40 (5), 1992.
Zhou Chaochen and Li Xiaoshan. A Mean Value Duration Calculus. Research Report 5, UNU/IIST, P.O.Box 3058, Macau, March 1993. Published as Chapter 25 in A Classical Mind, Festschrift for C.A.R. Hoare, Prentice-Hall International, 1994, pp 432–451.
Zhou Chaochen, Anders P. Ravn, and Michael R. Hansen. An Extended Duration Calculus for Real-time Systems. Research Report 9, UNU/IIST, P.O.Box 3058, Macau, January 1993. Published in: Hybrid Systems, LNCS 736, 1993.
Zhou Chaochen. Duration Calculi: An Overview. Research Report 10, UNU/IIST, P.O.Box 3058, Macau, June 1993. Published in: Formal Methods in Programming and Their Applications, Conference Proceedings, June 28–July 2, 1993, Novosibirsk, Russia; (Eds.: D. Bjørner, M. Broy and I. Pottosin) LNCS 736, Springer-Verlag, 1993, pp 36–59.
Zhou Chaochen, Zhang Jingzhong, Yang Lu, and Li Xiaoshan. Linear Duration Invariants. Research Report 11, UNU/IIST, P.O.Box 3058, Macau, July 1993. Published in: Formal Techniques in Real-Time and Fault-Tolerant systems, LNCS 863, 1994.
C.A.R. Hoare. Communicating Sequential Processes. Communications of the ACM, 21 (8), Aug. 1978.
C.A.R. Hoare. Communicating Sequential Processes. Prentice-Hall International, 1985.
A.W. Roscoe. Theory and Practice of Concurrency. Prentice-Hall, 1997.
Michael A. Jackson. Description is Our Business. In VDM ‘91: Formal Software Development Methods, pages 1–8. Springer-Verlag, October 1991.
Pamela Zave and Michael A. Jackson. Techniques for partial specification and specification of switching systems. In S. Prehn and W.J. Toetenel, editors, VDM’91: Formal Software Development Methods, volume 551 of LNCS, pages 511–525. Springer-Verlag, 1991.
Michael A. Jackson. Problems, methods and specialisation. Software Engineering Journal, 9 (6): 249–255, November 1994.
Michael A. Jackson. Software Development Method,chapter 13, pages 215–234. Prentice Hall Intl., 1994. Festschrift for C. A. R. Hoare: A Classical Mind,Ed. W. Roscoe.
Pamela Zave and Michael A. Jackson. Where do operations come from? a multi-paradigm specification technique. IEEE transactions on software engineering, 22 (7), July 1996.
Pamela Zave and Michael A. Jackson. Four dark Corners of Requirements Engineering. ACM Transactions on Software Engineering and Methodology, 6 (1): 1–30, January 1997.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer Science+Business Media New York
About this chapter
Cite this chapter
Bjørner, D. (2003). “What is a method?” — an essay on some aspects of domain engineering. In: McIver, A., Morgan, C. (eds) Programming Methodology. Monographs in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-0-387-21798-7_9
Download citation
DOI: https://doi.org/10.1007/978-0-387-21798-7_9
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4419-2964-8
Online ISBN: 978-0-387-21798-7
eBook Packages: Springer Book Archive