sMML – A Smart MetaModeling Language for Flexible Modeling
Graduate School of Information and Technology, Hokkaido University, N14, W9, Kita-ku, Sapporo 060-0814, Japan
Modeling is the key to software design, from large information systems to embedded software. Without well-considered software models, the developed implementation becomes inconsistent or distant from the original requirement. A model is created using a modeling language. UML is a standardized general-purpose modeling language widely used in enterprise systems design. Because it is very large language, UML is not always appropriate for designing small software. Designers also often want to describe models differently based on the immediate need preferring simple, application-specific but flexible notation rather than the rigidity of UML. We propose a metamodeling language, called sMML, to define custom-made modeling language that enables designers to define a suitable modeling language on demand, then write actual models using it. sMML is a metamodeling language small enough to define a variety of modeling languages, self-closed and independent of other modeling languages, and aligned with UML. After completely defining sMML, we present experimental results applying sMML, taking a simple modeling language and UML as examples, which demonstrates that sMML is useful for flexible modeling and capable of defining a wide range of modeling languages.
-  G. Booch, “The Unified Modeling Language User Guide,” Addison-Wesley, 1999.
-  I. Jacobson, G. Booch, and J. Rumbaugh, “The Unified Software Development Process,” Addison-Wesley, 1999.
-  OMG, “UML 2.0 Infrastructure Specification,” ptc/2003-09-15, 2003.
-  OMG, “UML 2.0 Superstructure Specification,” ptc/2003-08-02, 2003.
-  OMG, “UML 2.0 OCL,” ptc/2003-10-14, 2003.
-  OMG, “Meta Object Facility (MOF) 2.0,” ad/2003-04-07, 2003.
-  ISO/IEC, “Open Distributed Processing – Reference Model (RMODP),” ISO/IEC 10746, 1995-98.
-  J. Miller, J. Mukerji et al., “MDA guide version 1.0,” OMG omg/2003-05-01, May 2003.
-  M. Oya, “MDA and System Design,” Presentation at Object Management Group Technical Meeting,
-  K. Hirose, and M. Oya, “General Theory of Flow-Charts,” Comment. Math. Univ. St. Pauli XXI-2, pp. 55-71, 1972.
-  M. Show, and D. Garlan, “Software Architecture,” Prentice-Hall, 1996.
-  G. Smith, “The Object-Z Specification Language,” Kluwer Academic Publishers, 2000.
-  H. Horiuchi, and M. Oya, “Business Object Sharing Technology,” Ohmu-sha, 2003. (in Japanese)
This article is published under a Creative Commons Attribution-NoDerivatives 4.0 International License.
Copyright© 2005 by Fuji Technology Press Ltd. and Japan Society of Mechanical Engineers. All right reserved.