Continuous Maintenance of Multiple Abstraction Levels in Program Code

Moritz Balz, Michael Striewe, Michael Goedicke


During development of software systems multiple notations are in use to describe requirements, design, source code, run time traces, and more. These notations usually have different purposes and semantics so that it is difficult to keep information consistent during development. In this position paper we propose an alternative approach tomodel-driven software development that enhances program code with abstract specification information. Thus the program code can be considered at different views for design, verification, execution, and monitoring, while information of interest is continuously available in a coherent notation.


  1. Hailpern, B., Tarr, P.: Model-driven development: The good, the bad, and the ugly. IBM Systems Journal 45 (2006) 451-461
  2. Holzmann, G.J., Joshi, R., Groce, A.: Model driven code checking. Automated Software Engineering 15 (2008) 283-297
  3. Bodden, E.: The Design and Implementation of Formal Monitoring Techniques. In: Companion to the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007, October 21-25, 2007, Montreal, Quebec, Canada, ACM (2007) 939-940
  4. Vokác?, M., Glattetre, J.M.: Using a Domain-Specific Language and Custom Tools to Model a Multi-tier Service-Oriented Application - Experiences and Challenges. In Briand, L., Williams, C., eds.: Model Driven Engineering Languages and Systems, 8th International Conference, MoDELS 2005, Montego Bay, Jamaica, October 2-7, 2005, Proceedings. Volume 3713 of LNCS., Springer (2005) 492-506
  5. Fowler, M.: PlatformIndependentMalapropism (2003) PlatformIndependentMalapropism.html.
  6. Mikkonen, T.: Formalizing Design Patterns. In: ICSE 7898: Proceedings of the 20th international conference on Software engineering, Washington, DC, USA, IEEE Computer Society (1998) 115-124
  7. Schwarz, D.: Peeking Inside the Box: Attribute-Oriented Programming with Java 1.5. (2004)
  8. Balz, M., Striewe, M., Goedicke, M.: Embedding State Machine Models in Object-Oriented Source Code. In: Proceedings of the 3rd Workshop on Models@run.time at MODELS 2008. (2008) 6-15
  9. Balz, M., Goedicke, M.: Embedding Process Models in Object-Oriented Program Code. In: Proceedings of the First Workshop on Behavioural Modelling in Model-Driven Architecture (BM-MDA). (2009)
  10. Demers, F.N., Malenfant, J.: Reflection in logic, functional and object-oriented programming: a short comparative study. In: In IJCAI 7895 Workshop on Reflection and Metalevel Architectures and their Applications in AI. (1995) 29-38
  11. Larsen, K.G., Pettersson, P., Yi, W.: UPPAAL in a Nutshell. Int. Journal on Software Tools for Technology Transfer 1 (1997) 134-152
  12. Visser, W., Havelund, K., Brat, G., Park, S., Lerda, F.: Model Checking Programs. Automated Software Engineering Journal 10 (2003)
  13. Striewe, M., Balz, M., Goedicke, M.: SyLaGen - An Extendable Tool Environment for Generating Load. In Mller-Clostermann, B., Echtle, K., Rathgeb, E., eds.: Proceedings of ”Measurement, Modelling and Evaluation of Computing Systems” and ”Dependability and Fault Tolerance” 2010, March 15 - 17, Essen, Germany. Volume 5987 of LNCS., Springer (2010) 307-310
  14. Demeyer, S., Ducasse, S., Tichelaar, S.: Why Unified is not Universal? UML Shortcomings for Coping with Round-trip Engineering. In: UML'99: The Unified Modeling Language - Beyond the Standard, Second International Conference, Fort Collins, CO, USA, October 28-30, 1999, Proceedings. (1999) 630-644
  15. Serugendo, G.D.M., Deriaz, M.: Specification-Carrying Code for Self-Managed Systems. In: IFIP/IEEE International Workshop on Self-Managed Systems and Services. (2005)
  16. Antkiewicz, M.: Round-trip engineering using framework-specific modeling languages. In: OOPSLA 7807: Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion, New York, NY, USA, ACM (2007) 927-928
  17. Freeman, S., Pryce, N.: Evolving an Embedded Domain-Specific Language in Java. In: OOPSLA 7806: Companion to the 21st ACM SIGPLAN Symposium on Object-oriented Programming Systems, Languages, and Applications, New York, NY, USA, ACM (2006) 855- 865
  18. Mak, J.K.H., Choy, C.S.T., Lun, D.P.K.: Precise modeling of design patterns in uml. In: ICSE 7804: Proceedings of the 26th International Conference on Software Engineering, Washington, DC, USA, IEEE Computer Society (2004) 252-261
  19. Beckert, B., Hhnle, R., Schmitt, P.H.: Verification of Object-Oriented Software. The KeY Approach. Springer-Verlag New York, Inc. (2007)
  20. Starr, L.: Executable Uml: How to Build Class Models. Prentice Hall PTR, Upper Saddle River, NJ, USA (2001)
  21. Raistrick, C., Francis, P., Wright, J.: Model Driven Architecture with Executable UML. Cambridge University Press, New York, NY, USA (2004)
  22. Hen-Tov, A., Lorenz, D.H., Schachter, L.: ModelTalk: A Framework for Developing Domain Specific Executable Models. In: Proceedings of the 8th OOPSLA Workshop on DomainSpecific Modeling. (2008)

Paper Citation

in Harvard Style

Balz M., Striewe M. and Goedicke M. (2010). Continuous Maintenance of Multiple Abstraction Levels in Program Code . In Proceedings of the 2nd International Workshop on Future Trends of Model-Driven Development - Volume 1: FTMDD, (ICEIS 2010) ISBN 978-989-8425-10-2, pages 68-79. DOI: 10.5220/0003026500680079

in Bibtex Style

author={Moritz Balz and Michael Striewe and Michael Goedicke},
title={Continuous Maintenance of Multiple Abstraction Levels in Program Code},
booktitle={Proceedings of the 2nd International Workshop on Future Trends of Model-Driven Development - Volume 1: FTMDD, (ICEIS 2010)},

in EndNote Style

JO - Proceedings of the 2nd International Workshop on Future Trends of Model-Driven Development - Volume 1: FTMDD, (ICEIS 2010)
TI - Continuous Maintenance of Multiple Abstraction Levels in Program Code
SN - 978-989-8425-10-2
AU - Balz M.
AU - Striewe M.
AU - Goedicke M.
PY - 2010
SP - 68
EP - 79
DO - 10.5220/0003026500680079