Abstract
A key issue in software engineering is the repeatable and rapid transition of software models into executable code. We have been faced with the specific problem to produce behavioral code from a UML State Diagram in the context of Enterprise Distributed Object Computing. Rather than associate code templates with the meta model elements of a StateMachine, we represent the StateMachine through a micro architecture based on design patterns represented as newly created model elements. The Object Constraint Language is used to specify these newly created model elements. From this specific solution (StateLator) we infer the generalized mechanism of a Model Transformation that algorithmically captures a transformation from a higher to a lower abstraction level in a software model and hence makes this process flexible and repeatable.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
Object Management Group (ed.): CORBA Specification Version 2.3. Formal Specification formal/98-12-1, Framingham (1998)
ObjectSpace, Inc.: Voyager ORB Ver. 3.1 (1999)
Batory, Don; Dasari, Sankar; Geraci, Bart e.a.: The GenVoca Model of Software-System Generation. In: IEEE Software, 11(5) (1994) 89–94
Shaw, Mary; Garlan, David: Software Architecture Perspectives On An Emerging Discipline. Prentice Hall (1996)
Booch, Grady: Object Solutions. Addison Wesley (1995)
Monroe, Robert T.; Kompanek, Andrew; Melton, Ralph; e.a.: Architectural Styles, Design Patterns, and Objects. In: IEEE Software, 14(1) (1997) 43–52
Harel, David: Statecharts: A visual formalism for complex systems. In: Science of Computer Programming, 8 (1987) 231–274
Cook, Steve; Daniels, John: Designing Object Systems Object Oriented Modelling with Syntropy. Prentice Hall (1994)
Barbier, Franck; Briand, Henri; Dano, Benedicte e. a.: The Executability of Object-Oriented Finite State Machines. In: Journal for Object Oriented Programming, 11(4), July/August (1998) 16–24
Gamma, Erich; Helm, Richard; Johnson, Ralph e. a.: Design Patterns: Abstraction and Reuse of Object-Oriented Design. In: ECOOP’ 93-Object-Oriented Programming. Proceedings (1993) 46–421
Gamma, Erich; Beck, Kent: JUnit: A Cook’s Tour. In: Java Report, 4(5) (1999) 27–38
Tokuda, Lance; Bartory, Don: Automated Software Evolution via Design Pattern Transformations. In: Proceedings of the 3rd Int. Symposium on Applied Corporate Computing, Monterrey, Mexico (1995)
Grundy, John; Hosking, John; Mugridge, Warwick B.: Inconsistency Management for Multiple-View Software Development Environments. In: IEEE Transactions On Software Engineering, 24(11) (1998) 961–981
McGregor, John: The Fifty-Foot Look at Analysis and Design Models. In: Journal for Object Oriented Programming, July/August (1998) 1–15
Schultz, Tom: Multiple Models. In: Rose Architect, 2(1) (1999) 12–15
Shlaer, Sally; Mellor, Stephen J.: Recursive Design of an Application-Independent Architecture. In: IEEE Software, 14(1) (1997) 61–72
Shlaer, Sally; Mellor, Stephen J.: Object Lifecycles Modeling the world in states. Prentice Hall (1992)
Shlaer, Sally; Mellor, Stephen J.: Recursive Design. In: Computer Language, 7(3) (199) 53ff.
Rational Software Corporation: Rational Unified Process Version 5.. Cupertino (1998)
Booch, Grady; Rumbaugh, James; Jacobsen, Ivar: The Unified Modeling Language User Guide. Addison Wesley (1999)
Gamma, Erich; Helm, Richard; Johnson, Ralph e. a.: Design Patterns Elements of Reusable Object-Oriented Software. Addison Wesley (1994)
Martin, Robert C.; Riehle, Dirk; Buschmann, Frank (eds.): Pattern Languages Of Program Design 3. Addison Wesley (1998)
Object Management Group, Rational; Microsoft; HP; Oracle e.a. (eds.): UML Semantics Version 1.1. (1997)
Object Management Group, UML Revision Task Force (ed.): UML Semantics Version 1.3. (1999)
Fraser, Steven; Martin, Robert C.; Mellor, Stephen J. e.a.: Translation: Myth or Reality?, Summary of the Panel / Debate Session. In: Proceedings of OOPSALA’ 96 (1996) 441–443
Gossain, Sanjiv: Object Modeling and Design Strategies Tip and Techniques. SIGS Publications (1997)
Warmer, Jos; Kleppe, Anneke: The Object Constraint Language-Precise Modeling With UML. Addison Wesley (1999)
Richters, Mark; Gogolla, Martin: On Formalizing the UML Object Constraint Language OCL. In: Conceptual Modeling-ER’98, Proceedings, Springer Verlag (1998) 449–464
Mandel, Luis; Cengarle, Victoria: On the Expressive Power of OCL. In: FM’99-Formal Methods, Proceedings, Springer Verlag (1999) 854–874
Richters, Mark; Gogolla, Martin: A Metamodel for OCL. In: UML’99-The Unified Modeling Language, Proceedings, Springer Verlag (1999)
Jacobsen, Ivar; Ericson, Maria; Jacobsen, Agneta: The Object Advantage, Business Process Reengineering with Object Technology. Addison Wesley (1995)
Harel, David; Kupferman, Orna: On the Inheritance of State-Based Object Behavior. The Weizmann Institute of Science, Rehovot Israel, Department of Computer Science and Applied Mathematics, Internal Report, MCS99-12 (1999)
Object Management Group, Fujitsu, IBM, Oracle, Recerca Informatica, Unisys e.a. (eds.): XMI Specification. (1998)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Behrens, T., Richards, S. (2000). StateLator - Behavioral Code Generation as an Instance of a Model Transformation. In: Wangler, B., Bergman, L. (eds) Advanced Information Systems Engineering. CAiSE 2000. Lecture Notes in Computer Science, vol 1789. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45140-4_27
Download citation
DOI: https://doi.org/10.1007/3-540-45140-4_27
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67630-0
Online ISBN: 978-3-540-45140-2
eBook Packages: Springer Book Archive