The Subject-Oriented Approach to Software Design and the Abstract State Machines Method

  • Egon Börger
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7260)

Abstract

In [32] we have shown that the system which implements the Subject-oriented approach to Business Process Modeling (S-BPM) has a precise semantical foundation in terms of Abstract State Machines (ASMs). The construction of an ASM model for the basic S-BPM concepts revealed a strong relation between S-BPM and the ASM method for software design and analysis. In this paper we investigate this relation more closely. We use the analysis to evaluate S-BPM as an approach to business process modeling and to suggest some challenging practical extension of the S-BPM system.

Keywords

Business Process Software Design Ground Model Software Product Line Abstract State Machine 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abrial, J.-R.: The B-Book. Cambridge University Press, Cambridge (1996)CrossRefMATHGoogle Scholar
  2. 2.
    Abrial, J.-R.: Modeling in Event-B: System and Software Engineering. Cambridge University Press, Cambridge (2010)CrossRefMATHGoogle Scholar
  3. 3.
    Batory, D., Börger, E.: Modularizing theorems for software product lines: The Jbook case study. Universal Computer Science 14(12), 2059–2082 (2008)Google Scholar
  4. 4.
    Börger, E.: A Logical Operational Semantics for Full Prolog. Part I: Selection Core and Control. In: Börger, E., Kleine Büning, H., Richter, M.M., Schönfeld, W. (eds.) CSL 1989. LNCS, vol. 440, pp. 36–64. Springer, Heidelberg (1990)CrossRefGoogle Scholar
  5. 5.
    Börger, E.: A Logical Operational Semantics of Full Prolog. Part II: Built-in Predicates for Database Manipulation. In: Rovan, B. (ed.) MFCS 1990. LNCS, vol. 452, pp. 1–14. Springer, Heidelberg (1990)Google Scholar
  6. 6.
    Börger, E.: A Logical Operational Semantics for Full Prolog. Part III: Built-in Predicates for Files, Terms, Arithmetic and Input-Output. In: Moschovakis, Y.N. (ed.) Logic From Computer Science. Berkeley Mathematical Sciences Research Institute Publications, vol. 21, pp. 17–50. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  7. 7.
    Börger, E.: Logic programming: The Evolving Algebra approach. In: Pehrson, B., Simon, I. (eds.) IFIP 13th World Computer Congress. Technology/Foundations, vol. I, pp. 391–395. Elsevier, Amsterdam (1994)Google Scholar
  8. 8.
    Börger, E.: Why Use Evolving Algebras for Hardware and Software Engineering? In: Bartosek, M., Staudek, J., Wiedermann, J. (eds.) SOFSEM 1995. LNCS, vol. 1012, pp. 236–271. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  9. 9.
    Börger, E.: Evolving Algebras and Parnas tables. In: Ehrig, H., von Henke, F., Meseguer, J., Wirsing, M. (eds.) Specification and Semantics, Schloss Dagstuhl, Int. Conf. and Research Center for Computer Science. Dagstuhl Seminar, No. 9626 (July 1996)Google Scholar
  10. 10.
    Börger, E.: High-level System Design and Analysis using Abstract State Machines. In: Hutter, D., Stephan, W., Traverso, P., Ullmann, M. (eds.) FM-Trends 1998. LNCS, vol. 1641, pp. 1–43. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  11. 11.
    Börger, E.: The origins and the development of the ASM method for high-level system design and analysis. Universal Computer Science 8(1), 2–74 (2002)Google Scholar
  12. 12.
    Börger, E.: The ASM Ground Model Method as a Foundation of Requirements Engineering. In: Dershowitz, N. (ed.) Verification (Manna Festschrift). LNCS, vol. 2772, pp. 145–160. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  13. 13.
    Börger, E.: The ASM refinement method. Formal Aspects of Computing 15, 237–257 (2003)CrossRefMATHGoogle Scholar
  14. 14.
    Börger, E.: Construction and analysis of ground models and their refinements as a foundation for validating computer based systems. Formal Aspects of Computing 19, 225–241 (2007)CrossRefMATHGoogle Scholar
  15. 15.
    Börger, E.: Approaches to modeling business processes. A critical analysis of BPMN, workflow patterns and YAWL. Software and Systems Modeling (2011), doi:10.1007/s10270-011-0214-zGoogle Scholar
  16. 16.
    Börger, E., Cisternino, A., Gervasi, V.: Ambient Abstract State Machines with applications. Computer and System Sciences (2011), Special Issue in honor of Amir Pnueli, http://dx.doi.org/10.1016/j.jcss.2011.08.004
  17. 17.
    Börger, E., Dässler, K.: Prolog: DIN papers for discussion. ISO/IEC JTCI SC22 WG17 Prolog Standardization Document 58, National Physical Laboratory, Middlesex, England (1990)Google Scholar
  18. 18.
    Börger, E., Durdanović, I.: Correctness of compiling Occam to Transputer code. Computer Journal 39(1), 52–92 (1996)CrossRefGoogle Scholar
  19. 19.
    Börger, E., Fruja, G., Gervasi, V., Stärk, R.: A high-level modular definition of the semantics of C#. Theoretical Computer Science 336(2-3), 235–284 (2005)CrossRefMATHGoogle Scholar
  20. 20.
    Börger, E., Gargantini, A., Riccobene, E.: Abstract State Machines. A method for system specification and analysis. In: Frappier, M., Habrias, H. (eds.) Software Specification Methods: An Overview Using a Case Study, pp. 103–119. HERMES Sc. Publ. (2006)Google Scholar
  21. 21.
    Börger, E., Päppinghaus, P., Schmid, J.: Report on a Practical Application of ASMs in Software Design. In: Gurevich, Y., Kutter, P., Odersky, M., Thiele, L. (eds.) ASM 2000. LNCS, vol. 1912, pp. 361–366. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  22. 22.
    Börger, E., Prinz, A.: Quo Vadis Abstract State Machines? Universal Computer Science 14(12), 1921–1928 (2008)Google Scholar
  23. 23.
    Börger, E., Rosenzweig, D.: From Prolog Algebras Towards WAM – a Mathematical Study of Implementation. In: Schönfeld, W., Börger, E., Kleine Büning, H., Richter, M.M. (eds.) CSL 1990. LNCS, vol. 533, pp. 31–66. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  24. 24.
    Börger, E., Rosenzweig, D.: WAM Algebras – a Mathematical Study of Implementation, Part 2. In: Voronkov, A. (ed.) RCLP 1990 and RCLP 1991. LNCS (LNAI), vol. 592, pp. 35–54. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  25. 25.
    Börger, E., Rosenzweig, D.: The WAM – definition and compiler correctness. In: Beierle, C., Plümer, L. (eds.) Logic Programming: Formal Methods and Practical Applications. Studies in Computer Science and Artificial Intelligence, vol. 11, ch. 2, pp. 20–90. North-Holland (1995)Google Scholar
  26. 26.
    Börger, E., Stärk, R.F.: Abstract State Machines. A Method for High-Level System Design and Analysis. Springer, Heidelberg (2003)CrossRefMATHGoogle Scholar
  27. 27.
    Delaware, B., Cook, W., Batory, D.: Product lines of theorems. In: Proc. OOPSLA 2011, Portland (October 2011)Google Scholar
  28. 28.
    Denning, P.J., Martell, C.: Great principles of computing (2007), http://cs.gmu.edu/cne/pjd/GP/GP-site/welcome.html (consulted July 26, 2011)
  29. 29.
    Farahbod, R., et al.: The CoreASM Project, http://www.coreasm.org
  30. 30.
    Fleischmann, A.: Distributed Systems: Software Design and Implementation. Springer, Heidelberg (1994)CrossRefMATHGoogle Scholar
  31. 31.
    Fleischmann, A.: Sbpm2NatLang converter. e-mail of September 8 to Egon Börger (2011)Google Scholar
  32. 32.
    Fleischmann, A., Schmidt, W., Stary, C., Obermeier, S., Börger, E.: Subjektorientiertes Prozessmanagement. Hanser-Verlag, München (2011); See [63] for a correct version of the appendixCrossRefGoogle Scholar
  33. 33.
    Fleischmann, A., Stary, C.: Whom to talk to? A stakeholder perspective on business process development. Universal Access in the Information Society, pp. 1–26 (June 2011), doi:10.1007/s10209-011-0236-xGoogle Scholar
  34. 34.
    Frappier, M., Habrias, H. (eds.): Software Specification Methods: An Overview Using a Case Study. HERMES Sc. Publ., Paris (2006)Google Scholar
  35. 35.
    Fruja, N.G.: Type Safety of C# and .NET CLR. PhD thesis, ETH Zürich (2006)Google Scholar
  36. 36.
    Fruja, N.G.: Towards proving type safety of .net cil. Science of Computer Programming 72(3), 176–219 (2008)CrossRefMATHGoogle Scholar
  37. 37.
    Fruja, N.G., Börger, E.: Modeling the .NET CLR Exception Handling Mechanism for a Mathematical Analysis. Journal of Object Technology 5(3), 5–34 (2006), http://www.jot.fm/issues/issue_2006_04/article1 CrossRefGoogle Scholar
  38. 38.
    Gurevich, Y.: Reconsidering Turing’s Thesis: Toward more realistic semantics of programs. Technical Report CRL-TR-36-84, EECS Department, University of Michigan (September 1984)Google Scholar
  39. 39.
    Gurevich, Y.: A new thesis. Abstracts, American Mathematical Society 6(4), 317 (1985)Google Scholar
  40. 40.
    Gurevich, Y.: Evolving algebras 1993: Lipari Guide. In: Börger, E. (ed.) Specification and Validation Methods, pp. 9–36. Oxford University Press (1995)Google Scholar
  41. 41.
    Gurevich, Y.: Interactive algorithms 2005 with added appendix. In: Goldin, P.W.D., Smolka, S.A. (eds.) Interactive Computation: The New Paradigm, pp. 165–182. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  42. 42.
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall (1985)Google Scholar
  43. 43.
    Hoare, C.A.R., Misra, J., Leavens, G.T., Shankar, N.: The verified software initiative: a manifesto. ACM Computing Surveys (2009)Google Scholar
  44. 44.
    Kim, C.H.P., Batory, D., Khurshid, S.: Reducing combinatorics in testing product lines. In: Proc. Aspect Oriented Software Development Conference. ACM (2011)Google Scholar
  45. 45.
    Knuth, D.: Literate Programming. CSLI Lecture Notes, vol. 27. Center for the Study of Language and Information, Stanford (1992)MATHGoogle Scholar
  46. 46.
    Metasonic. Metasonic-suite, www.metasonic.de/metasonic-suite
  47. 47.
    Milner, R.: A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980)CrossRefMATHGoogle Scholar
  48. 48.
    OMG. Business Process Model and Notation (BPMN) (2011), http://www.omg.org/spec/BPMN/2.0 (formal, January 03, 2011)
  49. 49.
    Parnas, D.L., Madey, J.: Functional documents for computer systems. Sci. of Comput. Program. 25, 41–62 (1995)CrossRefGoogle Scholar
  50. 50.
    Schellhorn, G.: Verifikation abstrakter Zustandsmaschinen. PhD thesis, Universität Ulm, Germany (1999)Google Scholar
  51. 51.
    Schellhorn, G.: Verification of ASM refinements using generalized forward simulation. Universal Computer Science 7(11), 952–979 (2001)Google Scholar
  52. 52.
    Schellhorn, G.: ASM refinement and generalizations of forward simulation in data refinement: A comparison. Theoretical Computer Science 336(2-3), 403–436 (2005)CrossRefMATHGoogle Scholar
  53. 53.
    Schellhorn, G., Ahrendt, W.: Reasoning about Abstract State Machines: The WAM case study. Universal Computer Science 3(4), 377–413 (1997)MATHGoogle Scholar
  54. 54.
    Schellhorn, G., Ahrendt, W.: The WAM case study: Verifying compiler correctness for Prolog with KIV. In: Bibel, W., Schmitt, P. (eds.) Automated Deduction – A Basis for Applications, vol. III, pp. 165–194. Kluwer Academic Publishers (1998)Google Scholar
  55. 55.
    Semiconductor Industry Assoc., International technologoy roadmap for semiconductors. Design (2005), http://www.itrs.net/Links/2005ITRS/Design2005.pdf
  56. 56.
    Sneed, S.H.: Exporting Natural Language: Generating NL Sentences Out of S-BPM Process Models. In: Fleischmann, A., Schmidt, W., Singer, R., Seese, D. (eds.) S-BPM ONE 2010. CCIS, vol. 138, pp. 163–179. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  57. 57.
    Stärk, R.F., Schmid, J., Börger, E.: Java and the Java Virtual Machine: Definition, Verification, Validation. Springer, Heidelberg (2001)CrossRefMATHGoogle Scholar
  58. 58.
    Tarski, A.: Der Wahrheitsbegriff in den formalisierten Sprachen. Studia Philosophica 1, 261–405 (1936)Google Scholar
  59. 59.
    ter Hofstede, A., van der Aalst, W., Adams, M., Russell, N. (eds.): Modern Business Process Automation. Springer, Heidelberg (2010)Google Scholar
  60. 60.
    Uzuncaova, E., Khurshid, S., Batory, D.: Incremental test generation for software product lines. IEEE Transactions on Software Engineering 36(3), 309–322 (2011)CrossRefGoogle Scholar
  61. 61.
    van der Aalst, W., ter Hofstede, A.: Workflow patterns home page, created and maintained since (1999), http://www.workflowpatterns.com/
  62. 62.
    Wirth, N.: Algorithms & Data Structures. Prentice-Hall (1975)Google Scholar
  63. 63.

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Egon Börger
    • 1
  1. 1.Dipartimento di InformaticaUniversità di PisaPisaItaly

Personalised recommendations