Avatar billede fastpoint Nybegynder
12. april 2005 - 09:59 Der er 12 kommentarer og
2 løsninger

Hvad skal med i en domænemodel?

Vi er lidt forvirrede over hvad der skal tages med i en domænemodel så hvis der lige er en som kan give en opremsning så ville det være godt.

Tak
Avatar billede arne_v Ekspert
12. april 2005 - 10:02 #1
Er det principperne/ideen i en domain model eller det mere praktiske output
(UML og/eller Java) I er usikre på ?
Avatar billede fastpoint Nybegynder
12. april 2005 - 10:07 #2
Vi har lavet use-cases og på baggrund af disse skal vi udforme vores domæne model. Vi er bare i tvivl om hvilke elementer man skal medtage.
Er det kun klasser som vi har tænkt os at programmere eller er også også objekter/elementer fra det virkelige liv?

tænker på f.eks en faktura. Det sker i forbindelse med et salg, men vi programmere ikke en faktura idet det er en skabelon.
Avatar billede fastpoint Nybegynder
12. april 2005 - 10:12 #3
Eksempler på domæne modeller på nettet som supplement ville også være godt.
Avatar billede snoop_one Nybegynder
12. april 2005 - 10:27 #4
Det kommer an på hvilke metodology i anvender?

F.eks. finders der applikationsdomæne og problemdomæne hvor problemdomænet er de objekter fra den virkelige verden som i ønsker at modellere i jeres applikationsdomæne - ved at oprette de tilsvarende klasser.
Avatar billede arne_v Ekspert
12. april 2005 - 10:32 #5
jeg forstår ikke helt jeres problem stilling

"klasser som vi har tænkt os at programmere" versus "elementer fra det virkelige liv"

hele pointen skulle da gerne være at de skal matche !?
Avatar billede fastpoint Nybegynder
12. april 2005 - 10:39 #6
okay så forstå vi det måske hvis i bare kort og kontant forklare hvad er en domænemodel og hvad skal indgå i sådan en
Avatar billede snoop_one Nybegynder
12. april 2005 - 12:18 #7
Det skal være alle de elementer i gerne vil modellere (fra den virkelige verden) - som arne_v ganske har ret i så skal disse være konsistente med hinanden.

Med hensyn til eksemplet med salg og faktura, hvorfor så ikke implementere en faktura klasse hvis i f.eks. i jeres use-cases har, at en bruger skal kunne printe en faktura ud? så kunne man vel passende ved hvert salg have tilknyttet en faktura?

Men i bund og grund så afhænger det af jeres analytiske evner om en given objekt skal modeleres i systemet eller ej? Dette gør i netop, som i selv siger det, ved at analysere jeres use-case diagrammer og finde ud af hvilke elementer skal med i modellen og hvilke der skal forkastes...

F.eks. vil en applikation til en bilsælger nok indeholde en bil klasse der modellere de biler han har stående (pris, model, antal kørte km etc.).
Men ude på værkstedets applikation vil den samme bil nok være modelleret anderledes idet den f.eks. vil bestå af dæk størrelse, motor, ruder etc.

Håber, at i kan følge tankegangen....
Avatar billede arne_v Ekspert
12. april 2005 - 21:34 #8
Typisk procedure er:
1)  opret klasser for de entiteter som optræder i use cases
2)  opret associationer mellem klasserne
3)  opret attributter for klasserne
4)  opret generaliseringer af klasser

Bemærk at:
  - rigtigt mange teoretikere anbefaler brug af domain models
  - rigtigt mange udviklere hævder at bruge domain models
  - meget få udviklere bruger domain models efter teoretikernes definition
Avatar billede fastpoint Nybegynder
22. april 2005 - 11:04 #9
lig et svar begge to. Vi deler.
Fik hjælp af nogle medstuderende.
Avatar billede arne_v Ekspert
22. april 2005 - 11:07 #10
ok
Avatar billede arne_v Ekspert
26. april 2005 - 00:04 #11
så skal du lige acceptere ...
Avatar billede fastpoint Nybegynder
26. april 2005 - 00:07 #12
ventede på snoop_one :)
Avatar billede arne_v Ekspert
26. april 2005 - 00:10 #13
sorry det havde jeg ikke lige set

snoop - skriv hvis jeg skal overføre halvdelen af "byttet" til dig
Avatar billede snoop_one Nybegynder
26. april 2005 - 10:31 #14
Ellers tak - jeg springer over denne gang ;-)
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
Kategori
Kurser inden for grundlæggende programmering

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