Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Object-modeling language
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Component in software development}} An '''object-modeling language''' is a standardized set of symbols used to model a software system using an [[object-oriented]] framework. The symbols can be either informal or formal ranging from predefined graphical templates to formal object models defined by grammars and specifications. A modeling language is usually associated with a [[Software development methodology|methodology]] for object-oriented development. The modeling language defines the elements of the model. E.g., that a model has classes, methods, object properties, etc. The methodology defines the steps developers and users need to take to develop and maintain a software system. Steps such as ''Define requirements'', ''Develop code'', and ''Test system''. [[File:UML History.jpg|450px|thumbnail|right|Important milestones in the evolution of the UML: One of the most significant object modeling languages currently in use.<ref>{{cite web|last=Riley|first=Mike|title=A Special Guide-MDA and UML Tools: CASE 2.0βor the Developer's Dream|url=http://www.drdobbs.com/a-special-guide-mda-and-uml-tools-case-2/184415500|work=drdobbs.com|publisher=Dr. Dobb's|access-date=19 December 2013|date=April 1, 2006|quote=If it weren't for the dominance that UML has gained over the industry, MDA and related modeling standards couldn't even exist.}}</ref>]] It is common to equate the modeling language and the modeling methodology. For example, the [[Booch method]] may refer to [[Grady Booch]]'s standard for diagramming, his methodology, or both. Or the Rumbaugh [[Object Modeling Technique]] is both a set of diagrams and a process model for developing object-oriented systems. In the early years of the object-oriented community there were several competing modeling and methodology standards. Booch and Rumbaugh were two of the most popular. [[Ivar Jacobson]]'s Objectory, Shlaer-Mellor, and Yourdon-Coad were also popular. However, the object-oriented community values re-use and standardization. As shown in the graphic there were efforts starting in the mid 1990s to reconcile the leading models and focus on one unified specification. The graphic shows the evolution of one of the most important object modeling language standards: the [[Unified Modeling Language]] (UML). The UML began as an attempt by some of the major thought leaders in the community to define a standard language at the OOPSLA '95 Conference. Originally, Grady Booch and [[James Rumbaugh]] merged their models into a unified model. This was followed by Booch's company [[Rational Software]] purchasing Ivar Jacobson's Objectory company and merging their model into the UML. At the time Rational and Objectory were two of the dominant players in the small world of independent vendors of Object-Oriented tools and methods.<ref>{{cite web|title=From Unified Method to Unified Language|url=http://modelseverywhere.wordpress.com/2010/11/13/from-unified-method-to-unified-language/|work=modelseverywhere.wordpress.com|access-date=19 December 2013|date=November 13, 2010}}</ref> The [[Object Management Group]] then picked up and took over ownership of the UML. The OMG is one of the most influential standards organizations in the object-oriented world. The UML is both a formal metamodel and a collection of graphical templates. The meta-model defines the elements in an object-oriented model such as classes and properties. It is essentially the same thing as the meta-model in object-oriented languages such as Smalltalk or CLOS. However, in those cases the meta-model is meant primarily to be used by developers at run time to dynamically inspect and modify an application object model. The UML meta-model provides a mathematical formal foundation for the various graphic views used by the modeling language to describe an emerging system. The following diagram illustrates the class hierarchy of the various graphic templates defined by the UML. ''Structure diagrams'' define the static structure of an object: its place in the class hierarchy, its relation to other objects, etc. ''Behavior diagrams'' specify the dynamic aspects of the model, business process logic, coordination and timing of distributed objects, etc.<ref>{{cite book|last=Fowler|first=Martin|title=UML Distilled|year=2004|publisher=Addison Wesley|isbn=0-321-19368-7|pages=1β33}}</ref><ref>{{cite web|title=Object Management Group UML Specification|url=http://www.omg.org/spec/UML/|work=omg.org|publisher=Object Management Group|access-date=19 December 2013}}</ref> [[Image:Uml diagram.svg|center|thumb|720px|Types of UML diagrams]] == References == {{reflist}} [[Category:Object-oriented programming]]
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Templates used on this page:
Template:Cite book
(
edit
)
Template:Cite web
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Search
Search
Editing
Object-modeling language
Add topic