UML 1.0 vs UML 2.0
UML 2.0 har været en opdatering, der virkelig har skubbet grænserne fra forgængeren, UML 1.0. Denne artikel ser grundigt på de specifikke forskelle mellem de to og hvilke nye opdateringer og funktioner der kommer i UML2.0. Man kan generelt sige, at der ikke er sket meget ændring af den overordnede grænseflade for UML 2.0, da det ser ud til at hænge meget sammen med sin forgænger UML 1.0. De vigtigste ændringer, der kan siges at være indført, er adfærdsændringer.
Den mest markante af ændringerne kommer i aktivitetsdiagrammet, og dette er som nævnt tidligere omfattet af adfærdsændringer, der er foretaget. Nogle regler, der bruges i udførelsen af UML 1.0, er også ændret, og der er behov for at kende de regler, der bruges i UML 2.0. Bygningen af UML 1.0 fokuserede på en streng opbygning og fortolkning af udførelsen. Reglerne anvendt i UML 1.0 kan derfor ikke sammenlignes med UML 2.0. En bruger, der er vant til UML 1.0, bør derfor være på vagt over for ændringen, der er indført i UML 2.0, især når man beskæftiger sig med modeller, der involverer samtidighed.
I UML 2.0 kan flow semantik ikke ignoreres. Udførelsen af en knude har en direkte effekt på en anden, anden knude. For at få en knude til at begynde at udføre, skal visse betingelser være opfyldt. Når de krævede betingelser er opfyldt, fungerer noden og tilbyder outputstrømme, et tidspunkt, hvor nedstrømmen begynder at udføre. I UML 1.0 er de tilgængelige noder pseudotilstander, som kommer med overgange imellem sig, som er specielt designet til modellering af strømme.
UML 2.0 leveres også med samtidighed modellering, som tillader parallelitet ubegrænset. I UML 1.0 er parallelitet ikke tilladt, og det bruger en metodisk trin for trin-model til udførelse af operationer. UML 2.0 hjælper således med at bringe en tidseffektiv og hurtig metode til at arbejde på tingene.
Handlings- og kontrolknudepunkter er forskellige, når UML 1.0 og UML 2.0 sammenlignes. De to ser ud til at have lignende rammer, når de sammenlignes med pålydende værdi, men semantikken, der kontrollerer dem, er helt forskellige. Modeludførelsen i både UML 1.0 og UML 2.0 har ikke meget forskel, især når kontrolknudepunkterne og det første og det endelige udseende sammenlignes.
En ny optagelse i UML 2.0 er objektknudepunkter. Dette er knudepunkter, der specifikt er tilvejebragt for at indikere et tilfælde, hvor en bestemt klassifikator muligvis er tilgængelig. Denne handling får objeknoder i UML 2.0 til at fungere som containere, som objekter af en given type muligvis flyder til og fra. Objektknudepunkterne er en inkludering, der ikke blev taget højde for, da UML 1.0 blev bygget.
En komponent i UML 2.0 er specielt noteret med et klassesymbol, der ikke har to rektangler, som definerer det. Komponent per definition i UML 2.0 er en struktureret klasse, der leveres med et samarbejde mellem elementer i dens interne struktur. Stik i UML 2.0 forbinder forskellige dele. UML 1.0 bruger modelelementundersystem, som er en model, der leveres med en grænseflade.
Sekvensdiagrammet i UML 2.0 adskiller sig også lidt fra det i UML 1.0. En unik ting ved sekvensdiagrammet i UML 2.0 er, at det viser, hvordan objekter både oprettes og ødelægges. Denne funktion er ikke tilgængelig i UML 1.0. I UML 1.0 var sløjferne, der repræsenterer visse betingelser, inden for en given loop-tilstand, som blev oprettet inden for en note. Denne note blev derefter vedhæftet i afventende meddelelser, der skulle udføres. I UML 2.0 findes en specifik loop-repræsentation. Endelig tilbyder UML 2.0 fantastiske nye muligheder såsom sløjfer, grene og betingelser.