Stereotyp (UML)

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 15 juni 2019; kontroller kräver 3 redigeringar .

Stereotyper är en av tre typer av utvidgningsmekanismer i Unified Modeling Language ( UML ). De tillåter designers att utöka UML-vokabulären för att skapa nya modelleringselement som härrör från befintliga men har specifika egenskaper som är lämpliga för ett visst domänproblem eller annan specialiserad användning. Termen kommer från den ursprungliga betydelsen av ordet " stereo ", som används i typografi . Till exempel, när du modellerar ett nätverk kan du behöva symboler för att representera routrar och hubbar. Med stereotypa noder kan du representera dem som primitiva byggstenar.

Grafiskt framträder en stereotyp som ett namn omslutet av citattecken ("", eller, om sådana citattecken inte är tillåtna, <<>>) och placerat ovanför namnet på ett annat element. Dessutom eller alternativt kan det indikeras med en lämplig ikon. En ikon kan till och med ersätta en hel UML-symbol. Till exempel kan klassdiagramstereotyper användas för att beskriva beteendemetoder som "konstruktor" och "getter". Trots sin yttre representation är "gränssnitt" inte en stereotyp, utan en klassificerare . [ett]

Ett av alternativen till stereotyper som Peter Code föreslår i sin bok Applying Java to Color Modeling with UML: Organization and Production är användningen av färgarketyper. Arketyper, betecknade med UML-block i olika färger, kan användas i kombination med stereotyper. Denna ytterligare definition av syfte visar vilken roll UML-objektet spelar inom det större mjukvarusystemet.

Attribut för stereotyper

Från och med version 2.0 anses ett oberoende namngivet värde vara ett attribut för en stereotyp. Termen "namnvärde" behålls fortfarande. Varje stereotyp har noll eller fler etikettdefinitioner, och alla UML- stereotypelement har ett motsvarande antal namngivna värden.

Stereotyper definierade av UML

Stereotyp / nyckelord Vad gäller det Ändamål
skådespelare klass Definierar en associerad uppsättning roller som användaren av användningsfallet spelar när han interagerar med det
tillgång Beroende Rapporterar att målpaketets offentliga innehåll är tillgängligt i källpaketets namnområde
förening Länkslutpunkt (länkände) Indikerar att motsvarande objekt är synligt av föreningen
bli meddelande Målet är detsamma som källan, men vid en senare tidpunkt. Samtidigt kan det ha andra betydelser, tillstånd eller roller
binda Beroende Källklassen instansierar målmallen med de givna faktiska parametrarna
ringa upp Beroende Källoperationen anropar målet
kopiera meddelande Målet är en exakt men oberoende kopia av källan
skapa Händelse (händelse), meddelande (meddelande) Målet skapades som ett resultat av en händelse eller ett meddelande
härleda Beroende Källobjektet kan beräknas från målet
förstöra Händelse (händelse), meddelande (meddelande) Målet förstördes som ett resultat av en händelse eller ett meddelande
dokumentera komponent Komponenten representerar dokumentet
uppräkning klass Definierar en uppräknad typ, inklusive dess möjliga värden som en uppsättning identifierare
undantag klass Definierar en händelse som kan höjas eller fångas av en operation
körbar komponent Beskriver en komponent som kan exekveras i en nod
förlänga Beroende Målanvändningsfallet utökar källans beteende vid den givna förlängningspunkten
Fasad paket Ett paket som bara är en representation av ett annat paket
fil komponent En komponent som representerar ett dokument som innehåller källkod eller data
ramverk paket Ett paket som huvudsakligen består av prover (mönster)
vän Beroende Källklassen har särskilda synlighetsrättigheter i målet
global Länkslutpunkt (länkände) Motsvarande objekt är synligt eftersom det tillhör det omslutande omfånget
importera Beroende Målpaketets offentliga innehåll blir en del av källpaketets platta namnutrymme, som om det deklarerades direkt i det.
genomförande Generalisering Barnet ärver implementeringen av föräldern, men öppnar inte och stöder inte dess gränssnitt, vilket gör att det inte kan ersätta föräldern
implementeringsklass klass Klassimplementering i något programmeringsspråk
omfatta Beroende Det ursprungliga användningsfallet inkluderar uttryckligen beteendet hos ett annat användningsfall vid den punkt som definieras av originalet
instans av Beroende Källobjektet är en instans av målklassificeraren
instansiera Beroende Operationer på källklassen skapar instanser av målklassen
gränssnitt klass Beskriver en uppsättning operationer som definierar vad en klass eller komponent kan göra.
invariant Begränsning En begränsning som alltid måste gälla för det associerade elementet
bibliotek komponent Statiskt eller dynamiskt objektbibliotek
lokal Länkslutpunkt (länkände) Motsvarande objekt är synligt eftersom det är i det lokala omfånget
metaklass klassificerare En klassificerare vars objekt alla är klasser
modell paket Beskriver en semantiskt sluten systemabstraktion
parameter Länkslutpunkt (länkände) Motsvarande objekt är synligt eftersom det är en parameter
efterskick Begränsning Begränsningen som måste uppfyllas efter att operationen har utförts
effekttyp klass En klassificerare vars objekt alla är barn till den givna föräldern
förutsättning Begränsning En begränsning som måste uppfyllas innan operationen utförs
bearbeta klass En klassificerare vars instans representerar ett resurskrävande kontrollflöde
förfina Beroende Säger att källobjektet är en finare abstraktion än målet
krav Kommentar Beskriver en önskad egenskap eller beteende hos ett system
ansvar Kommentar Beskriver klassens kontrakt eller skyldighet
skicka Beroende Källoperationen skickar målhändelsen
signal klass En asynkron stimulans som överförs från en instans till en annan
stereotyp klass En klassificerare är en stereotyp som kan appliceras på andra element
stump paket Ett paket fungerar som en platshållare för det offentliga innehållet i ett annat paket
delsystem paket Beskriver en gruppering av element, varav ett antal utgör en specifikation av andra elements beteende
systemet paket Beskriver ett paket som representerar hela systemet som modelleras
tabell komponent En komponent som representerar en databastabell
tråd klass En klassificerare vars instans representerar lättviktskontrollflöde
spår Beroende Målelementet är källans historiska förfader
typ klass En abstrakt klass som endast används för att specificera strukturen och beteendet (inte implementeringen) av en uppsättning objekt
använda sig av Beroende Källelementets semantik beror på semantiken för målelementets publika innehåll
verktyg klass Definierar en klass för vilken omfattningen av alla attribut och operationer är klassen

Anteckningar

  1. Object Management Group , UML Superstructure Specification Arkiverad 24 juni 2015 på Wayback Machine , v2.0, sid. 33 augusti 2005.

Litteratur

Länkar