Skip to main content

“What is a method?” — an essay on some aspects of domain engineering

  • Chapter
Programming Methodology

Part of the book series: Monographs in Computer Science ((MCS))

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

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 149.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Michael A. Jackson. Software Requirements & Specifications: a lexicon of practice, principles and prejudices, Addison-Wesley, 1995.

    Google Scholar 

  2. 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.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. 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.

    Google Scholar 

  5. 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.

    Google Scholar 

  6. Michael A. Jackson. Problems, Methods and Specialisation. Software Engineering Journal, pages 249–255, November 1994.

    Google 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.

    Google Scholar 

  8. Michael A. Jackson. The meaning of requirements. Annals of Software Engineering, 3: 5–21, 1997.

    Article  Google Scholar 

  9. Dines Bjtørner and O. Oest, editors. Towards a Formal Description of Ada, LNCS, vol. 98. Springer-Verlag, 1980.

    Google Scholar 

  10. Dines Bjørner and M. Nielsen. Meta Programs and Project Graphs. In ETW: Esprit Technical Week, pages 479–491. Elsevier, May 1985.

    Google Scholar 

  11. 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.

    Google Scholar 

  12. 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.

    Google Scholar 

  13. 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.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. Jens Ulrik Skakkebaek. Development of Provably Correct Systems. Technical report, Dept. of Computer Science, Technical University of Denmark, 30 August 1991 M.Sc. Thesis.

    Google Scholar 

  16. 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.

    Google Scholar 

  17. Jess Stein (Ed.). The Random House American Everyday Dictionary. Random House, New York, N.Y., USA, 1949, 1961.

    Google Scholar 

  18. 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.

    MATH  Google Scholar 

  19. 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.

    Google Scholar 

  20. 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.

    Google Scholar 

  21. Zhou Chaochen, C. A. R. Hoare, and A. P. Ravn. A Calculus of Durations. Information Proc. Letters, 40 (5), 1992.

    Google Scholar 

  22. 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.

    Google Scholar 

  23. 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.

    Google Scholar 

  24. 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.

    Google Scholar 

  25. 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.

    Google Scholar 

  26. C.A.R. Hoare. Communicating Sequential Processes. Communications of the ACM, 21 (8), Aug. 1978.

    Google Scholar 

  27. C.A.R. Hoare. Communicating Sequential Processes. Prentice-Hall International, 1985.

    Google Scholar 

  28. A.W. Roscoe. Theory and Practice of Concurrency. Prentice-Hall, 1997.

    Google Scholar 

  29. Michael A. Jackson. Description is Our Business. In VDM ‘91: Formal Software Development Methods, pages 1–8. Springer-Verlag, October 1991.

    Google Scholar 

  30. 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.

    Google Scholar 

  31. Michael A. Jackson. Problems, methods and specialisation. Software Engineering Journal, 9 (6): 249–255, November 1994.

    Article  Google Scholar 

  32. 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.

    Google Scholar 

  33. 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.

    Google Scholar 

  34. 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.

    Article  Google Scholar 

Download references

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics