UML-diagram fuskblad och referensguide

โšก Smart sammanfattning

UML Diagram Cheat Sheet sammanstรคller kรคrnnotationerna fรถr Unified Modeling Language i en referens: strukturella och beteendemรคssiga faktorer, relationstyper och huvuddiagrammen โ€“ klass, anvรคndningsfall, tillstรฅndsmaskin, aktivitet, sekvens, komponent och distribution.

  • ๐Ÿงฑ Saker i UML: Strukturell, beteendemรคssig, gruppping, och annoterande saker รคr byggstenarna i varje modell.
  • ๐Ÿ”— relationer: Association, beroende, generalisering, realisering, komposition och aggregering kopplar samman modellelement.
  • ๐ŸŽญ Beteendediagram: Anvรคndningsfall, tillstรฅndsmaskin, aktivitet, sekvens, samarbete och tidsdiagram fรฅngar dynamiskt beteende.
  • ๐Ÿ—๏ธ Strukturdiagram: Klass-, komponent- och distributionsdiagram beskriver den statiska och fysiska strukturen hos ett system.
  • ๐ŸŽฏ Snabbreferens: Varje notation visas med sin symbol och en enradig definition fรถr snabb sรถkning.

UML-diagram fuskblad och referensguide

Saker i UML

En sak kan beskrivas som vilken verklig enhet eller ett objekt som helst. Saker delas in i olika kategorier i UML enligt fรถljande:

  • Strukturella saker
  • Beteendemรคssiga saker
  • Grouping saker
  • Anteckningssaker

Strukturella saker

Strukturella saker handlar om den fysiska delen av ett system. Det รคr substantivet fรถr en UML-modell, sรฅsom en klass, objekt, grรคnssnitt, samarbete, use case, komponent och en nod.

Strukturella saker i UML

Klass :- En klass anvรคnds fรถr att representera olika objekt. Den anvรคnds fรถr att definiera egenskaper och operationer fรถr ett objekt.

Strukturella saker i UML

Objekt:- Ett objekt รคr en enhet som anvรคnds fรถr att beskriva ett systems beteende och funktioner. Klassen och objektet har samma notationer.

Strukturella saker i UML

Exempel pรฅ objektdiagram:- Nedan UML objektdiagram innehรฅller tvรฅ objekt med namnet Ferrari och BMW som tillhรถr en klass med namnet Bil. Objekten รคr inget annat รคn verkliga enheter som รคr instanser av en klass.

Strukturella saker i UML

Grรคnssnitt:- Ett grรคnssnitt liknar en mall utan implementeringsdetaljer. En cirkelnotation representerar det. Nรคr en klass implementerar ett grรคnssnitt implementeras รคven dess funktionalitet.

Beteendemรคssiga saker

De รคr verben i en UML-modell, sรฅsom interaktioner, aktiviteter och tillstรฅndsmaskiner. Beteendemรคssiga saker anvรคnds fรถr att representera ett systems beteende.

Beteende saker i UML

Interaktionsdiagram:- Interaktionsdiagram anvรคnds fรถr att visualisera meddelandeflรถdet mellan olika komponenter i ett system.

Grouping saker

Grouping saker i UML

Det รคr paketet som anvรคnds fรถr att gruppera semantiskt relaterade modelleringselement till en enda sammanhรคngande enhet.

Anteckningssaker

Anteckningssaker i UML

Det รคr som en lapp, som kan skrivas till modellen fรถr att fรฅnga in viktig information. Det liknar den gula klisterlappen.

Relationer typ i UML

Relationer Skriv in UML

Relationen lรฅter dig visa pรฅ en modell hur tvรฅ eller flera saker relaterar till varandra.

Relationer Skriv in UML

Fรถreningsrelation:- Det รคr en uppsรคttning lรคnkar som fรถrbinder element i UML-modellen. Den betecknas som en prickad linje med pilspetsar pรฅ bรฅda sidor. Bรฅda sidor innehรฅller ett element som beskriver relationen.

Relationer Skriv in UML

Reflexiv association :- Reflexiv association anger att en lรคnk eller en koppling kan finnas inom objekten i samma klass.

Relationer Skriv in UML

Riktad fรถrening:- I en riktad association รคr flรถdet riktat. Associationen frรฅn en klass till en annan klass flyter endast i en enda riktning.

Relationer Skriv in UML

Relationer Skriv in UML

Beroendefรถrhรฅllande:- Det รคr en av de viktigaste beteckningarna fรถr UML. Den definierar riktningen fรถr ett beroende frรฅn ett objekt till ett annat.

Relationer Skriv in UML

Relationer Skriv in UML

Generaliseringsfรถrhรฅllande:- Det kallas ocksรฅ fรถrรคlder-barn-relation. Denna typ av relation anvรคnds fรถr att representera arvskonceptet.

Relationer Skriv in UML

Realiseringsfรถrhรฅllande:- Realiseringsfรถrhรฅllande anvรคnds i stor utstrรคckning samtidigt som det betecknar grรคnssnitt.

Relationer Skriv in UML

Realisering kan representeras pรฅ tvรฅ sรคtt:

  • Anvรคnder en kanonisk form
  • Med hjรคlp av en elided form

Relationer Skriv in UML

Komposition:- Sammansatt aggregering beskrivs som en binรคr association dekorerad med en fylld svart diamant i den aggregerade (hela) รคnden. Det รคr inte en standard UML-relation, men den anvรคnds fortfarande i olika applikationer.

Relationer Skriv in UML

Aggregation:- I en aggregeringsrelation fรถrblir det beroende objektet inom relationens omfattning รคven nรคr kรคllobjektet fรถrstรถrs. En aggregering รคr en undertyp av en association. relation i UML.

Abstract-klasser

Abstract-klasser i UML

Det รคr en klass med en operationsprototyp, men inte implementationen. I UML รคr den enda skillnaden mellan en klass och en abstract-klassen รคr att klassnamnet skrivs strikt i kursiv stil.

Lรฅt oss se ett komplett exempel pรฅ ett UML-klassdiagram: -

Ett bankomatsystem รคr mycket enkelt, eftersom kunderna mรฅste trycka pรฅ vissa knappar fรถr att ta emot kontanter. Det finns dock flera sรคkerhetslager som alla bankomatsystem mรฅste passera. Detta hjรคlper till att fรถrhindra bedrรคgerier och tillhandahรฅlla kontanter eller kontouppgifter till bankkunder.

UML klassdiagram

UML Use Case Diagram

Ett anvรคndningsfallsdiagram fรฅngar systemets funktionalitet och krav med hjรคlp av aktรถrer och anvรคndningsfall. Anvรคndningsfall modellerar de tjรคnster, uppgifter och funktioner som ett system behรถver utfรถra.

Anvรคnd falldiagram i UML

Anvรคndningsfall :- Anvรคndningsfall รคr ett av kรคrnkoncepten fรถr objektorienterad modellering. De anvรคnds fรถr att representera funktioner pรฅ hรถg nivรฅ och hur anvรคndaren kommer att hantera systemet.

Anvรคnd falldiagram i UML

Skรฅdespelare:- Skรฅdespelaren รคr en enhet som interagerar med systemet. En anvรคndare รคr det bรคsta exemplet pรฅ en skรฅdespelare.

Exempel pรฅ anvรคndningsfallsdiagram

I anvรคndningsfallsdiagrammet nedan finns det tvรฅ aktรถrer som heter elev och lรคrare. Det finns totalt fem anvรคndningsfall som representerar den specifika funktionaliteten hos ett elevhanteringssystem. Varje aktรถr interagerar med ett specifikt anvรคndningsfall.

Anvรคnd falldiagram i UML

UML State Machine Diagram

State Machine Diagram i UML

Tillstรฅndsmaskin: - Det anvรคnds fรถr att beskriva olika tillstรฅnd hos en enskild komponent under hela programvaruutvecklingens livscykel.

Det finns fyra typer av tillstรฅnd i en tillstรฅndsmaskin:

  1. Ursprungligt tillstรฅnd: - Initialtillstรฅndssymbolen anvรคnds fรถr att indikera bรถrjan av ett tillstรฅndsmaskindiagram.
  2. Slutgiltigt tillstรฅnd: - Denna symbol anvรคnds fรถr att indikera slutet av ett tillstรฅndsmaskindiagram.
  3. Beslutsruta: - Den innehรฅller ett villkor. Beroende pรฅ resultatet av ett utvรคrderat skyddstillstรฅnd, tas en ny vรคg fรถr programexekvering.
  4. ร–vergรฅng: - En รถvergรฅng รคr en fรถrรคndring frรฅn ett tillstรฅnd till ett annat som sker pรฅ grund av nรฅgon hรคndelse.

State Machine Diagram i UML

Exempel pรฅ tillstรฅndsmaskindiagram: - Det finns totalt tvรฅ tillstรฅnd, och det fรถrsta tillstรฅndet indikerar att engรฅngskoden mรฅste anges fรถrst. Dรคrefter markeras engรฅngskoden i beslutsrutan; om den รคr korrekt kommer endast tillstรฅndsรถvergรฅngen att ske, och anvรคndaren kommer att valideras. Om engรฅngskoden รคr felaktig kommer รถvergรฅngen inte att ske, och den kommer att รฅtergรฅ till starttillstรฅndet tills anvรคndaren anger rรคtt engรฅngskod.

UML-aktivitetsdiagram

Aktivitetsdiagram i UML

Aktivitetsdiagram:- Ett aktivitetsdiagram anvรคnds fรถr att representera olika aktiviteter som utfรถrs av olika komponenter i ett system.

  • Initiala tillstรฅnd: Startskedet innan en aktivitet รคger rum beskrivs som utgรฅngslรคget.
  • Slutliga tillstรฅnd: Det tillstรฅnd som systemet nรฅr nรคr en specifik process avslutas kallas ett slutgiltigt tillstรฅnd.
  • Beslutsruta: Det รคr en diamantformad ruta som representerar ett beslut med alternativa vรคgar. Den representerar kontrollflรถdet.

Aktivitetsdiagram i UML

Exempel pรฅ aktivitetsdiagram: - Fรถljande diagram representerar aktiviteten fรถr att bearbeta e-postmeddelanden.

Sekvensdiagram

Syftet med ett sekvensdiagram i UML รคr att visualisera sekvensen av ett meddelandeflรถde i systemet. Ett sekvensdiagram anvรคnds fรถr att fรฅnga beteendet i ett scenario.

Sekvensdiagram i UML

Samarbetsdiagram

Samarbetsdiagram i UML

Samarbete :- Den representeras av en prickad ellips med ett namn skrivet inuti.

Exempel pรฅ samarbetsdiagram:-

Samarbetsdiagram i UML

Tidsdiagram

Ett tidsdiagram anger hur objektet รคndrar tillstรฅnd genom att anvรคnda en vรฅgform eller en graf. Det anvรคnds fรถr att beteckna omvandlingen av ett objekt frรฅn en form till en annan form.

Exempel pรฅ tidsdiagram:-

Tidsdiagram i UML

UML-komponentdiagram

Komponentdiagram i UML

Komponent :- En komponentnotation anvรคnds fรถr att representera en del av systemet.

Komponentdiagram i UML

Nod:- En nod kan anvรคndas fรถr att representera ett nรคtverk, server, routrar, etc. Dess notation ges nedan.

Komponentdiagram i UML

Struktur av en komponent:- En komponent representeras med en klassificeringsrektangel stereotypiserad som << komponent >>.

Komponentdiagram i UML

Hamn:- En port รคr en interaktionspunkt mellan en klassificerare och en extern miljรถ. Den grupperar en semantiskt sammanhรคngande uppsรคttning av tillhandahรฅllna och obligatoriska grรคnssnitt.

Exempel pรฅ komponentdiagram:-

Komponentdiagram i UML

Implementeringsdiagram

Distributionsdiagram: - Ett distributionsdiagram representerar den fysiska vyn av ett system.

Ett distributionsdiagram bestรฅr av fรถljande notationer:

  1. En nod
  2. En komponent
  3. En artefakt
  4. Ett grรคnssnitt

Implementeringsdiagram i UML

Exempel pรฅ ett distributionsdiagram:- Fรถljande distributionsdiagram visar hur en HTML5-videospelare fungerar i webblรคsaren.

Implementeringsdiagram i UML

Vanliga frรฅgor

Ja. AI-assistenter kan omvandla en vanlig textbeskrivning av klasser, aktรถrer eller arbetsflรถden till UML-diagramkod (t.ex. PlantUML eller Mermaid) som รฅterges som ett diagram. RevVisa utdata, eftersom AI kan missa relationer eller multiplicitet.

Ja. AI-assisterade reverse engineering-verktyg kan lรคsa klasser och metoder frรฅn kod och generera klass- eller sekvensdiagram. Detta snabbar upp dokumentationen, men utvecklare bรถr verifiera att de genererade diagrammen รฅterspeglar den avsedda arkitekturen.

UML-diagram delas in i tvรฅ kategorier: strukturdiagram (klass, objekt, komponent, distribution) som visar statisk struktur och beteendediagram (anvรคndningsfall, aktivitet, tillstรฅndsmaskin, sekvens) som visar hur systemet beter sig รถver tid.

Den senaste versionen รคr UML 2.5.1, publicerad av Object Management Group (OMG) รฅr 2017. Den fรถrfinade UML 2.x-specifikationen, och de flesta moderna diagramverktyg stรถder dess notation.

Sammanfatta detta inlรคgg med: