250 likes | 432 Views
INTELLIGENT POWERTRAIN DESIGN. The GENERIC MODELING ENVIRONMENT (GME). Shravana Kumar Musunuri, Jimmy Mathews Advisors: Dr. Joseph Picone Dr. David Gao Powertrain Design Tools Project. Outline. Overview of Computer-Based Systems (CBS)
E N D
INTELLIGENT POWERTRAIN DESIGN The GENERIC MODELING ENVIRONMENT (GME) Shravana Kumar Musunuri, Jimmy Mathews Advisors: Dr. Joseph Picone Dr. David Gao Powertrain Design Tools Project
Outline • Overview of Computer-Based Systems (CBS) • Introduction to Model Integrated Computing (MIC) • Principles of Domain Specific Modeling Environments (DSME) • Configurable Domain Specific Modeling Environments (CDSME) • Introduction to Generic Modeling Environment (GME) • GME Concepts
Computer-Based Systems • Necessity • Complex systems • Efficient and Faster • Capability of Modeling and Simulation • Challenges • Tight Integration of Information Processing and physical systems (prime importance) • Expensive to develop and maintain • Agility of applications
Model-Based Systems • Models: Mathematical abstractions of the behavior of physical artifacts • Modeling: Usage of abstractions (models) as programming elements • Model-Based Systems: Systems employing concepts of modeling • Provides basis for solving complex systems • Based on separation of problem-solving algorithm from the model
Model-Integrated Computing • Integration of Design tools and the executable system • Approach for rapid design and implementation of systems where the software, the environment and the integration constraints are modeled • Provides framework for developing domain artifacts for computer-based systems • Relies heavily on the use of domain-specific languages to describe the final system implementation
Model Integrated Computing (contd..) • Model Integrated Program Synthesis (MIPS): One approach of model integrated computing • Operates according to a domain-specific set of requirements and describes how any system in the domain can be modeled • Specifies types of entities, relationships and requirements for domain modeling • MultiGraph Architecture (MGA): Tool set for creating MIPS environments • Provides means for evolving domain-specific applications by model modifications and re-synthesis of applications.
Domain Specific Modeling • Domain: A family of related systems; e.g. engineering domain uses numerical analysis, matrix transforms, etc. • Domain-specific modeling (DSM) is a technology that focuses on higher levels of abstraction at the problem space and avoids low-level details at the solutions space. • Allows the user to manipulate graphical models of the problem in hand • Useful in automating different kinds of applications in which the environment is dynamic and tightly integrated with the physical environment including: • embedded systems • automotive manufacturing
Domain Specific Modeling Environment • DSME:A domain-specific environment that uses models to create systems • Only things related to a particular domain are available to the domain user • Examples: • Matlab, Spice, Microsoft Office, AutoCAD • Modeling Paradigm: Defines the family of models that can be created using the resultant MIPS environment • Provides the semantic , syntactic, presentation information regarding the domain, which are used in the construction of models.
Domain Specific Modeling Environment (contd..) • Metamodeling: Modeling of a modeling environment • Metamodels: • Models of a particular modeling environment • Provides formal semantics for Domain Specific Modeling Languages • Model Interpreters: • Performs the translation between domain models and applications • Traverses the model database, analyzes the models and creates the executable systems
Domain Specific Modeling [1] General Meta-Meta-Model Domain Meta-Model Domain Models Application Application Application Specific Instance Interpreter 1 Interpreter 2 Specify Construct Generate • Domain Specific Modeling Environment (contd..)
Domain Specific Modeling Environment (contd..) • Another view • Metamodeling tools are used to design a DSME. This customized environment is then used to develop the models of the system [4].
Overview of MIPS Overview of MIPS [4]
Configurable Domain Specific Modeling Environment (CDSME) • Why CDSME ? • Creating a DSME for each domain is expensive and time consuming. • To include various aspects for customization of an application • Example of CDSME: • Generic Modeling Environment (GME), developed by Institute for Software Integrated Systems (ISIS), Vanderbilt university.
Generic Modeling Environment • The Generic Modeling Environment is a configurable tool kit for creating domain-specific modeling, model analysis and program synthesis environments. • Configuration though UML and OCL based meta-models • Extensible architecture through MS COM and .net • Multiple standard backend support (ODBC,XML) • Multiple language support: C++, VB, Java, C#, Python • GME is based on the same Modeling Integrated Computing concepts like Modeling paradigm, Metamodels, MIPS.
Metaprogramming Interface Application Domain Environment Evolution Application Evolution App. 1 App. 2 App. 3 DSDE Model Builder Meta-Level Translation Model Interpretation GME Formal Specifications Model Interpreters Models • MIPS and GME link [7]
GME 4.0 Main Editing Window [6] • Title bar: Indicates the currently loaded project • Menu bar: Commands for certain operations on the model • Tool bar: Icon button shortcuts for several editing functions • Mode bar: Buttons for selecting and editing modes • Editing area: Area containing model editing windows • Part browser: Shows the parts that can be inserted in the current aspect of the current model • Attribute browser: Shows the attributes and preferences of an object • Status bar: Shows status, error messages, current edit mode,paradigm name, zoom factor and current time • Model browser: Shows either aggregation hierarchy of the project, type inheritance of model, or overview of the current modeling paradigm
GME Concepts • Models: An abstract object that represents something • Has state, identity and behavior • The purpose of GME is to create and manipulate these models. • E.g. A dataflow block is the model for an operator in Signal Processing domain. • A model can consist of various parts • like atoms, other models, references • sets and connections. • Default Icon
GME Concepts (contd..) • Models containing other models as parts are called compound models. • Models that cannot contain any other models as parts are called primitive models. • Atoms: Simple modeling objects that do not have internal structure, but they can have attributes • E.g. An output dataport on a dataflow block in Signal Processing domain.
GME Concepts (contd..) Model Hierarchy: Models can contain other models as parts, same or different kind as the parent model. This results in model hierarchy. E.g. Hierarchical dataflow diagrams in Signal Processing domain.
GME Concepts (contd..) • References: Objects that refer to other modeling objects • A reference can point to a model, an atom, a model embedded in another model or even another reference part. • Null references is possible • Connections: A line that connects two parts of a model • Has two attributes, appearance and directionality • When a line is drawn, GME checks whether the connection is legal or not by determining if the two types of objects are allowed to be connected together. • E.g. Connections between dataflow blocks in Signal Processing paradigm
GME Concepts (contd..) Links: A port through which the model is connected to another part within the parent model Aspects: Defines the kinds of parts that are visible in that aspect. The existence or visibility of a part within a particular aspect is determined by the modeling paradigm. E.g. Signal flow and ‘states’ aspects for a Signal Processing paradigm Attributes: Property of an object described textually. Objects can have multiple attributes. The modeling paradigm defines what attributes, range of values are to be present for the particular objects. E.g. Datatype of parameters in a Signal Processing paradigm
GME Concepts (contd..) • Attribute box associated with a parameter atom called pi. Sets: Represent different states of a ‘dynamic system’. Is composed of almost the same parts either in ‘visible’ or ‘missing’ mode depending on the state of the system. When a particular set is activated, only objects belonging to that set are ‘visible’, the others being ‘dimmed out’.
References • Hernandez.F,Bangalore.P,Gray.J,Reily.K , “ A Graphical Modeling Environment for the Generation of Workflows for the Globus Toolkit” , Workshop on Component Models and Systems for Grid Applications , June-July 2004. • Nordstrom.G, Karsai.G,et.al, “Model Integrated Computing-based Software Design and Evolution”, Conference on Life Cycle Software Engineering Technology for Modern Avionics, Missiles, and Smart Weapon Systems, , Huntsville, Alabama, August 2000. • Ledeczi A., “ Model Construction for Model-Integrated Computing”, 13th International Conference on Systems Engineering, Las Vegas, NV, August, 1999. • Sprinkle. J, “ Model-integrated computing”, IEEE Potentials, Volume: 23, Issue: 1 , February-March 2004. • Sztipanovits. J, Karsai. G, “Model-integrated computing”, Computer ,Volume: 30 , Issue: 4 , April 1997. • GME 4 User’s Manual , Institute for Software Integrated Systems, Vanderbilt University. • Akos Ledeczi, “ The Generic Modeling Environment”, Institute for Software Integrated Systems, Vanderbilt University.