Jump to content

Modeling language: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
→‎Examples: Removed Gellish English which seems to be a formal language
Line 14: Line 14:


== Examples ==
== Examples ==
Example of modelling languages are:
Example of modelling languages in the field of computer science, project management and systems engineering:
* [[Business Process Modeling Notation]] (BPMN, and the [[XML]] form BPML) is an example of a [[Process Modeling]] language.
* [[Business Process Modeling Notation]] (BPMN, and the [[XML]] form BPML) is an example of a [[Process Modeling]] language.
* [[ISO 10303-11|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.
* [[EAST-ADL]] is a [[Domain-Specific Modeling]] language dedicated to Automotive system design.
* [[Flowchart]] is a schematic representation of an algorithm or a stepwise process,
* [[Energy Systems Language]] (ESL), a language that aims to model ecological energetics & global economics.
* 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.
* [[Fundamental Modeling Concepts]] (FMC) modeling language for software-intensive systems.
* [[Fundamental Modeling Concepts]] (FMC) modeling language for software-intensive systems.
* [[IDEF]] is a family of modeling languages, the most notable of which include IDEF0, for functional modeling, and IDEF1 for information modeling.
* [[IDEF]] is a family of modeling languages, the most notable of which include IDEF0, for functional modeling, and IDEF1 for information modeling.
* [[Jackson Structured Programming]] (JSP) is a method for structured programming based on correspondences between data stream structure and program structure
* [[Lepus3|LePUS3]] is an [[object-oriented]] visual Design Description Language and a [[formal specification]] language that is suitable primarily for modelling large object-oriented ([[Java (programming language)|Java]], [[C++]], [[C Sharp (programming language)|C#]]) programs and [[design patterns]].
* [[Lepus3|LePUS3]] is an [[object-oriented]] visual Design Description Language and a [[formal specification]] language that is suitable primarily for modelling large object-oriented ([[Java (programming language)|Java]], [[C++]], [[C Sharp (programming language)|C#]]) programs and [[design patterns]].
* [[Object Role Modeling]] (ORM) in the field of software engineering is a method for conceptual modeling, and can be used as a tool for information and rules analysis.
* [[Petri net]]s 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.
* [[Petri net]]s 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.
* [[Specification and Description Language]](SDL) is a specification language targeted at the unambiguous specification and description of the behaviour of reactive and distributed systems.
* [[SysML]] is a [[Domain-Specific Modeling]] language for [[systems engineering]] that is defined as a UML profile (customization).
* [[SysML]] is a [[Domain-Specific Modeling]] language for [[systems engineering]] that is defined as a UML profile (customization).
* [[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.
* [[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.

Examples from other fields of science.
* [[EAST-ADL]] is a [[Domain-Specific Modeling]] language dedicated to Automotive system design.
* [[Energy Systems Language]] (ESL), a language that aims to model ecological energetics & global economics.


== Applications ==
== Applications ==

Revision as of 14:30, 23 September 2008

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.

Overview

A modeling language can be graphical or textual.[1]

  • 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).

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.

Examples

Example of modelling languages in the field of computer science, project management and systems engineering:

  • Business Process Modeling Notation (BPMN, and the XML form BPML) is an example of a Process Modeling language.
  • 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.
  • Flowchart is a schematic representation of an algorithm or a stepwise process,
  • Fundamental Modeling Concepts (FMC) modeling language for software-intensive systems.
  • IDEF is a family of modeling languages, the most notable of which include IDEF0, for functional modeling, and IDEF1 for information modeling.
  • Jackson Structured Programming (JSP) is a method for structured programming based on correspondences between data stream structure and program structure
  • LePUS3 is an object-oriented visual Design Description Language and a formal specification language that is suitable primarily for modelling large object-oriented (Java, C++, C#) programs and design patterns.
  • Object Role Modeling (ORM) in the field of software engineering is a method for conceptual modeling, and can be used as a tool for information and rules analysis.
  • 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.
  • Specification and Description Language(SDL) is a specification language targeted at the unambiguous specification and description of the behaviour of reactive and distributed systems.
  • SysML is a Domain-Specific Modeling language for systems engineering that is defined as a UML profile (customization).
  • 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.

Examples from other fields of science.

Applications

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.

See also

References

  1. ^ Xiao He ea., A metamodel for the notation of graphical modeling languages, in: Computer Software and Applications Conference, 2007. COMPSAC 2007 - Vol. 1. 31st Annual International, Volume 1, Issue , 24-27 July 2007 Page(s):219 - 224.