Home | Sitemap | Index | Contact | Legals | KIT

Publications of Max E. Kramer

Books

[1] Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer, and Klaus Krogmann. Modeling and Simulating Software Architectures - The Palladio Approach. MIT Press, Cambridge, MA, October 2016. [ bib | http | Abstract ]
Too often, software designers lack an understanding of the effect of design decisions on such quality attributes as performance and reliability. This necessitates costly trial-and-error testing cycles, delaying or complicating rollout. This book presents a new, quantitative architecture simulation approach to software design, which allows software engineers to model quality of service in early design stages. It presents the first simulator for software architectures, Palladio, and shows students and professionals how to model reusable, parametrized components and configured, deployed systems in order to analyze service attributes. The text details the key concepts of Palladio's domain-specific modeling language for software architecture quality and presents the corresponding development stage. It describes how quality information can be used to calibrate architecture models from which detailed simulation models are automatically derived for quality predictions. Readers will learn how to approach systematically questions about scalability, hardware resources, and efficiency. The text features a running example to illustrate tasks and methods as well as three case studies from industry. Each chapter ends with exercises, suggestions for further reading, and "takeaways" that summarize the key points of the chapter. The simulator can be downloaded from a companion website, which offers additional material. The book can be used in graduate courses on software architecture, quality engineering, or performance engineering. It will also be an essential resource for software architects and software engineers and for practitioners who want to apply Palladio in industrial settings.

Refereed Journal Articles

[1] Phu H. Nguyen, Max Kramer, Jacques Klein, and Yves Le Traon. An extensive systematic review on the Model-Driven Development of secure systems. Information and Software Technology, 68:62-81, 2015, Elsevier Science Publishers B. V. [ bib | DOI | http | Abstract ]
Context: Model-Driven Security (MDS) is as a specialised Model-Driven Engineering research area for supporting the development of secure systems. Over a decade of research on {MDS} has resulted in a large number of publications. Objective: To provide a detailed analysis of the state of the art in MDS, a systematic literature review (SLR ) is essential. Method: We conducted an extensive {SLR} on MDS. Derived from our research questions, we designed a rigorous, extensive search and selection process to identify a set of primary {MDS} studies that is as complete as possible. Our three-pronged search process consists of automatic searching, manual searching, and snowballing. After discovering and considering more than thousand relevant papers, we identified, strictly selected, and reviewed 108 {MDS} publications. Results: The results of our {SLR} show the overall status of the key artefacts of MDS, and the identified primary {MDS} studies. For example, regarding security modelling artefact, we found that developing domain-specific languages plays a key role in many {MDS} approaches. The current limitations in each {MDS} artefact are pointed out and corresponding potential research directions are suggested. Moreover, we categorise the identified primary {MDS} studies into 5 significant {MDS} studies, and other emerging or less common {MDS} studies. Finally, some trend analyses of {MDS} research are given. Conclusion: Our results suggest the need for addressing multiple security concerns more systematically and simultaneously, for tool chains supporting the {MDS} development cycle, and for more empirical studies on the application of {MDS} methodologies. To the best of our knowledge, this {SLR} is the first in the field of Software Engineering that combines a snowballing strategy with database searching. This combination has delivered an extensive literature study on MDS.

Refereed Conference Papers

[1] Georg Hinkel, Max Kramer, Erik Burger, Misha Strittmatter, and Lucia Happe. An Empirical Study on the Perception of Metamodel Quality. In Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development, Rome, Italy, February 19-21, 2016, pages 145-152. [ bib | http | .pdf | Abstract ]
Despite the crucial importance of metamodeling for Model- Driven Engineering (MDE), there is still little discussion about the quality of metamodel design and its consequences in model-driven development processes. Presumably, the quality of metamodel design strongly affects the models and transformations that conform to these metamodels. However, so far surprisingly few work has been done to validate the characterization of metamodel quality. A proper characterization is essential to automate quality improvements for metamodels such as metamodel refactorings. In this paper, we present an empirical study to sharpen the understanding of the perception of metamodel quality. In the study, 24 participants created metamodels of two different domains and evaluated the metamodels in a peer review process according to an evaluation sheet. The results show that the perceived quality was mainly driven by the metamodels completeness, correctness and modularity while other quality attributes could be neglected.
[2] Sebastian Fiss, Max E. Kramer, and Michael Langhammer. Automatically binding variables of invariants to violating elements in an ocl-aligned xbase-language. In Proceedings of Modellierung 2016, Andreas Oberweis and Ralf Reussner, editors, 2016, volume P-254 of Lecture Notes in Informatics (LNI), pages 189-204. Gesellschaft für Informatik e.V. (GI), Bonn, Germany. 2016. [ bib | .pdf | Abstract ]
Constraints that have to hold for all models of a modeling language are often specified as invariants using the Object Constraint Language (OCL). If violations of such invariants shall be documented or resolved in a software system, the exact model elements that violate these conditions have to be computed. OCL validation engines provide, however, only a single context element at which a check for a violated invariant originated. Therefore, the computation of elements that caused an invariant violation is often specified in addition to the invariant declaration with redundant information. These redundancies can make it hard to develop and maintain systems that document or resolve invariant violations. In this paper, we present an automated approach and tool for declaring and binding parameters of invariants to violating elements based on boolean invariant expressions that are similar to OCL invariants. The tool computes a transformed invariant that returns violating elements for each iterator variable of the invariant expression that matches an explicitly declared invariant parameter. The approach can be used for OCL invariants and all models of languages conforming to the Meta-Object Facility (MOF) standard. We have evaluated our invariant language and transformation tool by transforming 88 invariants of the Unified Modeling Language (UML).
[3] Max E. Kramer, Michael Langhammer, Dominik Messinger, Stephan Seifermann, and Erik Burger. Change-driven consistency for component code, architectural models, and contracts. In Proceedings of the 18th International ACM SIGSOFT Symposium on Component-Based Software Engineering, Montréal, QC, Canada, 2015, CBSE '15, pages 21-26. ACM, New York, NY, USA. 2015. [ bib | DOI | http | .pdf ]
[4] Max E. Kramer, Jacques Klein, Jim R. H. Steel, Brice Morin, Jörg Kienzle, Olivier Barais, and Jean-Marc Jézéquel. Achieving practical genericity in model weaving through extensibility. In Theory and Practice of Model Transformations, Keith Duddy and Gerti Kappel, editors, volume 7909 of Lecture Notes in Computer Science, pages 108-124. Springer Berlin Heidelberg, 2013. [ bib | DOI | http | .pdf ]
[5] Phu H. Nguyen, Jacques Klein, Max E. Kramer, and Yves Le Traon. A systematic review of model-driven security. In Proceedings of the 2013 20th Asia-Pacific Software Engineering Conference, 2013, volume 1, pages 432-441. IEEE Computer Society. 2013. [ bib | DOI | Abstract ]
To face continuously growing security threats and requirements, sound methodologies for constructing secure systems are required. In this context, Model-Driven Security (MDS) has emerged since more than a decade ago as a specialized Model-Driven Engineering approach for supporting the development of secure systems. MDS aims at improving the productivity of the development process and quality of the resulting secure systems, with models as the main artifact. This paper presents how we systematically examined existing published work in MDS and its results. The systematic review process, which is based on a formally designed review protocol, allowed us to identify, classify, and evaluate different MDS approaches. To be more specific, from thousands of relevant papers found, a final set of the most relevant MDS publications has been identified, strictly selected, and reviewed. We present a taxonomy for MDS, which is used to synthesize data in order to classify and evaluate the selected MDS approaches. The results draw a wide picture of existing MDS research showing the current status of the key aspects in MDS as well as the identified most relevant MDS approaches. We discuss the main limitations of the existing MDS approaches and suggest some potential research directions based on these insights.
[6] Mauricio Alférez, Nuno Amálio, Selim Ciraci, Franck Fleurey, Jörg Kienzle, Jacques Klein, Max Kramer, Sebastien Mosser, Gunter Mussbacher, Ella Roubtsova, and Gefei Zhang. Aspect-oriented model development at different levels of abstraction. In Modelling Foundations and Applications, Robert France, Jochen Kuester, Behzad Bordbar, and Richard Paige, editors, volume 6698 of Lecture Notes in Computer Science, pages 361-376. Springer Berlin / Heidelberg, 2011. [ bib | http | Abstract ]
The last decade has seen the development of diverse aspect-oriented modeling (AOM) approaches. This paper presents eight different AOM approaches that produce models at different level of abstraction. The approaches are different with respect to the phases of the development lifecycle they target, and the support they provide for model composition and verification. The approaches are illustrated by models of the same concern from a case study to enable comparing of their expressive means. Understanding common elements and differences of approaches clarifies the role of aspect-orientation in the software development process.

Refereed Workshop Papers

[1] Max E. Kramer, Georg Hinkel, Heiko Klare, Michael Langhammer, and Erik Burger. A controlled experiment template for evaluating the understandability of model transformation languages. In Proceedings of the Second International Workshop on Human Factors in Modeling co-located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), October 2016, volume 1805 of CEUR Workshop Proceedings, pages 11-18. CEUR-WS.org. October 2016. [ bib | http | .pdf ]
[2] Max E. Kramer and Kirill Rakhman. Automated inversion of attribute mappings in bidirectional model transformations. In Proceedings of the 5th International Workshop on Bidirectional Transformations (Bx 2016), Anthony Anjorin and Jeremy Gibbons, editors, Eindhoven, The Netherlands, 2016, volume 1571 of CEUR Workshop Proceedings, pages 61-76. CEUR-WS.org. 2016. [ bib | http | .pdf ]
[3] Stephan Seifermann, Kateryna Yurchenko, and Max E. Kramer. Challenges to trading-off performance and privacy of component-based systems. In Symposium on Software Performance (SSP), 2016, volume 36(4) of Softwaretechnik-Trends. Gesellschaft für Informatik e.V. (GI). 2016. [ bib | .pdf ]
[4] Max E. Kramer and Michael Langhammer. Proposal for a multi-view modelling case study: Component-based software engineering with uml, plug-ins, and java. In Proceedings of the 2nd Workshop on View-Based, Aspect-Oriented and Orthographic Software Modelling, York, United Kingdom, 2014, VAO '14, pages 7:7-7:10. ACM, New York, NY, USA. 2014. [ bib | DOI | http | .pdf ]
[5] Michael Langhammer and Max E. Kramer. Determining the intent of code changes to sustain attached model information during code evolution. In Fachgruppenbericht des 2. Workshops “Modellbasierte und Modellgetriebene Softwaremodernisierung”, volume 34 (2) of Softwaretechnik-Trends. Gesellschaft für Informatik e.V. (GI), 2014. [ bib | http | .pdf ]
[6] Max E. Kramer, Erik Burger, and Michael Langhammer. View-centric engineering with synchronized heterogeneous models. In Proceedings of the 1st Workshop on View-Based, Aspect-Oriented and Orthographic Software Modelling, Montpellier, France, 2013, VAO '13, pages 5:1-5:6. ACM, New York, NY, USA. 2013. [ bib | DOI | http | .pdf ]
[7] Michael Langhammer, Sebastian Lehrig, and Max E. Kramer. Reuse and configuration for code generating architectural refinement transformations. In Proceedings of the 1st Workshop on View-Based, Aspect-Oriented and Orthographic Software Modelling, Montpellier, France, 2013, VAO '13, pages 6:1-6:5. ACM, New York, NY, USA. 2013. [ bib | DOI | http | .pdf ]
[8] Max E. Kramer, Zoya Durdik, Michael Hauck, Jörg Henss, Martin Küster, Philipp Merkle, and Andreas Rentschler. Extending the Palladio Component Model using Profiles and Stereotypes. In Palladio Days 2012 Proceedings (appeared as technical report), Steffen Becker, Jens Happe, Anne Koziolek, and Ralf Reussner, editors, 2012, Karlsruhe Reports in Informatics ; 2012,21, pages 7-15. KIT, Faculty of Informatics, Karlsruhe. 2012. [ bib | http | http | Abstract ]
Extending metamodels to account for new concerns has a major influence on existing instances, transformations and tools. To minimize the impact on existing artefacts, various techniques for extending a metamodel are available, for example, decorators and annotations. The Palladio Component Model (PCM) is a metamodel for predicting quality of component-based software architectures. It is continuously extended in order to be applicable in originally unexpected domains and settings. Nevertheless, a common extension approach for the PCM and for the tools built on top of it is still missing. In this paper, we propose a lightweight extension approach for the PCM based on profiles and stereotypes to close this gap. Our approach is going to reduce the development effort for new PCM extensions by handling both the definition and use of extensions in a generic way. Due to a strict separation of the PCM, its extension domains, and the connections in between, the approach also increases the interoperability of PCM extensions.
[9] Max E. Kramer, Jacques Klein, and Jim R.H. Steel. Building specifications as a domain-specific aspect language. In Proceedings of the seventh workshop on Domain-Specific Aspect Languages, Potsdam, Germany, 2012, DSAL '12, pages 29-32. ACM, New York, NY, USA. 2012. [ bib | DOI | http | .pdf | Abstract ]
In the construction industry an increasing number of buildings is designed using semantically rich three-dimensional models. In parallel, additional information called building specifications is specified in a text file using natural language. As not all details are present in the model these specifications have to be interpreted whenever costs are estimated or other analysis is performed. In this paper, we argue that building specifications are cross-cutting concerns. We also argue that domain experts shall be given the possibility to formulate buildings specifications using a domain-specific aspect language so that the corresponding details can automatically be integrated into the model. Moreover these domain-exports shall define the semantics of this language iteratively in order to have a flexible support for domain-specific abstractions absent in the building metamodel. This model enriching specification could improve various tasks that take details into account that were so far only covered by the specification text. It would also allow for earlier or even concurrent development of the building specification along with the model.
[10] Max E. Kramer and Jörg Kienzle. Mapping aspect-oriented models to aspect-oriented code. In Models in Software Engineering, Juergen Dingel and Arnor Solberg, editors, volume 6627 of Lecture Notes in Computer Science, pages 125-139. Springer Berlin / Heidelberg, 2011. [ bib | http | Abstract ]
When aspect-oriented modeling techniques are used in the context of Model-Driven Engineering, a possible way of obtaining an executable from an aspect-oriented model is to map it to code written in an aspect-oriented programming language. This paper outlines the most important challenges that arise when defining such a mapping: mapping structure and behavior of a single aspect, mapping instantiation of structure and behavior in target models, mapping conflict resolution between aspects, and mapping aspect dependencies and variability. To explain these mapping issues, our paper presents details on how to map Reusable Aspect Models (RAM) to AspectJ source code. The ideas are illustrated by presenting example models and corresponding mapped code from the AspectOptima case study.

Refereed Papers on Doctoral Symposia

[1] Max E. Kramer. A generative approach to change-driven consistency in multi-view modeling. In Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures, Montréal, QC, Canada, 2015, QoSA '15, pages 129-134. ACM, New York, NY, USA. 2015, 20th International Doctoral Symposium on Components and Architecture (WCOP '15). [ bib | DOI | http | .pdf ]
[2] Max E. Kramer. Synchronizing heterogeneous models in a view-centric engineering approach. In Software Engineering 2014 - Fachtagung des GI-Fachbereichs Softwaretechnik, Wilhelm Hasselbring and Nils Christian Ehmke, editors, Kiel, Germany, 2014, volume 227 of GI Lecture Notes in Informatics, pages 233-236. Gesellschaft für Informatik e.V. (GI). 2014, Doctoral Symposium. [ bib | .pdf | .pdf ]

Papers on Computer Science Education

[1] Matthias Budde, Sarah Grebing, Erik Burger, Max E. Kramer, Bernhard Beckert, Michael Beigl, and Ralf Reussner. Praxis der Forschung - Eine Lehrveranstaltung des forschungsnahen Lehrens und Lernens in der Informatik am KIT. Neues Handbuch Hochschullehre, 74(A 3.19), 2016, DUZ Verlags- und Medienhaus GmbH. [ bib | Abstract ]
Der neue Lehrveranstaltungstyp Praxis der Forschung wurde 2012 im Master-Studiengang Informatik des Karlsruher Instituts für Technologie (KIT) eingeführt. Zentrales Konzept dieser Veranstaltung ist das forschungsnahe Lehren und Lernen: Studierende erwerben im Rahmen eines eigenen Forschungsprojekts sowohl Fachwissen als auch methodische Kompetenz zu wissenschaftlicher Arbeit. Die konkrete Ausgestaltung folgt den Grundsätzen der Forschungsnähe und der integrierten Vermittlung methodischer Kompetenzen. Die Studierenden sollen insbesondere auch erfahren, dass es ein wesentlicher Aspekt der wissenschaftlichen Arbeit ist, Forschungsergebnisse sicht- und wahrnehmbar zu machen.

Book Chapters (not refereed)

[1] Ralf H. Reussner, Jörg Henss, and Max Kramer. Introduction. In Modeling and Simulating Software Architectures - The Palladio Approach, Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer, and Klaus Krogmann, editors, chapter 1, pages 3-15. MIT Press, Cambridge, MA, October 2016. [ bib | http ]
[2] Axel Busch, Robert Heinrich, Jörg Henss, Martin Küster, Sebastian Lehrig, Misha Strittmatter, Max Kramer, Erik Burger, and Ralf H. Reussner. Architectural viewpoints. In Modeling and Simulating Software Architectures - The Palladio Approach, Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer, and Klaus Krogmann, editors, chapter 3, pages 37-73. MIT Press, Cambridge, MA, October 2016. [ bib | http ]
[3] Nikolaus Huber and Max Kramer. Design trade-offs in ibm storage virtualization. In Modeling and Simulating Software Architectures - The Palladio Approach, Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer, and Klaus Krogmann, editors, chapter 13, pages 301-315. MIT Press, Cambridge, MA, October 2016. [ bib | http ]

Invited Papers (not refereed)

[1] Lucia Happe, Erik Burger, Max Kramer, Andreas Rentschler, and Ralf Reussner. Completion and Extension Techniques for Enterprise Software Performance Engineering. In Future Business Software - Current Trends in Business Software Development, Gino Brunetti, Thomas Feld, Joachim Schnitter, Lutz Heuser, and Christian Webel, editors, Progress in IS, pages 117-131. Springer International Publishing, 2014. [ bib | DOI ]

Posters

[1] Max E. Kramer, Michael Langhammer, Dominik Messinger, Stephan Seifermann, and Erik Burger. Change-driven multi-view consistency for component models, code, and contracts. Poster at the 18th International ACM SIGSOFT Symposium on Component-Based Software Engineering, 2015. [ bib ]
[2] Max E. Kramer, Anton Hergenröder, Martin Hecker, Simon Greiner, and Kaibin Bao. Specification and verification of confidentiality in component-based systems. Poster at the 35th IEEE Symposium on Security and Privacy, 2014. [ bib | .pdf | .pdf ]

Technical Reports

[1] Max E. Kramer and Kirill Rakhman. Proofs for the automated inversion of attribute mappings in bidirectional model transformations. Technical report, Karlsruhe Institute of Technology, Department of Informatics, Karlsruhe, 2016. [ bib | DOI | http | http ]
[2] Max E. Kramer, Michael Langhammer, Dominik Messinger, Stephan Seifermann, and Erik Burger. Realizing change-driven consistency for component code, architectural models, and contracts in vitruvius. Technical report, Karlsruhe Institute of Technology, Department of Informatics, Karlsruhe, 2015. [ bib | http | http ]
[3] Jacques Klein, Max E. Kramer, Jim R. H. Steel, Brice Morin, Jörg Kienzle, Olivier Barais, and Jean-Marc Jézéquel. On the formalisation of geko: a generic aspect models weaver. Technical report, University of Luxembourg, SnT, 2012. [ bib | http | .pdf | Abstract ]
This technical report presents the formalisation of the composition operator of GeKo, a Generic Aspect Models Weaver

Theses

[1] Max E. Kramer. Generic and extensible model weaving and its application to building models. Master's thesis, Karlsruhe Institute of Technology (KIT), Germany, 2012. [ bib | .pdf ]
[2] Max E. Kramer. Mapping reusable aspect models to aspect-oriented code. Study thesis, Karlsruhe Institute of Technology (KIT), Germany, 2010. [ bib | .pdf ]