Hour Registration System (HRS) Oblig 2. DEL 1: COMET Business Modelling

Like dokumenter
INF Oblig 2. Hour Registration System (HRS)

University of Oslo Department of Informatics. INF Modellering med objekter Oblig 2, V2004. Skrevet av:

INF5120 Oblig 2 - Timeregistreringssystem Gruppe 25 Annette Kristin Levine Nils-Kristian Liborg Unni Nyhamar Hinkel

INF 5120 Obligatorisk oppgave Nr 2

INF Modellering med objekter (Oblig 2) **TimeregistreringSystem** (Designet av Alen Cemer

Oblig2 i INF5120 Modellering med objekter UiO V04, Timelisteføringssystem Ver

University of Oslo Department of Informatics. Hours Registration System (HRS) INF 5120 Oblig 2. Skrevet av:

Forslag til løsning. Oppgave 1

Conference Centre Portal (CCP)

INF 5120 Obligatorisk oppgave 2

Eksamen INF

UNIVERSITETET I OSLO Institutt for Informatikk. INF5120 Modellering med objekter Oblig 2 Time Master. Skrevet av: Kristrun Arnarsdottir. 03.

1 Innledning Plattformspesifikk modell Komponent Implementasjonsmodell Deployment Modell... 29

INF5120 Oblig gjennomgang

INF5120 Obligatorisk innleving 2 Gruppe 7. Ole Tommy, Tor Eric, Audun og Kai

A Study of Industrial, Component-Based Development, Ericsson

Obligatorisk oppgave 2

OptimalJ-kurs UIO Oppsummering av kurset. De ulike modellene egenskaper og formål

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004

INF5120 OBLIG OVERSIKT

INF5120 Oblig 1c4 - Gruppe 19

Oblig 2. Inf5120. Gruppe 21. Espen Stensund (estensun) Nguyen Tran (nguyent) Hung Huynh (qhhuynh)

Kenneth A. Hansen (kennetah) Anders Gravdal (andergra) Thomas H. Espe (thomases)

System integration testing. Forelesning Systems Testing UiB Høst 2011, Ina M. Espås,

Prosjektgruppen: Gjermund Gartmann Tommy Jansson Margrethe Store. Prosjektledelse: Margrethe Store Kvalitetssikring: Tommy Jansson

Distributed object architecture

INF5120 Eksamen Løsningsforslag Oppgave 1a,b COMET

UML- Use case drevet analyse og design. Domenemodeller Sekvensdiagrammer Use case realisering med GRASP patterns Klassediagram - designmodeller

Team2 Requirements & Design Document Værsystem

Inf5120. Obligatorisk innlevering nr 2, 3.mai Obligatorisk innlevering nr 2. Inf 5120: 5/11/2004

Hvordan komme i gang med ArchiMate? Det første modelleringsspråket som gjør TOGAF Praktisk

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel

Innledende Analyse Del 1.2

Requirements & Design Document

CORBA Component Model (CCM)

Web Service Registry

System Dokumentasjon. Team2. Høgskolen i Sørøst-Norge Fakultet for teknologi, naturvitenskap og maritime fag Institutt for elektro, IT og kybernetikk

I dag UML. Domenemodell visualisering av konsepter. Eksempel. Hvordan finne domeneklasser?

Kapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy

Presentasjon 1, Requirement engineering process

SRD. Software Requirements and Design GLIS. Cecilie Dortea Gløsmyr, Espen Buø og Henrik Lie

Eksamen i fag SIF8018 Systemutvikling. Fredag 25. mai 2001 kl

Spesifikasjon av Lag emne

Distributed object architecture

(MVC - Model, View, Control)

Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer

J2EE. CMP Entity Beans, Transaksjoner, JSP

Innledende Analyse Del 1: Prosjektbeskrivelse (versjon 2)

FORPROSJEKT KIM LONG VU DUY JOHNNY KHAC NGUYEN ADRIAN SIIM MELSOM HÅKON THORKILDSEN SMØRVIK

Gruppenavn. Beskrivelse av arkitektur For Navn på systemet. Versjon <1.0>

DELLEVERANSE 1 INF2120 V06

UML 1. Use case drevet analyse og design Kirsten Ribu

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case?

Fra krav til objektdesign

Oblig 2, SLI250 Et kortfattet analyse og designdokument for skifteregister på nett

Gruppenavn. Prosjektnavn Beskrivelse av design For Navn på systemet. Versjon <1.0>

Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client.

PROSJEKTPLAN FOR INF [4 3]120-PROSJEKT: PROJECT HOSPITAL 2004

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell (ny versjon) Dagens forelesning. Fra krav til objektdesign

Del - leveranse Del 2. Inf 2120 fredag Gruppe 1 Knut Johannes Dahle

Tom Røise IMT 2243 : Systemutvikling 1. Forelesning IMT Mars Designfasen i SU-prosjekter : Generelle steg i Designprosessen

UNIVERSITETET I OSLO

1 Kodegenerering fra Tau Suiten

Erfaringer fra en Prosjektleder som fikk «overflow»

SOFTWARE REQUIREMENT & DESIGN DOCUMENT. Home Automation System. Nickolas Helgeland, Jon Erik Nordskog og Kristian Sande Sjølyst

Tom Røise 24.Mars 2009

Visma Reconciliation NYHETER OG FORBEDRINGER

SRD GLIS. Cecilie Dortea Gløsmyr, Espen Buø og Henrik Lie

Forelesning IMT Mars 2011

Produktrapport Gruppe 9

Eksamen i fag TDT4140 Systemutvikling. 6. juni, 2006 kl

Use case drevet design med UML

Innhold. INF1000 Høst Unified Modeling Language (UML) Unified Modeling Language (UML)

Dokumentstyring og Maler

Fra problem til program

Huldt & Lillevik Ansattportal Ansattportal. Versjon

Use case modellering. Use case modellen. Metode for systembeskrivelse og Nettsted-design

Brukermanual. Quality PayBack Starter Edition

INF Seminaroppgaver til uke 3

Huldt & Lillevik Lønn 5.0. Oppdatere til ny versjon

Introduksjon til objektorientert programmering

ENTRÉ WORKER. Digitalt prosjektstyringsverktøy

Prosjektplan v1.7 (Revidert utgave 2)

Technical Integration Architecture Teknisk integrasjonsarkitektur

Arkitektur. Kirsten Ribu Høgskolen i Oslo

Obligatorisk oppgave 5: Modellering av krav

Uke 5. Magnus Li INF /

INF5120 Modellbasert systemutvikling

Test Beskrivelse Resultat Innhenting CBIS Programmet mottar data fra CBIS OK, men kun. Innhenting Tellus Programmet mottar data fra Tellus OK

Oppsummering. Thomas Lohne Aanes Thomas Amble

AP221 Use Case - TUL - Utarbeid prosessflytmal og komponenter

Installasjon av OneStop Reporting Produktene på Terminalserver

En historie om Visma Reporting. Arkitektur og. Vi har et problem

Generelt om operativsystemer

Presentasjon 2 Gruppe 2 Oppgave 2 Oppdragsgiver 2. Sammendrag 3. Dagens situasjon 3 ServiceNow 3 Coop 3. Mål og rammebetingelser 3 Mål 3 Teknologier 4

UNIVERSITETET I OSLO

Software Requirements and Design (SRD) 1 Generelt om dokumenter

KRAVSPESIFIKASJON FOR SOSIORAMA

Innholdsfortegnelse INNHOLDSFORTEGNELSE... 2 REVISJONSOVERSIKT...4 INTRODUKSJON MED FORUTSETNINGER... 5

Transkript:

Hour Registration System (HRS) Oblig 2 DEL 1: COMET Business Modelling Innlevering i inf5120 Av gruppe 3 som består av Øivind Hepsø Geir Ivar Jerstad Kjetil Myhre

Business antakelser Ansatt kan registrere antall timer han/hun har jobbet på hvert prosjekt, slik at bedriften kan holde oversikt over sine ressurser, og holde oversikt over avspasering og ferie til gode for hver ansatt. Prosjektleder kan få full oversikt over timer brukt på hvert prosjekt, samt framgang og ressursfordeling. Både vanlige ansatte og prosjektleder skal kunne skrive rapporter. Scoping Statements Context Statement Stakeholders: - Enkelt måte å registrere prosjekttimer - Lett oversikt på hvor mange timer forbrukt på hvert prosjekt - Oversikt på hvor mange feriedager som er til gode eller avspasseringer. - Full oversikt på antall timer pr prosjekt - Oversikt på fremgang pr prosjekt - Oversikt på ressursfordelingen Ansatt Prosjektleder Hour Registration System Vision for change Bedriften hadde ikke god nok oversikt på prosjektene sine og ville derfor få laget et system som holdt bokføring av timer pr ansatt pr prosjekt. Med dette systemet vil de kunne få full oversikt på fremgang, resurssfordeling og hvor mye avspasering og ferie hver ansatt har til gode. Dette vil være med på å effektivisere bedriften, samt til hver tid holde oversikt over prosjektene og deres ressurser, det vil si total kontroll over hvilke personer som sitter på hvert prosjekt til enhver tid. Dette vil hjelpe bedriften til å holde budsjettene sine og holde sine tidsfrister bedre.

Goal Model Maksimalt utbytte av ressursene Riktige folk på riktig sted Oversikt over avspasering og ferie pr ansatt Nøyaktig prosjektplan Registrering av timer... Fremgangs oversikt

Business Process & Role Model WARM Ansatt registerer prosjekttimer: Ansatt HRS Ansatt logger seg inn Systemet logger inn den ansatte Ansatt velger prosjekt Systemet viser aktuelle prosjekter som den ansatte er deltaker i. Ansatt velger å registere nye timer Systemet lagrer timene og sender en bekreftelse tilbake til den ansatte Ansatt ser bekreftelse og logger ut Systemet logger den ansatte ut av systemet

Prosjektleder legger inn nytt prosjekt Prosjektleder HRS Prosjektleder logger seg inn Systemet logger inn Prosjektleder Systemet viser pågående prosjekter Prosjektleder legger inn et nytt prosjekt System henter opp et prosjekt-templat Prosjektleder må spesifisere hvilke resursser som er tilgjengelig Prosjektleder registrer aktivitene som prosjektet utgjør Prosjektleder tildeler resursser til hver aktivitet og spesifiserer hvor mye av resurssene som skal forbrukes. Systemet lagrer informasjonen Systemet oppdaterer prosjektinfomarsjonen hos de respektive ansatte Prosjektleder mottar bekreftelse og logger ut System sender en bekreftelse tilbake til prosjektlederen System logger ut prosjektleder

Systemets ansvarsområde (Scope) 1. Clear Statement of outcomes Forbedret håndtering av ressurser på prosjektene, slik at prosjektleder lettere kan ha full kontroll over framskritt og tilgjengelige ressurser. Forbedret oversikt over timer brukt på prosjekt av hver ansatt. Forbedret oversikt over ferie og avspasering til hver ansatt. 2. Clear Statement of those who are to benefit Ledelsen i bedriften kan lettere kontrollere og overholde budsjetter. Økonomi og lønn kan lettere holde oversikt over timer og budsjett. 3. Statement of 'outputs' or 'deliverables' Systemet skal holde oversikt over antall timer som er brukt på hvert prosjekt. Systemet skal også vedlikeholde et personlig timebudsjett for hver av de ansatte i bedriften (slik at man kan holde oversikt over avspasering og ferie). Risikoanalyse Forretningens pengebevilgning går tomt før systemet er ferdig. Ansatt registrerer feil antall timer VIRUS Sykdom Underestimert tidsforbruk Dårlig tilgang på ressurser

Hour Registration System (HRS) Oblig 2 DEL 2: COMET Requirements Modelling Innlevering i inf5120 Av gruppe 3 som består av Øivind Hepsø Geir Ivar Jerstad Kjetil Myhre

Requirements Model...9 System boundry og aktører...9 Use-case modell:...10 Use-case scenario...11 Use-case: Behandle timeregistrering...11 Aktør...11 Forhåndsbetingelser...11 Hendelsesforløp:...11 Hovedforløp...11 Alternative forløp...11 Use-case: Behandle prosjekter...12 Kort beskrivelse...12 Aktør...12 Forhåndsbetingelser...12 Hendelsesforløp...12 Hovedforløp...12 Alternative forløp...12 Sekvensdiagram...14 Timeregistrering ansatt legger til timer...14 Behandle prosjekt slett timer...15 Subsystem grouping...16 Component structure bus pattern...17

Requirements Model Vår utviklingsprosess definerer at disse modellene skal være med i dette dokumentet, men vi tar ikke med prototyping pga uspesifisert i oppgaven (ref. referanseoppgaven). RA analysis er realisert inn i avsnittene: Use-case modell, Subsystem grouping, component infrastructure. Figur 1 - COMET sin Requirements model System boundry og aktører Vi har identifisert de akutelle rollene som systemet krever minimalt og disse er: Den ansatte skal kunne legge til prosjekttimer samt se rapporter. En ansatt er en resurss som prosjektlederen skal styre over. Hovedansvaret til hvert prosjekt ligger på prosjektlederen og dermed har den ansvaret med alt som har med å behandle prosjektet som f.eks legge til prosjekter, oppdaterer de. Ansatt HRS Prosjektleder Figur 2 - Viser avgrensningene til HRS systemet

Use-case modell: Behandle timeregistrering Ansatt Behandle prosjekter Prosjektleder Lage prosjektrapporter Figur 3 - use-case modellen til HRS

Use-case scenario Use-case: Behandle timeregistrering Kort beskrivelse Den ansatte skal være i stand til å registrere timer som forbrukt på en aktivitet i et prosjekt som den ansatte arbeider i. Aktør Ansatt Forhåndsbetingelser Systemet er oppegående. Ansatt har logget inn i systemet. Hendelsesforløp: Hovedforløp 1. Velg behandling av timeregistrering: A1-1 : Legg til timeregistrering A1-2 : Endre timeregistrering A1-3 : Slett timeregistrering Alternative forløp A1-1 : Legg til timeregistrering 1. Systemet viser hvilke prosjekter som er tilgjengelig 2. Ansatt velger aktuelt prosjekt 3. Systemet viser hvilke aktiviteter som er tilgjengelig 4. Ansatt velger aktivitet 5. Ansatt velger hvilken aktivitet som timene skal registreres på 6. Ansatt skriver inn antall timer forbrukt 7. Ansatt logger ut av systemet A1-2 : Endre timeregistrering 1. Systemet viser hvilke prosjekter som er tilgjengelig 2. Ansatt velger aktuelt prosjekt 3. Systemet viser hvilke aktiviteter som er tilgjengelig 4. Ansatt velger aktivitet 5. Ansatt velger hviken timeregistrering som skal endres (Hver timeregistrering har en timestamp) 6. Ansatt skriver inn antall timer forbrukt 7. Ansatt logger ut av systemet A1-3 : Slett timeregistrering 8. Systemet viser hvilke prosjekter som er tilgjengelig 9. Ansatt velger aktuelt prosjekt 10. Systemet viser hvilke aktiviteter som er tilgjengelig

11. Ansatt velger aktivitet 12. Ansatt velger hviken timeregistrering som skal endres (Hver timeregistrering har en timestamp) 13. Ansatt sletter timeregistreringen 14. Ansatt logger ut av systemet Use-case: Behandle prosjekter Kort beskrivelse Prosjektleder skal være i stand til å legge til prosjekter samt også legge til aktiviteter til de registrerte prosjektene. Prosjektleder skal også kunne tilegne resursser til de forskjellige aktivitetene som utgjør prosjektet. Aktør Prosjektleder Forhåndsbetingelser Systemet er oppegående. Prosjektleder har logget inn i systemet. Hendelsesforløp Hovedforløp 2. Velg behandling av : A1-1 : Legg til prosjekt A1-2 : Endre prosjekt A1-3 : Slett prosjekt Alternative forløp A1-1 : Legg til prosjekt 8. Systemet viser hvilke prosjekter som er tilgjengelig 9. Ansatt velger aktuelt prosjekt 10. Systemet viser hvilke aktiviteter som er tilgjengelig 11. Ansatt velger aktivitet 12. Ansatt velger hvilken aktivitet som timene skal registreres på 13. Ansatt skriver inn antall timer forbrukt 14. Ansatt logger ut av systemet A1-2 : Endre prosjekt 15. Systemet viser hvilke prosjekter som er tilgjengelig 16. Ansatt velger aktuelt prosjekt 17. Systemet viser hvilke aktiviteter som er tilgjengelig 18. Ansatt velger aktivitet 19. Ansatt velger hviken timeregistrering som skal endres (Hver timeregistrering har en timestamp) 20. Ansatt skriver inn antall timer forbrukt 21. Ansatt logger ut av systemet

A1-3 : Slett prosjekt 22. Systemet viser hvilke prosjekter som er tilgjengelig 23. Ansatt velger aktuelt prosjekt 24. Systemet viser hvilke aktiviteter som er tilgjengelig 25. Ansatt velger aktivitet 26. Ansatt velger hviken timeregistrering som skal endres (Hver timeregistrering har en timestamp) 27. Ansatt sletter timeregistreringen 28. Ansatt logger ut av systemet

Sekvensdiagram Her har vi valgt ut to sekvensdiagram for å vise gangen i programmet. Timeregistrering ansatt legger til timer Ansatt HRS main Behandle timer Legg til timer Prosjekt Aktivitet velg timereg new behandle_time legg_til _timer legg_til new velg prosjekt ActionOk() getinfo() velg_aktivitet ActionOk() getinfo() reg timer setinfo() ActionOk() Figur 4 - Sekvensdiagram for "Legg til timer"

Behandle prosjekt slett timer Ansatt HRS main Behandle timer Legg til timer Prosjekt Aktivitet velg timereg new behandle_time legg_til _timer legg_til new velg prosjekt ActionOk() getinfo() velg_aktivitet ActionOk() getinfo() reg timer setinfo() ActionOk() Figur 5 - Sekvensdiagram for "Slett timer"

Subsystem grouping Dette er en oppdeling av systemet og viser kommunikasjonen mellom de forskjellige subsystemene samt alle roller tilknyttet til disse. Figur 6 - Subsystemoversikt Definisjon av subsystemer: Timeregeditor: Verktøy-komponent som brukes av ansatte når de skal registrere timer på det prosjektetet de sitter på, eventuelt endre på timer. Prosjekteditor: Verktøy-komponent som brukes av prosjektleder til å holde oversikt over prosjektets framgang og dets ressurser. Rapport: Rapport-verktøy som prosjektleder og ansatte legger inn sine rapporter om framgang, status og erfaringer.

Component structure bus pattern ProsjektEditor TimeEditor Rapport Component infrastructure Prosjektregistreringstjeneste Timeregistreringstjeneste Prosjektregister Timeregister Ansattregister Figur 7 Oversikt over systemets komponenter Subsystemene Prosjekteditor, Timeeditor, og Rapport brukes av personer (humans) fra figur 1, og de mappes til verktøykomponentene i figur 2. Subsystemene Prosjekttjeneste og Timeregistrerinstjeneste tilbyr tjenester til verktøyene. Verktøyene kommuniserer med business-tjenestene over nettverk. Subsystemene Prosjektregister,Timeregister mappes til ressurstjeneste-komponentene som tilbyr persistente data lagring til Prosjektregistertjeneste, Timeregistreringstjeneste og Ansattregister.

Hour Registration System (HRS) Oblig 2 DEL 3: COMET Architecture Modelling Innlevering i inf5120 Av gruppe 3 som består av Øivind Hepsø Geir Ivar Jerstad Kjetil Myhre

Architecture Modell 2.3 1.1 Interface and Interaction Specification 2.4 1.1.1 Klassediagrammer I denne delen definerer vi grensesnittene til komponentene fra Kravspesifikasjonsmodellene. Vi starter med å vise hvilke komponenter som snakker sammen og hvilke grensesnitt disse bruker. Oversikt over hele systemet følger: I alt er det fem grensesnitt som trenger definering: 1. IProsjektRegTjeneste Dette grensesnittet definerer tjenester mot prosjektregisteret. Det er bare aktører med prosjektlederstatus som skal ha tilgang til oppdaterings delene av dette grensesnittet, mens alle skal kunne bruke rapporteringsfunksjonene Grensesnittet er definert som følger:

Interface IProsjektRegTjeneste + hentprosjekt(prosjektid:int) : ProsjektData + hentprosjektliste() : ProsjektDataListe + lagreprosjekt(p : Prosjekt) : void 2. ITimeRegTjeneste Dette grensesnittet definerer tjenester mot timeregisteret. Ansatte skal kunne bruke dette grensesnittet til å behandle timeregistreringen sin, og alle skal kunne få ut rapporter fra dette grensesnittet. Grensesnittet er definert som følger: Interface ITimeRegTjeneste + henttimedataliste(prosjektid : int) : TimeDataListe + henttimedataliste(ansattid : int) : TimeDataListe + registrertimedata(t:timedata ) : void + sletttimedata(t : TimeData ) : void 3. IProsjektRegister Dette grensesnittet definerer tjenester direkte mot prosjektregisteret. Tjenestene for timeregistrering og prosjektregistrering skal bruke IProsjektRegister for å hente data om prosjektene som de trenger for å tilby tjenestene sine. Grensesnittet er definert som følger: Interface IProsjektRegister + hentprosjekt(prosjektid : int) : ProsjektData + hentprosjektliste() : ProsjektDataListe + lagreprosjekt(p : Prosjekt) : void 4. ITimeRegister Dette grensesnittet definerer tjenester direkte mot timeregisteret. Timeregisteret er tenkt som et register som kobler sammen ansattregisteret og prosjektregisteret. Grensesnittet er definert som følger: Interface ITimeRegister + henttimedata (ansattid: int) : TimeData + henttimedata(ansattid : int, prosjektid : int) : TimeData + henttimedata(prosjektid : int) : TimeData + lagretimedata(td : TimeData) : void + sletttimedata(td : TimeData) : void + henttimedata(timedataid : int) : TimeData

5. IAnsattRegister Dette grensesnittet definerer tjenester direkte mot ansattregisteret. Grensesnittet er definer som følger: Interface IAnsattRegister + hentansatt(ansattid : int) : Ansatt + slettansatt(ansattid : int) : Ansatt + lagreansatt(a : Ansatt) : void

Hour Registration System (HRS) Oblig 2 DEL 4: COMET Platform Spesific Model Innlevering i inf5120 Av gruppe 3 som består av Øivind Hepsø Geir Ivar Jerstad Kjetil Myhre

Platform Specific Model 1.1 Component Implementation Model I denne delen presenterer vi et implementasjonsdesign av HRS basert på J2EE. J2EE er basert på en flerlagsarkitektur der applikasjonen spres over flere nivåer eller lag. Lagene vi vil komme inn på i denne oppgaven er klientlag, weblag og applikasjonslag. Klienten vår blir en web-browser, for eksempel Opera eller Netscape. Weblaget blir representert ved en httpserver som har støtte for Java server pages (JSP). Dette er et server-side skriptspråk som er godt egnet til å kommunisere med det siste laget i implementasjonen vår: applikasjonstjenerlaget. Vi kunne også ha tatt med et databaselag, men vi velger å se på applikasjonstjeneren som database gjennom å bruke dens støtte for såkalt containermanaged persistence. Dermed blir alle Entitybeans i systemet automatisk lagret når det er gjort forandringer på dem. Nedenfor vises de foskjellige elementene i systemet: Vi tar en ny titt på komponentoversikten fra forrige deloppgave:

Denne gangen har vi tegnet en strek slik at alle elementene som skal være i EJB containern er markert ut. Som vi ser er det aller meste av buisinesslogikken plassert nettop i EJB containeren. Når vi gir komponenten vi fokuserte på i forrige deloppgave samme behandling får vi følgende resultat:

Vi starter med å se på komponentene som skal bo i EJB containeren: 1.1.2 EJB komponenter I følge oppgaveteksten skal vi bruke en J2EE UML profil. Dersom vi skulle modellere HRS strengt i følge J2EE UML profilen ville vi endt opp med en meget komplisert modell. Vi har isteden valg å kun bruke stereotypene EJBEntityBean og EJBSessionBean. Når vi så lar klasser som har disse stereotypene implementere grensesnittene fra componentmodellene våre er det underforstått at det er de diverse home/remote interfacene i J2EE programmeringsmodellen som implementerer disse grensesnittene. På denne måten sparer vi plass, og vi mener og at resultatet blir konseptuellt sett lettere å forstå. Forenklet klassemodell for EJB delene av HRS blir da seende slik ut

1.1.3 TimeRegEditor JSP/Webserver Vi vil ikke se på GUI design i denne omgangen. Implementasjon av JSP og koblingene mot EJB er veldig avhengig av hvordan selve brukerinteraksjonen foregår. Vi velger derfor å ikke gå mer i detalj på dette området.

1.2 Deployment Model Vi har allerede diskuttert hvilke komponenter som skal bo i hvilke servere tidligere i PSM delen av oppgaven. Vi skal imidlertid tegne opp formell deployment model her. Vi velger å bruke en enkel deployment model. En av fordelene med J2EE er at arkitekturen er svært fleksibel med hensyn til deployment. Det er ikke noe problem å spre en J2EE applikasjon over mange webservere, mange applikasjonservere etc. En enkel deploymentmodel for vår implementasjonsmodell av HRS følger: