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

Like dokumenter
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 Oblig 2. Hour Registration System (HRS)

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:

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

Forslag til løsning. Oppgave 1

Obligatorisk oppgave 2

Conference Centre Portal (CCP)

INF 5120 Obligatorisk oppgave 2

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

INF5120 Oblig 1c4 - Gruppe 19

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

Eksamen INF

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

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

Intelle har siden starten i i leverandør av av programvare for data- og og systemintegrasjon.

A Study of Industrial, Component-Based Development, Ericsson

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

SQL Server guide til e-lector

INF5120 Oblig gjennomgang

Produktrapport Gruppe 9

INF5120 OBLIG OVERSIKT

Distributed object architecture

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

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

En praktisk anvendelse av ITIL rammeverket

case forts. Alternativ 1 Alternativer Sammensetning Objekt-interaktor med valg

Et totalsystem med kontroll på verdikjeden

Fellesprosjekt: gruppe 214

(MVC - Model, View, Control)

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

Team2 Requirements & Design Document Værsystem

Referansearkitektur use cases. Kjell Sand SINTEF Energi AS NTNU Institutt for elkraftteknikk

COMET Business Modelling

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

Elektronisk fakturering mellom bedrifter

Brukerdokumentasjon Prosjekt nr PayEx Logistics

Huldt & Lillevik Lønn og Personal - System 4. Installasjon. Microsoft SQL 2005 Express. Aditro HRM AS

9 Online Backup. Priser KR 100 / PC lisens KR 300 / Server lisens (inkluderer bl.a. SQL/Exchange) KR 0,50 / GB

MBS 12 & Mamut Online Desktop. Ole M Hasven - Product Manager, Marketing Partnersamling, 9 oktober 2008 oleha@mamut.com

Er du nysgjerrig på om det er mulig...

UNIVERSITETET I OSLO

PoC Duet. Oppfølging av sykefravær

Den europeiske byggenæringen blir digital. hva skjer i Europa? Steen Sunesen Oslo,

I 2015 bytter Akelius navn til Wolters Kluwer. NYHET! Byrå Byrå Tid. Kristin Solberg Produktansvarlig Byrå

Tom Røise 18. Februar 2009

UNIVERSITETET I OSLO Institutt for informatikk. INF2120: ICU - a surveillance system, Drop 1. gisleal, eivindjo, tanxn, behrozm

ErgoGroup AS eway Nydalsveien 28 Postboks 4364 Nydalen 0402 Oslo Tlf.: Faks:

Software Requirements and Design (SRD) 1 Generelt om dokumenter

Tips og triks fra Brukerstøtte EVRY

EXCELERATOR KENNETH TORSTVEIT. Sensitivity: Internal

Nye krav i ISO 9001, hvilke er de og hvordan implementere disse i TQM? Ragna Karoline Aasen

Sentral Policy Basert Autorisasjonsløsning

INF5120 Eksamen Løsningsforslag Oppgave 1a,b COMET

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

TIMEREGISTRERING OG ØKONOMISK OPPFØLGING AV PROSJEKTER I AGRESSO WEB

Bruk av ucmdb til SLM og Change Management EDB Business Partner Industri

Service NOW i Datametrix. Trond.lindman@datametrix.no

Tom Røise 9. Februar 2010

Oppsett Visma.net Calendar For deg som bruker Huldt & Lillevik Lønn

Forelesning IMT Mars 2011

Brukerkrav og use case diagrammer og -tekst 19. januar Agenda. Brukerkrav og use case. Diagrammer Tekst.

buildingsmart Norge seminar Gardermoen 2. september 2010 IFD sett i sammenheng med BIM og varedata

Erfaringer og eksempler fra Nord-Europas største implementering av SAP BPC for konsolidering. Stig Skoglund Leading Consultant Statoil

Gruppe 11. Frank Petter Larsen Vegard Dehlen

Skanska BIM prosjektering til FDV. Rupert Hanna BIM Knowledge Manager, Skanska 07.Januar 2014

Komplett forretningssystem for prosjektorienterte kompetansebedrifter

Komplett forretningssystem for prosjektorienterte kompetansebedrifter

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

Hvordan registrere ny bruker i Alma

Mamut Open Services. Mamut Kunnskapsserie. Kom i gang med Mamut Online Survey

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

Tom Røise 24.Mars 2009

Sykehuspartner HF En partner for helsetjenester i utvikling. Hvordan bygge et sykehus ved å bruke TOGAF rammeverk. En praktisk tilnærming

Innhold. Installasjon av SQL server 2012/ Installasjon og konfigurasjon... 2 Port-konfigurasjon... 14

License Management Morten A. Steien EDB Business Partner Industri

Erfaringer fra en Prosjektleder som fikk «overflow»

Konfidensiell - Navn på presentasjon.ppt

Presentasjon 1, Requirement engineering process

Kontakt oss i Egroup for mer informasjon!

INF1010. Grensesnittet Comparable<T>

Andreas Grydeland Sulejewski Teamleader Education SAP Norway

Orders Ethernet connect

AMS-case forts. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR

Fra sekvensielt til parallelt

Forelesning IMT Mars 2011

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

CORBA Component Model (CCM)

BRUKERVEILEDNING INTRANETT, CMA ASSET MANAGEMENT AS. Dataingeniørutdanningen, Høgskolen i Oslo GRUPPE 15. Kenneth Ådalen. Vegard Gulbrandsen

OPPSUMMERING Telecom Management 2007

Introduksjon til prosjektarbeid del 3. Prosjektadministrasjon Styring, organisasjon og ledelse

Fra sekvensielt til parallelt

NOVAPOINT BRUKERMØTE 2016 BERGEN, mai

Kravdokument Innholdsfortegnelse 1 Innledning 2 Bakgrunn og oversikt 3 Detaljerte krav 4 Systemsekvensdiagram

Mamut Partner Program Nå dine mål Bli en del av vinnerlaget!

AXDATA EMPLOYEE SERVICES

Transkript:

UNIVERSITETET I OSLO Institutt for Informatikk INF5120 Modellering med objekter Oblig 2 Time Master Skrevet av: Kristrun Arnarsdottir Arild Fines Ine Lyche Sigernes - (kriar) - (arildfi) - (inel) 03. mai 2004

INNHOLD 1. INNLEDNING...3 1.1 PROBLEM BESKRIVELSE...3 1.2 FORUTSETNINGER...3 2. BUSINESS MODEL (VIRKSOMHETSMODELL)...4 2.1 SCOPING STATEMENTS (KONTEKST STATEMENT)...4 2.1.1 Avgrensinger...4 2.1.2 Rik bilde...4 2.1.3 Scope and stakeholders...5 2.2 GOAL MODEL...6 2.3 BUSINESS RESOURCE MODEL...6 2.4 BUSINESS PROCESS & ROLE MODEL...7 2.4.1 Projekt gjennomføring Prosess beskrivelse...7 3. REQUIREMENTS MODEL (KRAV MODELL)...8 3.1 SYSTEM BOUNDARY MODEL...8 3.1.1 Detailed Use Case Diagram...9 3.2 SUBSYSTEM GROUPING MODEL...10 3.3 USE CASE DESCRIPTIONS (USE CASE BESKRIVELSER)...11 3.3.1 Add User...11 3.3.2 Delete User...11 3.3.3 Add Project...12 3.3.4 Change Project...12 3.3.5 Delete Project...13 3.3.6 Show Project...13 3.3.7 Approve Hour List...14 3.3.8 Submit For Approval...14 3.3.9 Register Hours...15 3.3.10 Change Hours...15 3.4 REFERENCE ARCHITECTURE ANALYSIS MODEL...16 3.4.1 Component Structure...16 4. ARKITEKTUR MODELL...17 4.1 INTERFACE SPECIFICATION (GRENSESNITTBESKRIVELSE)...17 4.1.1 Hour Editor Tool: Component Structure...17 4.1.2 Hour Editor Tool: UserServiceInterface...18 4.2 SAMARBEID MELLOM KOMPONENTER...18 4.2.1 Register Hours...18 4.3 INTERNAL DESIGN...19 4.3.1 BCE analyse...19 PLATTFORM SPESIFIKK MODELL...20 5.1 COMPONENT IMPLEMENTATION MODEL...20 5.2 DEPLOYMENT DIAGRAM...21-2 -

1. INNLEDNING Denne oppgaven er obligatorisk oppgave i faget INF5120 Modellering mod objekter. Oppgaven går ut på å lage en komplett modellbeskrivelse for en bedrift som skal håndtere timeregistrering. 1.1 PROBLEM BESKRIVELSE I forbindelse med oppgaven skal vi ta utgangspunkt i følgende problem beskrivelse: En bedrift ønsker å holde oversikt over hvor ressursene brukes og har besluttet å innføre timelister. Hver ansatt må da hver uke registrere timene de jobber på de ulike prosjektene som pågår i bedriften slik at man lettere kan holde oversikt over påløpte timer per prosjekt. Bedriften trenger et system for å håndtere timeregistrering. Dere er derfor satt til å designe å lage et slikt system. I tillegg ti lå registrere timer på de ulike prosjektene må systemet også vedlikeholde et personlig timebudsjett for hver av de ansatte i bedriften (slik at man kan holde oversikt over avspasering og ferie.) 1.2 FORUTSETNINGER Vi velger å ta utgangspunkt i en bedrift som selger støtteverktøy for utvikling og testing av programvare og som tilbyr konsulenttjenester for å støtte kunden i å bruke disse verktøyene. Vi referere til denne bedriften heretter som Verktøy Leverandør. Salgsavdeling: Salg og markedsføring av verktøy. Konsulent avdeling: Konsulenttjenester i forbindelse med innføring og bruk av verktøy. Teknisk support: Teknisk salg support samt help desk. Administrasjon: Regnskap, lønn og annen administrasjon. Hittil har timeregistrering foregått ved at konsulenter fyller ut xcel som de leverer til sin nærmeste leder men nå skal dette effektiviseres ved å innføre et system. De som jobber i konsulent avdelinger er solgt ut på eksterne oppdrag. Det gjøres hovedsakelig i forbindelse med at et eksternt firma har investert i verktøy fra bedriften. Innføringen blir typisk planlagt som et prosjekt hvor 2-3 konsulenter er involvert i prosessen. Først gjennomfører konsulentene en slags situasjonsanalyse, deretter komme de med forslag om hvordan verktøyet kan best integreres i organisasjonen og deretter gir diverse støtte når verktøy skal tas i bruk i form av opplæring og annen konsulentbistand. I tillegg til å effektivisere selve timeregistreringen bidrar systemet i forbindelse med følgende oppgaver: - danner grunnlag for prosjekt-estimering, - danner grunnlag for bonusordninger - fakturering av timer - registrering av feriedager og avspassering - 3 -

2. BUSINESS MODEL (VIRKSOMHETSMODELL) 2.1 SCOPING STATEMENTS (KONTEKST STATEMENT) Oblig2 - INF5120 - Modellering med objekter 2.1.1 AVGRENSINGER De som skal registrere sine timer er i timeregistrerings-systemet Time-Master er de som er ansatt i konsulent avdelingen. Konsulenter skal registrere alle timer som de jobber, fakturerbare samt ikke fakturerbare. Første versjon av dette systemet skal ikke integreres med andre systemer (lønn, regnskap) Systemet skal ha web-klient. (Gjør det enklere for konsulenter å registrere timer når de er hjemme eller ute på oppdrag) 2.1.2 RIK BILDE Nåværende situasjon Faktureringsgrunnlag Fakturerte timer Accounting Konsulenter Endring Ny situasjon Selger/Help Desk Hvem jobber på hvilke prosjekt Hvem blir til stede? Hvem er ledig / ikke fakturerbar? Selger/Admin konsulenttjenester Accounting Input til prosjektplanlegging Faktureringsgrunnlag Input til prosjektplanlegging Timeplan Ledelse Bonusordninger Time Master Fakturerte timer Ikke fakturerte timer Konsulenter - 4 -

2.1.3 SCOPE AND STAKEHOLDERS <<summary>> - selger verktøy - bidrar til salg av konsulenter <<summary>> - selger konsulenttjenester - estimerer prosjektarbeid - lager tilbud - lager kontrakter - rapporterer til ledelsen <<summary>> - regnskap - lønn - fakturering Selger konsulenter Selger Verktøy Regnskap/lønn Verktøy Leverandør Konsulent <<summary>> - yter av konsulenttjenester - estimere prosjektarbeid -... Salg support <<summary>> - teknisk suppurt til kunder - teknisk support til selger av verktøy -... Ledelse <<summary>> - målsetninger - ledelse - bonusordninger -... - 5 -

2.2 GOAL MODEL Tjene mer penger Effektivisere hverdagen hos konsulenter Timeregistrering på web Mer presis tilbudsgrunnlag Mer korrekt/fleksibelt/oppdatert faktureringsgrunnlag Bedre estimeringsgrunnlag (informasjon om timer brukt på tidligere prosjekter) Lettere å gjennomføre aktivitet (tilgjengeliggjøring) Forbedred resursoversikt 2.3 BUSINESS RESOURCE MODEL Consultant Week Schedule Day Schedule 1 1...52 1 * 1 Project * Time Period 1 * BillableProject NonBillableProject - 6 -

2.4 BUSINESS PROCESS & ROLE MODEL 2.4.1 PROJEKT GJENNOMFØRING PROSESS BESKRIVELSE Prosjektleder Konsulent Regnskap H:Salgsaktivitet T:Sjekke tidl. prosjekter T:Registrere timer T:Sjekke registrerte timer H:Sende Tilbud Prosjekt Timeliste H:Sende Faktura T:Registrere Projekt Resultat av WARM analyse, H: Human step, T:Tool step - 7 -

3. REQUIREMENTS MODEL (KRAV MODELL) 3.1 SYSTEM BOUNDARY MODEL Administrator adds and removes users from the system Accounting Accounting uses the system to calculate consultant pay as well as bill clients. Administrator The project lead adds, removes and manages projects. Approves hour lists from consultants. System Project Lead This is the external employee database/directory service, which is used for authentication and authorization Consultant Employee Database The consultant registers his hours on a weekly basis - 8 -

3.1.1 DETAILED USE CASE DIAGRAM System Submit For Approv al Add User Employee Database Delete User Consultant Register Hours Change Hours Administrator Add Project Show Project Delete Project Project Lead Accounting Change Project Approve Hour List - 9 -

3.2 SUBSYSTEM GROUPING MODEL HourEditor System UserEditor Submit For Approv al Add User Register Hours Delete User Employee Database Change Hours Approv e Hour List Administrator Consultant ProjectEditor Add Project Delete Project Show Project Project Lead Accounting Change Proj ect - 10 -

3.3 USE CASE DESCRIPTIONS (USE CASE BESKRIVELSER) Forutsetninger Det eksisterer et ansattregister (employee database) hvor alle ansatte er registrert. Vi antar at all autentisering skjer opp mot denne databasen. Alle prosjektledere har lov til å slette/endre alle prosjekter 3.3.1 ADD USER No. 1 Priority Use case Add User 1 ( 1 Høyest, 2 Med, 3 Lavest) Goal Administrator ønsker å legge til en ny konsulent Actors Administrator, Ansattregister Pre-conditions Konsulent skal ikke eksistere fra før Administrator er logget inn i systemet Konsulent er registrert i ansattregister Post-conditions Ny ansatt er lagret i systemet Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når administrator velger ny konsulent 2 Administrator velger konsulent fra ansattregister 3 Hvis Konsulent ikke finnes i ansattregister 3.1 Avslutt registreringen 4 Informasjon lagres 3.3.2 DELETE USER No.2 Use case Delete User Priority 3 Goal Administrator ønsker å fjerne konsulent fra systemet Actors Administrator Pre-conditions Konsulent finnes i systemet Post-conditions Konsulent er fjernet fra systemet Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når administrator velger slett konsulent (Delete User) 2 Administrator velger konsulent 3 Administrator sletter konsulenten 4 Systemet ber om bekreftelse 5 Administrator bekrefter 6 Systemet oppdateres - 11 -

3.3.3 ADD PROJECT Oblig2 - INF5120 - Modellering med objekter No.3 Use case Add Project Priority 1 Goal Prosjektleder ønsker å legg til nytt prosjekt i systemet Actors Prosjektleder Pre-conditions Ingen Post-conditions Nytt prosjekt er lagt til i systemet Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når Prosjektleder velger nytt prosjekt (Add Project) 2 Prosjektleder registrerer nødvendig informasjon 3 Hvis ikke informasjonen er tilstrekkelig 3.1 Vis feilmelding 3.2 Gå til step 2 4 Informasjon lagres 3.3.4 CHANGE PROJECT No.4 Use case Change Project Priority 3 Goal Prosjektleder ønsker å endre informasjon om et prosjekt Actors Prosjektleder Pre-conditions Prosjektet finnes i systemet Post-conditions Prosjekt er oppdatert Facade Quality Req. Scenario Normal Description Step Action 1 Starter når Prosjektleder velger endre prosjekt (Change Project) 2 Prosjektleder velger prosjekt som skal endres 3 Prosjektleder endrer informasjonen 4 Hvis ikke informasjonen er tilstrekkelig 4.1 Vis feilmelding 4.2 Gå til step 3 5 Informasjon lagres - 12 -

3.3.5 DELETE PROJECT no.5 Use case Delete Project Priority 3 Goal Prosjektleder ønsker å fjerne et prosjekt fra systemet Actors Prosjektleder Pre-conditions Prosjektet finnes i systemet Ingen timer er knyttet opp mot prosjektet Post-conditions Prosjekt er fjernet Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når Prosjektleder velger slette prosjekt 2 Prosjektleder velger prosjekt som skal slettes 3 Hvis det finnes timer som er knyttet opp mot det prosjektet 3.1 Vis feilmelding 3.2 Systemet gir valgmuligheter, avbryt registrering eller gå til step 2 4 Systemet oppdateres 3.3.6 SHOW PROJECT Use Case Use case Show Project no.6 Priority 2 Goal Regnskap ønsker å finne antall timer som er registrert på et prosjekt Actors Regnskap (Accounting) Pre-conditions Ingen Post-conditions Ingen Facade - Quality - Requirements Scenario Normal Description Step Action 1 Starter når Regnskap velger vis prosjekt (Show Project) 2 Systemet viser oversikt over alle prosjekter sortert på dato 3 Regnskap velger prosjektet som skal vises 4 Systemet viser detaljert prosjektinformasjon - 13 -

3.3.7 APPROVE HOUR LIST No.7 Use case Approve Hour List Priority 2 Goal Prosjektleder ønsker å godkjenne timeliste for konsulent Actors Prosjektleder Pre-conditions Konsulent har sendt timeliste til godkjenning Post-conditions Timelisten er godkjent Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når prosjektleder velger å godkjenne timelister (Approve Hour List) 2 Systemet viser oversikt over alle timelister som er sendt til godkjenning 3 Prosjektleder velger timeliste som skal godkjennes 4 Systemet viser timelisten 5 Hvis prosjektleder ikke godkjenner 5.1 Systemet sender epost til konsulenten 5.2 Gå til step 2 6 Prosjektleder godkjenner timeliste 7 Systemet oppdateres 3.3.8 SUBMIT FOR APPROVAL No.8 Use case Submit For Approval Priority 2 Goal Konsulent ønsker å få sin timeliste godkjent Actors Konsulent Pre-conditions Konsulent er ferdig med å registrere timer for en uke (timelisten) Timelisten skal ikke være godkjent fra før Post-conditions Timelisten er sendt for godkjenning Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når konsulent velger sende til godkjenning (Submit For Approval) 2 Systemet viser oversikt over alle timelister 3 Konsulent velger den timelisten som skal godkjennes 4 Konsulenten velger å sende til godkjenning - 14 -

3.3.9 REGISTER HOURS No.9 Use case Register Hours Priority 1 Goal Konsulent ønsker å registrere timer Actors Konsulent Pre-conditions Ingen Post-conditions Timer er registrert Façade - Quality Req. - Scenario Description Step Action 1 Starter når konsulent velger registrere timer (Register Hours) 2 Konsulent velger uke konsulenten vil registrere timer for 3 Systemet viser registreringsark 4 For hvert prosjekt som konsulent skal registrere for 4.1 Konsulent velger prosjekt 4.2 Konsulent skriver inn antall timer pr. dag 5 Informasjonen lagres 3.3.10 CHANGE HOURS No. 10 Use case Change Hours Priority 2 Goal Konsulent ønsker å endre timeliste Actors Konsulent Pre-conditions Timeliste er ikke godkjent Post-conditions Timeliste er oppdatert Facade - Quality Req. - Scenario Normal Description Step Action 1 Starter når konsulent velger endre timeliste (Change Hours) 2 Systemet viser oversikt over alle timelister 3 Konsulenten velger timelisten som skal endres 4 For hvert prosjekt som konsulent skal endre, slette eller legge til 4.1 Konsulent oppdaterer informasjon 5 Informasjon oppdateres - 15 -

3.4 REFERENCE ARCHITECTURE ANALYSIS MODEL 3.4.1 COMPONENT STRUCTURE «tool» HourEditor «tool» ProjectEditor «tool» UserEditor Component infrastructure ScheduleService UserService «resource service» ScheduleInfo «resource service» UserInfo - 16 -

4. ARKITEKTUR MODELL 4.1 INTERFACE SPECIFICATION (GRENSESNITTBESKRIVELSE) «tool» HourEditor «tool» ProjectEditor «tool» UserEditor IScheduleService «realize» IProjectService «realize» IUserService «realize» UserService ScheduleService IMailNotifier «realize» MailServ er Existing mail server IScheduleInfo «realize» «resource service» ScheduleInfo IUserInfo «realize» «resource service UserInfo 4.1.1 HOUR EDITOR TOOL: COMPONENT STRUCTURE HourEditorUI IHourEditorUS «realize» HourEditorUS - 17 -

4.1.2 HOUR EDITOR TOOL: USERSERVICEINTERFACE «interface» IHourEditorUS + getschedule(weekno :int) : IScheduleInfo + getavailableprojects() : String[] + save(schedule :IScheduleInfo) : void «interface» IScheduleInfo + sethour(day :int, hour :int, project :String) : void + getprojectforhour(day :int, hour :int) : String + create(user :String, weekno :int) : void «interface» IScheduleService + getschedule(weekno :int, user :String) : IScheduleInfo + save(schedule :IScheduleInfo) : void + getprojectsforuser(user :String) : String[] 4.2 SAMARBEID MELLOM KOMPONENTER 4.2.1 REGISTER HOURS HourEditorUI HourEditorUS ScheduleService ScheduleInfo :Consultant Register Hours getschedule(weekno) getschedule(user, weekno) [if schedule does exist]: [if schedule does not exist]:create(user, weekno) getprojects displayschedule(schedule) getavailableprojects(user) manipulate schedule sethour(hour, day, project) save(schedule) {while not finished} save(schedule) - 18 -

4.3 INTERNAL DESIGN 4.3.1 BCE ANALYSE Ved gjennomføring av BCE analyse, tar vi utgangspunkt i anbefalt artikkel: Robust Object Orientert System Analysis. Brukergrensesnittet skal kjøre I en web-browser og en boundary class vil typisk representere en web side. HourRegister HourController HourView ApproveController WeekSchedule HourFunctions SubmitApprController ProjectView ProjectController Project ProjectRegister ConsultantView ConsultantController Consultant ConsultantRegister - 19 -

5. PLATTFORM SPESIFIKK MODELL 5.1 COMPONENT IMPLEMENTATION MODEL Consultant WeekSchedule DaySchedule 1 0..52 1 * 1 * Billable Project TimePeriod 1 * NonBillable Ved å transformere fra PIM til PSM, for vi tre komponenter. WeekSchedule som inneholder klassene WeekSchedule, DaySchedule og TimePeriod blir transformert til et DataSchema. Project som inneholder klassene Project, Billable og NonBillable blir transformert til et DataSchema og Constultant som inneholder klassen Consultant blir til et DataSchema. WeekSchedule Project Consultant For hver av disse, vil det bli generert følgende: EJBEntityComponent, EJBDataSchema EJBKeyClass Remote interface Remote home interface Vi har igjen valgt å sette sammen WeekSchedule og Project til en kompenent som vi kaller for ScheduleInfo. - 20 -

5.2 DEPLOYMENT DIAGRAM - 21 -