# Llenguatge de modelació d'objectes

El llenguatge de modelatge d'objectes és un conjunt estàndard de símbols fet servir per modelar un programari en utilitzar un marc orientat a objectes. Els símbols poden ser informals o formals que van des de les plantilles gràfiques fins als models a objectes definit per la gramàtica i especificacions.
Un llenguatge de modelatge normalment s'associa amb una metodologia per al desenvolupament orientat a objectes. El llenguatge de modelatge defineix els elements del model, per exemple: model de classes, mètodes, propietats d'objectes, etc. La metodologia defineix els passos que els desenvolupadors i usuaris necessiten per desenvolupar i mantenir un programa. Passos com Definir requeriments, Desenvolupar codi, i Test.
És comú comparar el llenguatge de modelatge i la metodologia de modelatge.Per exemple el mètode Booch que fa referència a la norma de Gradi Booch’s per diagrames, metodologia o els dos. O la tècnica de modelatge d'objectes Rumbaugh la tècnica és tant un conjunt de diagrames i model de procés per al desenvolupar de sistemes orientats a objectes.
Al principi de la comunitat orientada a objectes que hi havia molta competència entre els diversos estàndards de modelatge i metodologia. Booch and Rumbaugh eren els dos més populars. Objectory d'Ivar Jacobson’s, Shlaer-Mellor, i Yourdon-Coad també van ser populars.
De totes maneres, la comunitat orientada a objectes valora la reutilització i l'estandardització. Tal com es mostra en el gràfic hi havia esforços a mitjans dels 90 per reconciliar els models principals i centrar-se en una especificació unificada. El gràfic mostra l'evolució d'un dels més importants estàndards del llenguatge de modelatge d'objectes: Unified Modeling Language (UML).
L'UML va començar com un intent d'alguns dels principals líders d'opinió en la comunitat per definir un llenguatge estàndard en la coonferència de OOPSLA-95. Originalment, Grady Booch i James Rumbaugh van fusionar els seus models en un model unificat. Aquest va ser seguit per l'empresa Rational Software de Booch comprant Jacobson's Objecory l'empresa de Ivar i fusionant el seu model en l'UML. En el seu moment Rational i Objectory van ser dos jugadors dominants en el petit món dels venedors independents d'eines i mètodes orientats a objectes.
L'Object Management Group es va fer carrer de la propietat d'UML. El OMG és una de les organitzacions d'estàndards més influents en el món orientat a objectes. L'UML és alhora meta-model formal i una col·lecció de plantilles gràfiques. El meta-model defineix els elements d'un model orientat a objectes com a classes i propietats. Això és essencialment el mateix que el meta-model en llenguatges orientats a objectes com Smalltalk o CLOS. No obstant això, en aquests casos el meta-model està destinat principalment a ser usat pels desenvolupadors en temps d'execució per inspeccionar i modificar de dinàmicament una aplicació de modelat d'objectes. L'UML meta-model proporciona una base matemàtica formal per als diferents punts de vista gràfics que fa servir el llenguatge de modelatge per descriure un sistema emergent.
El següent diagrama il·lustra la jerarquia de classes de les diferents plantilles gràfiques definides per l'UML. L'estructura de diagrames defineix l'estructura estàtica d'un objecte: el seu lloc en la jerarquia de classes, la seva relació amb altres objectes, etc.
Els diagrames de comportament especifiquen els aspectes dinàmics del model, la lògica de procés de negoci, la coordinació i la sincronització d'objectes distribuïts, etc.

## Referències

* ↑ Riley, Mike. «A Special Guide-MDA and UML Tools: CASE 2.0—or the Developer's Dream». drdobbs.com. Dr. Dobb's, 01-04-2006. [Consulta: 19 desembre 2013]. «If it weren't for the dominance that UML has gained over the industry, MDA and related modeling standards couldn't even exist.»
* ↑ «From Unified Method to Unified Language». http://modelseverywhere.wordpress.com, 13-11-2010. [Consulta: 19 desembre 2013].
* ↑ Fowler, Martin. UML Distilled. Addison Wesley, 2004, p. 1–33. ISBN 0-321-19368-7.
* ↑ «Object Management Group UML Specification». omg.org. Object Management Group. [Consulta: 19 desembre 2013].