UML til kravspecificering



Relaterede dokumenter
ER-modellen. Databaser, efterår Troels Andreasen. Efterår 2002

Noter til dm529. Jonas Nyrup. 11. november 2011

UML-Light (Note: UML-Light T133, ver. 2004) Finn Overgaard Hansen, IHA

Metodehåndbog. Begrebsmodeller, Informationsmodeller og Begrebsdefinitioner. Udarbejdet i fællesskab mellem Udbetaling Danmark/KL/KOMBIT

Udvidelse og specialisering. Klassehierarkier. Nedarvningsterminologi. Interfaces. Statiske og dynamiske typer. Polymorfi. Abstrakte klasser.

FESD-standardiseringsgruppen Att: Palle Aagaard IT- og Telestyrelsen IT-strategisk kontor Holsteinsgade København Ø

Objektorientering. Programkvalitet

Databasesystemer, forår 2006 IT Universitetet i København. Forelæsning 3: E-R modellering. 16. februar Forelæser: Rasmus Pagh

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 3: E-R modellering. 17. februar Forelæser: Rasmus Pagh

Software Dokumentation

Struktureret system udvikling Minimodul 1: Introduktion, UML og use cases

ADK 1.0 KRAVSPECIFIKATION

Løsningsforslag til Camp Let. Case Beskrivelse: Camp Let

My booking. Generelt. Forsiden. Version 9.0

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16,

2 Abstrakte datatyper.

Introduktion til OO* og UML

SOFTWARE DOKUMENTATION

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5

Kommentar fra KMS til Specifikation af Serviceinterface for Person

Klasser og Objekter i Python. Uge 11

Struktureret system udvikling Minimodul 2: UML og use cases

Metodehåndbog. Processer. Udarbejdet i fællesskab mellem KL og KOMBIT

Databasesystemer. Databaser, efterår Troels Andreasen. Efterår 2002

Metodehåndbog. Forretningsbeslutninger og forretningsregler Beslutningsmodellen. Udarbejdet i fællesskab mellem KL/KOMBIT

3 Algebraisk Specifikation af Abstrakte Datatyper.

Vejledning til udarbejdelse af jobfunktionsroller og tilknytning til brugersystemroller

CCS Formål Produktblad December 2015

DKAL Snitflader REST Register

Database. Pr jekt. Hold CLmul-a14e Gruppe 3 3. semester Vejledere: Tue Becher Ivan R. Frederiksen

DM507 Algoritmer og datastrukturer

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 4: Mere om E-R modellering. 24. februar Forelæser: Rasmus Pagh

Hassansalem.dk/delpin User: admin Pass: admin BACKEND

Mobil timeregistrering

Kapitel 21: Softwarearkitektur designprincipper

Integration af online tilbud

SPU UML note. Systematisk Program- Udvikling med UML. Finn Overgaard Hansen

Flowchart og Nassi ShneidermanN Version. Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller.

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Accepttest-specifikation

Lilleby Kommunebibliotek

Videregående Programmering for Diplom-E Noter

Pronestor Catering. Modul 5. Opsætning af Pronestor Catering Side

4 Basal Objekt-orienteret Programmering I.

ADK 1.0 KRAVSPECIFIKATION

Lær Python - Dag 4, modul 2 Objektorienteret programmering

Kan anbefalinger af anbefalere anbefales?

Fællesoffentlig beskedmodel version 1.0

Underbilag 2M Begrebs- og informationsmodel for Ydelsesindeks Version 2.0

Brugervejledning. Aftalesystemet

Use cases IT Systemer Generelt Om IT Systemer og snitflader Generelt Oprette IT System... 5

Google Plus for Virksomheder Hvordan laver man en Google plus side?

Piwik. Multisite + kk.dk: Grundlæggende Drupal Version: 2.0. Beskrivelse. Indholdsfortegnelse

Automatisk Vandingssystem

FORSLAG TIL MASSEAFSENDELSE

SWC eksamens-spørgsmål. Oversigt

DM507 Algoritmer og datastrukturer

Rename og redefine. Abstrakte klasser. Dynamisk binding.

Mdoc - dit fremtidige ESDH system

Data lagring. 2. iteration (implement backend)

Automatisk Vandingssystem

Jacob Nordfalk. Ingeniørhøjskolen i København. Nykøbing F itvisioncenter 24. februar 2004

Aalborg University SYNOPSIS: TITEL: TOOL - et objektorienteret sprog for nybegyndere. EMNE: Værktøjer, sprog og oversættere

Bilag 2: Kravspecifikation - Side 1

Nogle grundlæggende begreber

Analyse, problemområde, anvendelsesområde

DK-Cartridge 1.0. Distributionsformat for digital læringsindhold VERSION: 1.0

SPU UML note. Systematisk Program- Udvikling med UML. Finn Overgaard Hansen

Den Digitale Landevej - Arkitekturprodukt

/05/2013 Tilføjet dokumentation af bvn input for GetEngagementDetailed

Indholdsfortegnelse. Systembeskrivelse kapitel 8 Administrationsdatabase

Arkitekturdokument for Cruise Control

Hvem er vi? Kursus Introduktion. Kursuslærerne. Agenda for i dag

Informations- og datamodellering

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004

Transkript:

UML til kravspecificering UML mini-kompendium - til brug i forbindelse med modellering af kravspecifikationer. Copyright 2006 Teknologisk Institut, IT-Udvikling

Aktivitetsdiagram 2/9 Aktion Aktionsnavn En aktion (delaktivitet), hvor der skal udføres et arbejde. Kontrolflow Knuder Kontrolflowet indikerer overgangen fra en aktion til en anden. Aktivitet start Aktivitet slut Flow slut A A Start og slut connector Bruges til at binde store diagrammer sammen. Beslutning Beslutningsknude. Hver af de udgående kontrolpile kan tilknyttes en betingelse. Kan vises med input, som en note til diamanten.

3/9 Note Bruges til kommentarer. Kan benyttes til alle UML diagramtyper. Synkronisering Objekt Objektnavn JOIN bruges til at vise at fx tre kontrolstrømme samles synkront til én. FORK Bruges til at vise at en kontrolstrøm deles op i fx tre parallelle processer. Bruges til at repræsentere information eller fysiske størrelser. Hændelse (trigger) Send signal Accept signal Tidsudløst trigger Signal beskrevet som objekt.

4/9 Struktureret aktivitet <<struktureret>> Aktivitetsnavn Bruges til at vise delaktiviteter evt. i et selvstændigt diagram. Aktivitet 1 Aktivitet 2 Svømmebaner Område 1 Område 2 Kaldes også aktivitetsopdelinger (partitions). Bruges typisk til opdeling af aktioner efter karakteristika som: rolle, lokation, organisation m.m. Kan underopdeles yderligere til flerdimensionale partitions.

Use case diagram 5/9 Use case Aktør Kommunikationspil Afgrænsning Aktørnavn Systemnavn En beskriver en måde, som den enkelte aktør ønsker at bruge systemet på Interagerer med systemet. Kan være: En person rolle, et andet system, eksternt hardware, en organisation, et firma, en afdeling Modeller at der sker en interaktion mellem en aktør og en. Viser ikke Datastrøm. Pilen kan udelades men bruges til at indikere hvem der initierer kommunikationen Kan bruges til at pakke s i grupper fx hele systemet, delsystemer, efter aktører, efter objekter m.m.

6/9 Inkluderet Use case <<Include>> Inkluderet Include s beskriver funktionalitet, som er fælles for to eller flere s. - - Bruges til at vise fælles funktionalitet (genbrug), eller til at vise en større delarbejdsopgave (nedbrydning). Udvidet (extend) Use case <<Extend>> Udvidet Extend relationen beskriver mulige udvidelser som ikke er en del af det normale forløb -Bruges til at vise funktionalitet der udvider den almindelige måde at udføre den overordnede på. Nedarvet (inherit) Use case Inherit relationen giver mulighed for generalisering/specialisering af s dvs. definere specielle slags af en selvstændig overordnet. Nedarvet

diagram 7/9 Simpel notation + nr: tal {>0} - navn: tekst - fødselsdag: dato - adresse: - telefon: - email: - gift: = nej Kunde Udvidet notation + beregnalder(veddato :dato) + skiftadresse(nyadresse : ) + læsnavn() : tekst + opdaterkontaktinfo(nytelefon :, nyemail : ) Eksempel Attribut 1 Attribut 2... Operation 1 Operation 2... En klasse er - en definition af et begreb - en beskrivelse af de egenskaber, der er fælles for alle objekterne af klassen En attribut er en beskrivende egenskab ved en klasse. For hver attribut kan specificeres: Datatype Synlighed (+, - og #) Startværdi (initial value) Værdimængde (value set) n har defineret operationer, der beskriver de funktioner, man kan udføre på objekter af klassen. For hver operation kan specificeres: synlighed retur datatype lovlige værdier parametre - i parentes adskilt af kommaer. og for hver parameter: type default værdi

8/9 Association En association mellem to (eller flere) klasser definerer, at klassernes objekter kan have links til hinanden. Almindelig association Aggregering En aggregering er en association mellem to klasser, hvor den ene klasse underlagt (fysisk eller logisk) den anden. Objekter af den ene klasse BESTÅR AF/ INDEHOLDER / HAR TILKNYTTET objekter af den anden klasse En komposition er en hård aggregering, hvor objekter af den ene klasse er fysisk underlagt et objekt af den anden klasse. kautionist * Person ansat * Komposition kaution bankkunde ejer > 1..* * * Bankkonto * En association kan specificeres med: Associationsnavn + evt. pil i læseretning Rollenavn rolle et objekt af den ene klasse har i associationen. Navigationspil Normal accesvej Mulitpliciteter - Hvor mange objekter af klasse kan knyttes til et objekt af en anden klasse. Multiplicitet 1 eller 1..1 eller blank Betydning Præcis en Bank 0..1 0..1 * eller 0..* 1..* Nul eller en Nul eller flere En eller flere 1 Eksempel 2..6 To til seks

9/9 Generalisering/ specialisering Superklasse En generaliserings/specialiseringsstruktur kaldes også nedarvninger, og bruges til at modellere semantiske klassificeringer Subklasse Superklassen definerer foreningsmængden af objekter - og de egenskaber der er generelle for alle objekter Konto Subklassen definerer en delmængde og de egenskaber der er specifikke for subklassens objekter Kundekonto Intern konto Egenskaber der nedarves fra en supertil en subklasse: attributter operationer associationer Eksempel