Avatar billede windcape Praktikant
22. april 2008 - 16:16 Der er 10 kommentarer og
1 løsning

Hjælp til UML

Hej

I forbindelse med et skoleprojekt, har jeg designet følgende system.
Klasseopstillingen er god nok, men jeg er usikker på om jeg har sat pilene (aggression,composition) og numrene (multipli) rigtigt

Diagrammet: http://web27190.web08.talkactive.net/media/booking2.png

Mange tak for hjælpen :)
Avatar billede arne_v Ekspert
23. april 2008 - 04:06 #1
Jeg tror at der er en del som skal justeres.

Hotel-HotelRoom må være 1---1..*

man kan ikke have et hotel room uden et hotel

og et hotel med nul hotel rooms giver ikke meget mening

composition er derimod helt rigtig - sprænger man hotellet i luften forsvinder hotel rooms også

du angiver ikke Rooms som eksplicit member da den er givet ved compositionen
Avatar billede arne_v Ekspert
23. april 2008 - 04:11 #2
HotelBooking-HotelRoom må være 0..*---1

da en booking kun er af et room men samme rum kan være i mange bookinger

og jeg ville ikke lave den som composition enten aggregering eller en simpel
association (uden rombe)

jeg ville også her fjerne room og hotel som eksplicitte fields fra HotelBooking

og jeg vil også helt fjerne associeringen med Hotel da den er implict gennem HotelRoom
Avatar billede arne_v Ekspert
23. april 2008 - 04:12 #3
HotelExtra ville jeg nok sløjfe og flytte op i Hotel.

Og hvad pokker er den price ? prisen på hele hotellet ??
Avatar billede arne_v Ekspert
23. april 2008 - 04:13 #4
RoomType skal forbindes til HotelRoom og ikke til Hotel.
Avatar billede arne_v Ekspert
23. april 2008 - 04:13 #5
Resten af linierne må du selv slås lidt med.
Avatar billede arne_v Ekspert
23. april 2008 - 04:15 #6
Andre kommentarer:
- Single og DOuble er meget uheldige enumeration navne
- HotelRoom må have et værelsesnummer
- price skal være decimal ikke double
- det staves participant ikke partisipant
Avatar billede arne_v Ekspert
23. april 2008 - 04:18 #7
Jeg vil nok foreslå dig at bruge et UML tool der kan generere C# kode !

Hvis du er i tvivl om modellen giver mening, så generer kode og kig på den - så tror
jeg nemt at du kan se om det er iorden eller ej.

Jeg ved ikke hvilket tool du bruger.

Men ArgoUML er gratis og kan generere C# (og PHP5 hvis du skulle foretrække det).
Avatar billede arne_v Ekspert
23. april 2008 - 04:20 #8
Jeg lagde lige mærke til kategorien.

ArgoUML generere også Java.

Og decimal i Java hedder BigDecimal.
Avatar billede windcape Praktikant
23. april 2008 - 15:31 #9
Superb :D Mange tak.

Tror jeg har styr på det nu. Og rigtig god pointe med mine enum navne, det er lavet om nu.

Java,PHP eller C# kommer ud på et, er rimelig til alle 3 sprog, så vil definitivt prøve ArgoUML.

Vi benytter normalt Visual Paradigm (og skolens licens tillader ikke kode generation :-( )
Avatar billede arne_v Ekspert
23. april 2008 - 16:10 #10
ArgoUML er et simplere program end VP.

Men helt ukommercielt.

Og jeg foretraekker simple UML programmer.
Avatar billede arne_v Ekspert
05. maj 2008 - 06:00 #11
og et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester