Llenguatge unificat de modelat

De Viquipèdia
Dreceres ràpides: navegació, cerca
Vegeu també: Unió Monetària Llatina
Collage de diagrames UML.

L'UML o Llenguatge Unificat de Modelat (Unified Modeling Language, Llenguatge de Modelat Unificat) és un llenguatge de modelat de sistemes de software, és el més conegut i utilitzat en l'actualitat, està suportat per l'OMG (Object Management Grup). És un llenguatge gràfic per visualitzar, especificar, construir i documentar un sistema. L'UML ofereix un estàndard per descriure un sistema (model), incloent aspectes conceptuals tals com els processos de negoci i funcions del sistema, i aspectes concrets com expressions de llenguatges de programació, esquemes de bases de dades i components reutilitzables.

L'UML va ser creat i desenvolupat per Grady Booch, Ivar Jacobson i James Rumbaugh mentres treballaven per l'empresa Rational Software[1] durant els anys 1994-1996.

Aquest llenguatge disposa de diversos tipus de diagrames, els quals mostren diferents aspectes de les entitats representades.

Història[modifica | modifica el codi]

Història dels mètodes i notació d'orientació a objectes

L'UML ha anat evolucionant des de la segona meitat de la dècada del 1990 i té les seves arrels en els mètodes orientats a objectes desenvolupats a finals de 1980 i principis de 1990. La línia de temps (vegeu la imatge) mostra els aspectes més destacats de la història del modelatge orientat a objectes.

Abans del UML 1.x[modifica | modifica el codi]

Després que Rational Software[1] contractés a James Rumbaugh la companyia es va convertir amb la font dels dos esquemes de modelat orientat a objectes més populars de l'època: L' Object-modeling technique (OMT) creat per Rumbaugh, que era millor per l'anàlisi orientat a objectes i el Mètode Booch creat per Grady Booch, que era millor per el disseny orientat a objectes. Poc després es va unir a l'empresa Ivar Jacobson, el creador del mètode d'enginyeria del software orientat a objectes. Els tres creadors van ser coneguts amb el nom dels Tres Amics degut a les seves constants discussions sobre les pràctiques metodològiques.

L'any 1996 l'empresa Rational Software va concloure que l'abundància de llenguatges de modelat ralentitzava la seva evolució i alterava el seu ús. Degut a això, l'empresa va decidir orientar-se cap a un mètode unificat i va encarregar als Tres Amics que desenvolupessin un llenguatge unificat de modelat obert (aparició UML).

UML 1.x[modifica | modifica el codi]

Com evolució de l'UML 0.x es va treure l'anotació de "núvols" de Booch i es va adoptar la capacitat de Booch per especificar detalls de disseny en els nivells inferiors. La notació de Casos d'ús i la notació de components de Booch van ser integrats a la resta de la notació, però la integració semàntica era relativament dèbil amb l'UML 1.1 i no es va arreglar realment fins l'apàrició de l'UML 2.0.

Conceptes de molts altres mètodes OO van ser integrats superficialment en UML amb el propòsit de fer-lo compatible amb tots els mètodes OO. A més el grup va tenir en compte molts altre mètodes de l'època, amb l'objectiu d'assegurar una amplia cobertura en el domini dels sistemes de temps real. Com a resultat, UML és útil en una gran varietat de problemes d'enginyeria, des de processos senzills i aplicacions d'un sol usuari a sistemes concurrents i distribuïts.

UML 2.x[modifica | modifica el codi]

L'UML ha madurat considerablement des de UML 1.1. Diferents revisions menors (UML 1.3, 1.4 i 1.5) han corretgit els defectes i errors de la primera versió de UML. A aquestes revisions han estat precedides per la revisió major de l'UML 2.0 que va ser adoptada per la OMG el 2005.

Hi ha hagut varies versions des de l'UML 2.0 fins a arribar a l'UML 2.5 llançat l'octubre de 2012.

Modelatge[modifica | modifica el codi]

Exemple d'una classe amb propietats i mètodes

És important distingir entre el model UML i el conjunt de diagrames d'un sistema. Un diagrama és una representació gràfica parcial del model d'un sistema. El model també conté la documentació que controlen els elements del model i els diagrames (per exemple, casos d'ús escrits).

Els diagrames UML representen dues visions diferents d'un model de sistema:

  • Estàtica (o estructural): defineix l'estructura estàtica del sistema utilitzant objectes, atributs, operacions i relacions. El punt de vista estructural inclou diagrames de classes i diagrames d'estructura composta.
  • Dinàmica (o de comportament): defineix el comportament dinàmic del sistema, mostrant la col·laboració entre els objectes i els canvis en els estats interns dels objectes. Aquesta visió inclou diagrames de seqüència, diagrames d'activitat i diagrames d'estat.

Diagrames[modifica | modifica el codi]

Exemple de diagrama UML, que representa la interacció entre dues classes.

A l'UML 2.0 hi ha 13 tipus diferents de diagrames. Per comprendre'ls de manera concreta, de vegades és útil categoritzar-los jeràrquicament, com es mostra a la figura de la dreta.

Els Diagrames d'Estructura emfatitzen en els elements que hi ha d'haver en el sistema modelat:

Els Diagrames de Comportament emfatitzen en el que ha de succeir en el sistema modelat:

Els Diagrames d'Interacció són un subtipus de diagrames de comportament, que emfatitza sobre el fluix|flux de control i de dades entre els elements del sistema modelat:

Crítiques a l'UML[modifica | modifica el codi]

Malgrat la seva estatus d'estàndard àmpliament reconegut i utilitzat, l'UML sempre ha estat molt criticat per la seva manca d'una semàntica precisa, el que ha donat lloc a que la interpretació d'un model UML no pugui ser objectiva. Un altre problema de l'UML és que no es presta amb facilitat al disseny de sistemes distribuïts. En aquests sistemes cobren importància factors com la transmissió, serialització, persistència, etc. l'UML no compta amb maneres de descriure aquests factors. No es pot, per exemple, fer servir l'UML per assenyalar que un objecte és persistent o remot, o que existeix en un servidor que corre contínuament i que és compartit entre diverses instàncies d'execució del sistema analitzat. No obstant això, l'UML si accepta la creació dels nostres propis components per a aquest tipus de modelatge.

Vegeu també[modifica | modifica el codi]

A Wikimedia Commons hi ha contingut multimèdia relatiu a: Llenguatge unificat de modelat Modifica l'enllaç a Wikidata
  1. 1,0 1,1 «IBM Rational Software» (en anglès). [Consulta: 20/10/2014].