Integrating Protocol Contracts with Program Code – A Leightweight Approach for Applied Behaviour Models that Respect Their Execution Context
In the domain of information systems, behaviour is typically described without a formal foundation. These systems could benefit from the use of formal behaviour modeling. However, the perceived costs for integrating a formal behaviour modeling approach seems to be higher than the expected benefits. A framework for formal behaviour modeling and execution could help bringing the benefits of formal modeling to this domain when it imposes a low barrier for integrating the approach. To achieve this, we present our approach for designing and executing behaviour models which are encoded with well-defined source code structures. In our approach the model is statically represented in the program code. Therefore the model does not exist as a first class citizen, but is extracted from the code at design time and run time. These models can be integrated within a context of arbitrary other program code, that does not follow the semantics of the model type. They therefore impose only a small barrier for their use.
KeywordsSource Code Event Type Meta Model Trace Link Communicate Sequential Process
Parts of the meta model presented in this paper are based on the work of Noyan Kurt from the institute paluno at the University of Duisburg-Essen. The work presented in this paper is partially funded by the DFG (German Research Foundation) under the grant number GO 774/7-1 within the Priority Programme SPP1593: Design For Future Managed Software Evolution.
- 1.Balz, M.: Embedding Model Specifications in Object-Oriented Program Code: A Bottom-up Approach for Model-based Software Development. Ph.D. thesis, Universitt Duisburg-Essen, Mai (2011)Google Scholar
- 6.McNeile, A.T., Roubtsova, E.E.: Programming in protocols - a paradigm of behavioral programming. In: Gonzalez-Perez, C., Jablonski, S. (eds.) ENASE, pp. 23–30. INSTICC Press, Portugal (2008)Google Scholar
- 8.Nickel, U.A., Niere, J., Wadsack, J.P., Zündorf, A.: Roundtrip engineering with FUJABA. In: Proceedings of 2nd Workshop on Software-Reengineering (WSR), Bad Honnef, Germany (2000)Google Scholar
- 9.OMG. OMG Unified Modeling Language (OMG UML), Superstructure, Version 2.4.1, August 2011Google Scholar
- 10.Stahl, T., Voelter, M., Czarnecki, K.: Model-Driven Software Development: Technology, Engineering, Management. Wiley, New York (2006)Google Scholar
- 11.Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework 2.0, 2nd edn. Addison-Wesley Professional, Singapore (2009)Google Scholar