Videregående systemudvikling DM023

Opgaver

Opdateret 6. november 2003

En beskrivelse af CASE virksomheden Multiprofit A/S og et system til vedligeholdelse af kontrakter.

Layering

Udarbejd et begrundet forslag til en lagdelt arkitektur for kontraktsystemet i Multiprofit.

Overvej hvilke snitflader, der er i systemet. Lav en grov oversigt over, hvilke klasser I vil placere i de forskellige lag.

Udarbejd diagrammer og plancher til brug for en eventuel præsentation for klassen.

Organizing Domain Logic

Udarbejd et forslag til en model (klassediagram) for kontraktsystemet i Multiprofit.

Overvej kompleksiteten af modellen og lav på baggrund heraf samt andre kriterier, som I finder relevante, et begrundet forslag til hvilken strategi I vil bruge til organisering af domæne logikken.

Hvis der er tid til det, kan I inddrage de tre mønstre Transaction Scripts, Domain Model og Table Module mere direkte i et forsøg på at designe en konkret løsning af opgaven.

Mapping to Relational Databases

Nedenstående figur viser et forslag til en domæne model for Multiprofits kontraktsystem.

Udarbejd forslag til modellens mapning til en relationel database.

Giv forslag til mønstre og skitser en løsning (evt. med sekvensdiagrammer eller lignende) af, hvordan systemets vigtigste funktioner kan designes.

Ekstraopgave i database mapping

Ovenstående model viser sammenhængen mellem nogle klasser i et system til registrering af CD'er og grammofonplader. Giv et bud på, hvordan denne model kan mappes til en relationel database. Systemets vigtigste funktionalitet fremgår af nedenstående skærmlayout:

 

Session States

Diskutér gruppevis behovet for session states i relation til Multiprofit systemet. Forsøg at identificere, hvordan systemet kan opdeles i sessions, business transactions og system transactions og beskriv det i diagramform - I må selv finde ud af hvordan.

Diskutér hvilke af de beskrevne session mønstre I finder mest hensigtsmæssige at bruge i de forskellige situationer. Hvilke data indgår i de forskellige session states? Skal løsninger være stateless eller stateful?

Forbered præsentation af resultatet for klassen - bed om plastic til OH, hvis I ønsker at bruge det.

 

Distribution Strategies

Diskutér gruppevis mulige anvendelser af distribution strategies i relation til Multiprofit systemet. Tag udgangspunkt i nogle af de funktioner i systemet, hvor det er åbenlyst, at der med fordel kan anvendes en distribueret løsning. Det kan f.ex. være oprettelse af kontrakt eller en funktion, hvor vi giver låntagerne mulighed for at se en oversigt over transaktionerne på deres egen konto i Multiprofit. Denne oversigt kan f.ex. tilbydes via et Web interface.