INF 5120 Obligatorisk oppgave 2

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

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

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

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

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

INF 5120 Obligatorisk oppgave Nr 2

Conference Centre Portal (CCP)

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

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

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

Eksamen INF

Obligatorisk oppgave 2

Forslag til løsning. Oppgave 1

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

INF5120 OBLIG OVERSIKT

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

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

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

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

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

Requirements & Design Document

Team2 Requirements & Design Document Værsystem

TDT4140. Systemutvikling. Øving 1. gruppe 215. Kristoffer Hagen. Sondre Løberg Sæter. Håvard Geithus. Bjørnar Valle. Henrik Knutsen.

UNIVERSITETET I OSLO

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

Spesifikasjon av Lag emne

Use case drevet design med UML

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

INF1010 MVC i tekstbaserte programmer

Eksamen i fag TDT4140 Systemutvikling. Tirsdag 27. mai 2004 kl

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

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

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

Produktrapport Gruppe 9

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

UML 1. Use case drevet analyse og design Kirsten Ribu

1 Introduksjon til designmodellen - del B 2

Modellering av krav. INF1050: Systemutvikling 11. februar Universitetslektor Yngve Lindsjørn

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

Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer

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

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

Obligatorisk oppgave 2 INF 5120 Modellering med objekter våren 2004

Distributed object architecture

UKE 13 Mer UML modellering. Gruppetime INF1055 Julie Hagen Nilsen & Maria Stolinski

Metode for ansvarsdrevet OO. Dagens forelesning. Delegering av ansvar i en trelagsarkitektur

Beskjed fra Skagestein

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

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

Brukermanual. System for oversiktslister. Entreprenører

Forside. Eksamen i IN1030 for Våren Ingen hjelpemidler tillatt.

NB! Endring i undervisningsplanen

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

Metode for ansvarsdrevet OO med UML. Dagens forelesning. Hovedflyt for Meld på kurs. Delegering av ansvar i en trelagsarkitektur

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell. Dagens forelesning. Fra krav til objekter

Brukermanual. For deg med brukertilgang i SmartOblat. SmartOblat

A Study of Industrial, Component-Based Development, Ericsson

Systemutvikling - oppsummering. Alexander Nossum blog.eksplisitt.net 22. mai 2006

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

Metode for ansvarsdrevet OO. Dagens forelesning. Delegering av ansvar i en trelagsarkitektur

Forprosjektrapport. Presentasjon. Oslo, den 29. Januar Gorm Eirik Svendsen Nicolai Mellbye Marius Auerdahl Per Gustav Løwenborg

INF5120 Oblig gjennomgang

INF5120 Oblig 1c4 - Gruppe 19

Oppsummering : IMT2243 Systemutvikling. Hensikt med kurset. Innfallsvinkel : Tom Røise IMT2243 : Systemutvikling 1

Metode for ansvarsdrevet OO med UML. Dagens forelesning. Hovedflyt for Meld på kurs. Delegering g av ansvar i en trelagsarkitektur

Spesifikasjon av Lag emne. Kursregistrering g bruksmønstermodell. Dagens forelesning. Fra krav til objekter

o UML klassediagrammer

Stor oppdatering i MyRent

INF5120 Modellbasert systemutvikling

Samhandlingsarkitektur i praksis

Web Service Registry

Trip Tracker - Tracks your trip. Harald H. Tjøstheim Dagfinn Rasmussen Jan Magne Tjensvold

INF 2120 Innlevering 1. Gruppe 4. Kravspesifikasjoner til trafikanten +

Dagens forelesning. o Litt mer om design med UML sekvensdiagrammer. Sentralisert og delegert kontrollstil

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

Metode for ansvarsdrevet OO. Dagens forelesning. Delegering av ansvar i en trelagsarkitektur

Testrapport. Studentevalueringssystem

UML klassediagrammer

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

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

Tom Røise 18. Februar 2009

UML-Unified Modeling Language. Prosess-oversikt. Use case realisering

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

Modellering av krav. INF1050: Systemutvikling 07. februar Førstelektor Yngve Lindsjørn

Applikasjonsutvikling med databaser

Telsys e-post Brukermanual

Kravspesifikasjon. 14. oktober 2002

Oblig 4Hybelhus litt mer tips enn i oppgaven

Oppsett «Visma Contacts»

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

1 Kodegenerering fra Tau Suiten

Syste m documentation

GJENNOMGANG UKESOPPGAVER 4 USE CASE MODELLERING HELGA NYRUD & KRISTIN BRÆNDEN

Brukermanual. PUS i Web. Mai 2009 (Versjon 1)

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

INF3430. VHDL byggeblokker og testbenker

Oversikt over flervalgstester på Ifi

1. Finn klassene (hvilke objekter er det i problemet) 1. Dataene som beskriver problemet (hvilke objekter har vi og hvor mange klasser er det?

Mer$om$objektorientering$og$UML

Transkript:

INF 5120 Obligatorisk oppgave 2 Timeregistreringssystem (Hour Registration System HRS) Gruppe 14: Mats Bue, Harald Børresen, Vegard Dehlen Del 1 Business Model Aktører og interesser Rich Picture En enkel oversikt over hovedobjektene i systemet. En ansatt registrerer timer han/hun jobber med et bestemt prosjekt. På samme måte har flere ansatte jobbet på det samme prosjektet.

Overordnet virksomhetsprosess Ansatt Personalsjef HRS Sjef Prosjektleder Admin/Drift Målhierarki

Business Resource Model En informasjonsmodell som identifiserer og definerer hovedtingene og konseptene for området som er relevant for produktet. Business Process and Role Modell For et såpass enkelt system som dette, uten noen forretningsvirksomhet å modellere, blir denne modellen veldig enkel.

Del 2 Requirements Model System Boundary Model Overordnet Overvåke timeforbruket til de ansatte og styre lønnsutbetaling Registrere timer og se sitt eget timebudsjett Ansatt Personalsjef HRS Sjef Få oversikt over ressursbruk i hele bedriften Få oversikt over ressursbruk i prosjektet Prosjektleder Admin/Drift Vedlikeholde systemet

Use-Case oversikt Use-Case for HRS-systemet:

Subsystem grouping Use Case diagram Use Case beskrivelser Use Case 1 Registrere timer Prioritet 1 Mål En ansatt skal registrere de timene han har jobbet Aktører Ansatt Prekondisjoner Ingen Postkondisjoner Timene har blitt registrert i systemet Fasade Kvalitetskrav En ansatt må kun ha mulighet til å registrere timer for seg selv, så sikker innlogging er nødvendig Scenario Steg Handling

1 Ansatt logger seg inn på systemet 2 Ansatt velger å registrere timer fra menyen 3 Ansatt velger et prosjekt og registrerer antall timer han har jobbet med dette, gjentar for alle prosjektene som den ansatte har jobbet med denne uken 4 Ansatt logger seg ut av systemet Use Case 2 Se på eget timeforbruk Prioritet 4 Mål En ansatt skal kunne se på hvor mange timer han har jobbet til sammen denne måneden, og se eventuelle opparbeidede timer som kan tas ut i ferie Aktører Ansatt Prekondisjoner Ingen Postkondisjoner Ingen Fasade Kvalitetskrav En ansatt må kun ha mulighet til å se på sitt eget timebudsjett, så sikker innlogging er nødvendig Scenario Steg Handling 1 Ansatt logger seg inn på systemet 2 Ansatt velger å se på timebudsjett fra menyen 3 Ansatt ser på timebudsjettet 4 Ansatt logger seg ut av systemet Use Case 3 Se på ansattes timeforbruk Prioritet 5 Mål Personalsjefen skal kunne se på timeforbruket til de ansatte i bedriften for å få oversikt over hvor mye hver enkelt jobber med hensyn på lønnsutbetaling, overtid, ferie osv. Aktører Personalsjef Prekondisjoner Ingen Postkondisjoner Ingen Fasade Kvalitetskrav Kun personalsjefen skal ha tilgang til disse dataene, så sikker innlogging kreves Scenario Steg Handling 1 Personalsjefen logger seg inn i systemet 2 Personalsjef velger hvilken ansatt han vil se på 3 Timebudsjettet til den valgte ansatte vises 4 Evt ny ansatt velges, og steg 2-3 gjentas 5 Personalsjef logger seg ut av systemet. Use Case 4 Se på ressursbruk i eget prosjekt

Prioritet 5 Mål Prosjektleder skal kunne se på timeforbruket i sitt eget prosjekt. Aktører Prosjektleder Prekondisjoner Ingen Postkondisjoner Ingen Fasade Kvalitetskrav Kun prosjektleder skal ha tilgang til disse dataene, og kun for sitt eget prosjekt, så sikker innlogging kreves. Scenario Steg Handling 1 Prosjektleder logger seg inn i systemet 2 Prosjektleder velger prosjekt (kan være leder for flere prosjekt) 3 Timeforbruk i prosjektet vises 4 Prosjektleder logger seg ut av systemet. Use Case 5 Se på ressursbruk i hele bedriften Prioritet 6 Mål Sjefen for firmaet skal kunne se hvor mange timer alle de ansatte jobber til sammen. Aktører Sjef Prekondisjoner Ingen Postkondisjoner Ingen Fasade Kvalitetskrav Kun sjefen skal ha tilgang til disse dataene, så sikker innlogging kreves Scenario Steg Handling 1 Sjefen logger seg inn i systemet 2 Timeforbruk i firmaet vises 3 Sjefen logger seg ut av systemet. Use Case 6 Vedlikeholde systemet Prioritet 2 Mål Administrator for systemet skal kunne vedlikeholde systemet ved å legge til/fjerne brukere, endre rettigheter, legge til/fjerne prosjekter osv. Aktører Admin/Drift Prekondisjoner Ingen Postkondisjoner Ingen Fasade Kvalitetskrav Kun administrator for systemet skal ha mulighet for å vedlikeholde systemet, så sikker innlogging kreves Scenario Steg Handling 1 Administrator logger seg inn i systemet

2 Administrator velger handling 3 Skjermbilde for den gitte handlingen vises, og administrator fyller ut nødvendige endringer 4 Evt ny handling skal utføres, steg 2-3 gjentas 5 Administrator logger seg ut av systemet. Reference Architecture Analysis Model Klassediagram

Use Case Scenario Model Sekvensdiagrammer Registrere time Se på eget timebudsjett

Vedlikeholde system

Architecture Modell Grensesnittbeskrivelser Klassediagram QoS constraints Functionality: Viktig Reliability: Mindre viktig (Ikke et forretningskritisk system) Usability: Veldig viktig Effeciency: Mindre viktig (Funksjonalitet krever lite ressurser) Maintainability: Veldig viktig Portability: Mindre viktig

ITimeService ITimeService login(in ansattid:int, In password: String): LoginStatus logout() registrerarbeid(in ansattid:int, In prosjektid:int, In uke:int, In år:int, In antalltimer:int) seansatt(in ansattid:int): Ansatt hentalleansatte(): Ansatt List seprosjekttimeforbruk(in prosjektid:int): ProsjektTimeforbruk hentalleprosjekter(): Prosjekt List IAdminService IAdminService login(in ansattid:int, In password: String): boolean logout() leggtilansatt(in ansatt:ansatt): boolean endreansatt(in ansatt: Ansatt): boolean slettansatt(in ansattid: int): boolean leggtilprosjekt(in prosjekt:prosjekt): boolean endreprosjekt(in prosjekt:prosjekt): boolean slettprosjekt(in prosjektid:int): boolean ITimeInfo ITimeInfo finnansatt(in ansattid:int): Ansatt sjekkpassord(in ansattid:int, In passord:string): boolean finnalleansatteid(): int List finnprosjekt(in prosjektid:int): Prosjekt finnalleprosjektid(): int List leggtilansatt(in ansatt:ansatt): boolean endreansatt(in ansatt: Ansatt): boolean slettansatt(in ansattid:int): boolean leggtilprosjekt(in prosjekt:prosjekt): boolean endreprosjekt(in prosjekt:prosjekt): boolean slettprosjekt(in prosjektid:int): boolean

PIM datatyper Vi har brukt flere egne datatyper for å gjøre grensesnittene enklere, disse er som følger: Ansatt int ansattid int ansatttype (*) string passord string navn List Arbeid Prosjekt int prosjektid string prosjektnavn int prosjektlederid LoginStatus int ansattid int ansatttype (*) ProsjektTimeforbruk int prosjektid int timerdennemåned int timertotalt (*) = kan være arbeider, prosjektleder, personalsjef, sjef eller administrator

Component Structure for administrasjonskomponenten Velger å se på komponentstrukturen for administrasjonskomponenten. Vi var valgt å bruke en 3-lags arkitektur og droppe lokal lagring, da dette er unødvendig for et såpass lite og enkelt system som dette. Dermed består administrasjonsapplikasjonskomponenten av følgende deler:

Internal design GUI NyAnsattBilde EndreAnsattBilde SlettAnsattBilde NyttProsjektBilde EndreProsjektBilde SlettProsjektBilde LoginBilde SkjermbildeManager Entiteter Service ServiceFacade Ansatt LoginUC «interface» UC Prosjekt NyAnsattUC EndreAnsattUC SlettAnsattUC NyttProsjektUC EndreProsjektUC SlettProsjektUC Arbeid Info InfoFacade Database

Plattformspesifikk modell (PSM) Grunn-entitetene er Ansatt, Prosjekt og Time, med følgende forbindelser: Ved oversettelse til J2EE ved hjelp av modellen fra MDA-boken får vi følgende grovkornede PSM-model: