Platform-specific model
Encyclopedia
A platform-specific model is a model of a software or business system that is linked to a specific technological platform (e.g. a specific programming language
, operating system
or database
). Platform-specific models are indispensable for the actual implementation of a system.
For example, a need to implement an online shop. The system will need to store information regarding users, goods, credit cards, etc. The designer might decide to use for this purpose an Oracle database
. For this to work, the designer will need to express concepts (e.g. the concept of a user) in a relational model
using the Oracle
's SQL
dialect. This Oracle
's specific relational model
is an example of a Platform-specific model.
The term platform-specific model is most frequently used in the context of the MDA
approach. This MDA approach corresponds the OMG
vision of Model Driven Engineering. The main idea is that it should be possible to use a MTL
to transform a Platform-independent model
into a Platform-specific model. In order to achieve this transformation, one can use a language compliant to the newly defined QVT
standard. Examples of such languages are AndroMDA, VIATRA
or ATL
.
Programming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....
, operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
or database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...
). Platform-specific models are indispensable for the actual implementation of a system.
For example, a need to implement an online shop. The system will need to store information regarding users, goods, credit cards, etc. The designer might decide to use for this purpose an Oracle database
Oracle database
The Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....
. For this to work, the designer will need to express concepts (e.g. the concept of a user) in a relational model
Relational model
The relational model for database management is a database model based on first-order predicate logic, first formulated and proposed in 1969 by Edgar F...
using the Oracle
Oracle database
The Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....
's SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....
dialect. This Oracle
Oracle database
The Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....
's specific relational model
Relational model
The relational model for database management is a database model based on first-order predicate logic, first formulated and proposed in 1969 by Edgar F...
is an example of a Platform-specific model.
The term platform-specific model is most frequently used in the context of the MDA
Model-driven architecture
Model-driven architecture is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of...
approach. This MDA approach corresponds the OMG
Object Management Group
Object Management Group is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling and model-based standards.- Overview :...
vision of Model Driven Engineering. The main idea is that it should be possible to use a MTL
Model Transformation Language
A model transformation language in systems and software engineering is a language for model transformation.- Overview :The notion of model transformation is of central importance to information technology. A software system may be seen as a set of information transformations...
to transform a Platform-independent model
Platform-independent model
A Platform-Independent Model in software engineering is a model of a software system or business system, that is independent of the specific technological platform used to implement it...
into a Platform-specific model. In order to achieve this transformation, one can use a language compliant to the newly defined QVT
QVT
QVT is a standard set of languages for model transformation defined by the Object Management Group .- Overview :...
standard. Examples of such languages are AndroMDA, VIATRA
VIATRA
The VIATRA framework is the core of a transformation-based verification and validation environment for improving the quality of systems designed using the Unified Modeling Language by automatically checking consistency, completeness, and dependability requirements.- Target Application Domains...
or ATL
ATLAS Transformation Language
ATL is a model transformation language and toolkit developed and maintained by OBEO and AtlanMod. It was initiated by the team...
.
Related Concepts
- Model-driven architectureModel-driven architectureModel-driven architecture is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of...
(MDA is an OMG Trademark), (MDE is not an OMG Trademark) - Model Integrated Computing (MIC)
- Generic Modeling EnvironmentGeneric Modeling EnvironmentGeneric Modeling Environment is a model-integrated program synthesis tool for creating domain-specific models of large-scale systems. GME allows users to define new modeling languages using UML-based metamodels...
(GME) - Eclipse Modeling FrameworkEclipse Modeling FrameworkEclipse Modeling Framework is an Eclipse-based modeling framework and code generation facility for building tools and other applications based on a structured data model...
(EMF) - Graphical Modeling FrameworkGraphical Modeling FrameworkThe Graphical Modeling Framework is a framework within the Eclipse platform. It provides a generative component and runtime infrastructure for developing graphical editors based on the Eclipse Modeling Framework and Graphical Editing Framework...
(GMF) - Domain Specific Language (DSL)
- Domain-specific modelling (DSM)
- Model-based testingModel-based testingModel-based testing is the application of Model based design for designing and optionally executing the necessary artifacts to perform software testing. Models can be used to represent the desired behavior of the System Under Test , or to represent the desired testing strategies and testing...
(MBT) - Meta-modeling
- ATLATLAS Transformation LanguageATL is a model transformation language and toolkit developed and maintained by OBEO and AtlanMod. It was initiated by the team...
- VIATRAVIATRAThe VIATRA framework is the core of a transformation-based verification and validation environment for improving the quality of systems designed using the Unified Modeling Language by automatically checking consistency, completeness, and dependability requirements.- Target Application Domains...
- XMI
- OCLOCLThe initialism OCL can have several meanings, depending on context:*OCl−, the hypochlorite ion, in chemistry*Object Constraint Language*Ocean Climate Laboratory *Ocean County Library*Old Colony League, a high school sports league in Massachusetts...
- MTLModel Transformation LanguageA model transformation language in systems and software engineering is a language for model transformation.- Overview :The notion of model transformation is of central importance to information technology. A software system may be seen as a set of information transformations...
- MOFMeta-Object FacilityThe Meta-Object Facility is an Object Management Group standard for model-driven engineering. The official reference page may be found at OMG's website.- Overview :...
- Object-oriented analysis and designObject-oriented analysis and designObject-oriented analysis and design is a software engineering approach that models a system as a group of interacting objects. Each object represents some entity of interest in the system being modeled, and is characterised by its class, its state , and its behavior...
(OOAD)