Modeling language: Difference between revisions

Content deleted Content added
mergefrom
No edit summary
Line 1:
{{mergefrom|Modeling perspectives}}
{{citations missing}}
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.
A '''modeling language''' is any [[language]] that supports the representation of a system by abstractions that are meaningful from the viewpoint (perspective) of a system stakeholder. The term is defined loosely, since it is applied broadly to many 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.
 
''Graphical'' modeling languages use a [[diagramming technique|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.
Although modeling languages are commonly composed of [[diagramming technique|diagram techniques]], the more mature modeling languages are expected to be more than the sum of their parts in terms of precision, consistency and executability. 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 pictorial representations.
 
''Textual'' modeling languages typically use standardised keywords accompanied by parameters to make computer interpretabl expressions.
 
An example of a graphical modeling language and a corresponding textual modeling language is EXPRESS-G and EXPRESS ([[ISO 10303-11]]).
 
AVarious '''modeling language''' is any [[language]] that supports the representationkinds of amodeling system by abstractions thatlanguages are meaningful from the viewpoint (perspective) of a system stakeholder. The term is defined loosely, since it is applied broadly toin manydifferent 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.
Although modeling languages are commonly composed of [[diagramming technique|diagram techniques]], theThe more mature modeling languages are expected to be more than the sum of their parts in terms of precisionprecise, consistencyconsistent and executabilityexecutable. 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 pictorial 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 system]]s.
 
A large number of modeling languages appear in the literature. Here we focus on industry standards with extensive tool support:
 
== Internal References ==
 
Example of modelling languages are:
* [[Unified Modeling Language]] (UML) is a [[general-purpose modeling]] language that is the industry standard for specifying software-intensive systems. UML 2.0, the current standard, supports thirteen different diagram techniques, and has widespread tool support.
* 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 thean industry standard for specifying software-intensive systems. UML 2.0, the current standardversion, supports thirteen different diagram techniques, and has widespread tool support.
* [[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.
* [[IDEF]] is a family of modeling languages, the most notable of which include IDEF0, for functional modeling, and IDEF1 for information modeling.