Modeling language
From Wikipedia, the free encyclopedia
A modeling language is any artificial language that can be used to express information or knowledge or systems in a structure that is defined by a consistent set of rules. The rules are used for interpretation of the meaning of components in the structure. A modeling language can be graphical or textual.
Graphical modeling languages use a diagram techniques with named symbols that represent concepts and lines that connect the symbols and that represent relationships and various other graphical annotation to represent constraints.
Textual modeling languages typically use standardised keywords accompanied by parameters to make computer-interpretable expressions.
An example of a graphical modeling language and a corresponding textual modeling language is EXPRESS-G and EXPRESS (ISO 10303-11).
Various kinds of modeling languages are applied in different disciplines, including computer science, information management, business process modeling, software engineering, and systems engineering. Modeling languages can be used to specify system requirements, structures and behaviors. Modeling languages are intended to be used to precisely specify systems so that stakeholders (e.g., customers, operators, analysts, designers) can better understand the system being modeled. The more mature modeling languages are precise, consistent and executable. Informal diagramming techniques applied with drawing tools are expected to produce useful pictorial representations of system requirements, structures and behaviors, but not much else. Executable modeling languages applied with proper tool support, however, are expected to automate system verification, validation, simulation and code generation from the same representations.
Not all modeling languages are executable, and for those that are, the use of them doesn't necessarily mean that programmers are no longer required. On the contrary, executable modeling languages are intended to amplify the productivity of skilled programmers, so that they can address more challenging problems, such as parallel computing and distributed systems.
A large number of modeling languages appear in the literature.
[edit] Internal References
Example of modelling languages are:
- EXPRESS and EXPRESS-G (ISO 10303-11) is an international standard general-purpose data modeling language. It is used among others to specify various ISO standard data models, such as the application protocols of ISO 10303 (STEP), ISO 13584, ISO 15926 and others.
- Unified Modeling Language (UML) is a general-purpose modeling language that is an industry standard for specifying software-intensive systems. UML 2.0, the current version, supports thirteen different diagram techniques, and has widespread tool support.
- Petri nets use variations on exactly one diagramming technique and topology, namely the bipartite graph. The simplicity of its basic user interface easily enabled extensive tool support over the years, particularly in the areas of model checking, graphically-oriented simulation, and software verification.
- IDEF is a family of modeling languages, the most notable of which include IDEF0, for functional modeling, and IDEF1 for information modeling.
- SysML is a Domain-Specific Modeling language for systems engineering that is defined as a UML profile (customization).
- Energy Systems Language (ESL), a language that aims to model ecological energetics & global economics.
- Business Process Modeling Notation (BPNM, and the XML form BPML) is an example of a Process Modeling language.
[edit] See also
- Model-driven engineering (MDE)
- Metamodeling
- Model Driven Architecture (MDA is an OMG Trademark)
- Model-based testing (MBT)
- Object modeling language
- Analogical models