INF2120 Prosjektoppgave i modellering. Del 1



Like dokumenter
DELLEVERANSE 1 INF2120 V06

DELLEVERANSE 1 INF2120 GRUPPE 12. Jon G. Berentsen Geir A Nilsen Lailuma Arezo

DELLEVERANSE 2 INF2120 GRUPPE 12. Jon G. Berentsen Geir A. Nilsen Lailuma Arezo

INF2120. Gruppe 14. Innlevering 1. Våren Joakim Bjørnstad

DROP 2.

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

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

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

INF2120 Prosjektoppgaven Våren 2006

INF2120 V2005. Gruppe 2 christrc ieronnin kjetimk noushinm sjuros. Trafikanten+ Innlevering

Universitetet i Oslo Institutt for informatikk. Leveranse 2 - inf2120. Gruppe 9. Mads Andre Bergdal Neeru Bhardwaj Saqib Riaz Trond Arne Sørby

DELLEVERANSE 3 INF2120 GRUPPE 12. Jon G. Berentsen Geir A. Nilsen Lailuma Arezo

INF 2120-PROSJEKT: <DROP 2 GRUPPE 7> ATLE WANDSVIK DAMIR NADIC SOHAIL AHMED CHAUDRY LARS ANTHONY LAMPAY FOZIA SAEED

INF 2120 PROSJEKT: <DROP 3 GRUPPE 7> ATLE WANDSVIK DAMIR NEDIC SOHAIL AHMED CHAUDRY LARS ANTHONY MAPOY FOZIA SAEED

Prosjektoppgave INF2120 Våren 2007: Rebusløp

Trafikanten Pluss, delleveranse 2. Gruppe 8 Eivind Hasle Amundsen [eivinha] og Eigil Moe [eigilmo]

Brukerdokumentasjon Prosjekt nr PayEx Logistics

Vanlige spørsmål. GallupPanelet. TNS Panel-app. TNS Juni 2015 v.1.3

Personvernerklæring 1. Innledning 2. Når innhenter vi personlige opplysninger? 3. Hvilken personlig informasjon innhenter vi fra deg?

Vårt system kan kjøres ved å skrive. STUD1 konto fredo 37 (holdeplass)

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

ANORDNING, SYSTEM OG FREMGANGSMÅTE FOR REGISTRERING OG AUTENTISERING AV HÅNDSKREVNE SIGNATURER OG ARKIVERING AV HÅNDSKREVEN INFORMASJON

Brukermanual GPS-tracker til hund og katt

Slå på eller av webdiskusjoner

To-faktor autentisering i Bane NOR

EasyParks Personvernerklæring

Brukerveiledning. For administrering av nettressursen BRUKERVEILEDNING ADMINISTRATOR

Brukerveiledning. Legge til brukere... 2

Dette heftet er produsert av Fronter as Heftet kan kun kopieres eller distribueres elektronisk ifølge kontrakt eller avtale med

Elsmart Brukerveiledning Nettmelding for Installatører

Bruker manual Kompis 2. Kompis 2 bruker manual V TAIL IT TECHNOLOGIES Håkon Magnussons gate 8

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

Introduksjon til. For studenter ved NTNU

Lærebok. Opplæring i CuraGuard. CuraGuard Opplæringsbok, - utviklet av SeniorSaken -

Mobile anvendelser 2010

Hvordan bruker du

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

Honda Maris Pay & Go. Personvernerklæring og policy for informasjonskapsler

Innledning. Det geniale med GEOREG er at systemet er fullstendig automatisert,

Klargjør for dashbord i it s learning

Rollebasert tilgangskontroll i TakeCargo WEB (RBAC Role Based Access Controll)

PBL Barnehageweb. Brukerveiledning

UML 1. Use case drevet analyse og design Kirsten Ribu

CabinWeb BRUKERDOKUMENTASJON ET SYSTEM UTVIKLET AV DELFI DATA

BRUKSANVISNING. Lad din MOVER i minimum 8 timer eller til det røde lyset på enheten slukkes. Enheter tar ikke skade hvis den lades mer.

BRUKERDOKUMENTASJON. SMS-kommunikasjon VERSJON 1 ( )

Om DEFA Link. Full kontroll på bilen og DEFA bilvarme med mobilen.

Veiledning Voksenopplæringsundersøkelsen

Brukerveiledning - foreldreundersøkelsen

Visma Flyt skole. SMS modul / Meldinger /Epost. 1 SMS og Meldinger, sist oppdatert Visma Flyt Skole

Brukermanual Tail it+ Tail it brukermanual V TAIL IT TECHNOLOGIES Håkon Magnussons gate 8

F A G B O K F O R L A G E T S E - P O R T A L


Generell brukerveiledning for Elevportalen

Bachelorprosjekt 2015

Bruksanvisning. Bruksanvisning. Käyttöohje FIN. Brugsanvisning. User Manual. Gebruikershandleiding. DEFA SilentAlarm

Canon Self-Service. Komme i gang-veiledning. En veiledning som hjelper deg med å registrere og begynne å bruke Canons Self-Service-portal på nettet

Enkel veiledning for: GSM key3+

Distribusjon av varslinger

KRAVSPESIFIKASJON FOR SOSIORAMA

Honda MaRIS Pay & Go. Personvernerklæring og policy for informasjonskapsler

Jobbkø. Innhold. Versjon 1.0 Copyright Aditro Side 1 av 18

Universitetet i Oslo Institutt for informatikk. Eskild Busch. UML hefte

Personvernerklæring for Foreningen Grunnloven 112

SMS-påminning. Bakgrunn SMS-påminnelse er et tiltak for å øke fremmøteprosenten for planlagte konsultasjoner.

hypernet Kommunikasjon Brukermanual

Veiledning for elektronisk registrering

UKE 11 UML modellering og use case. Gruppetime INF1055

Brukerveiledning for kontaktpersoner i kommuner og fylkeskommuner

2. Hvordan administrere filer / legge ved dokumentasjon til kurs? Hvordan melde av en som er påmeldt endre opplysninger?..5

Produktrapport Gruppe 9

ProMed. Brukermanual for installasjon og bruk av mobiltelefon eller SMS og nett for sending av SMS direkte fra. for Windows

Installasjonsveiledning. Datek Lysstyring. Versjon 1.3

Bruker manual Gator 3. Gator 3 bruker manual V TAIL IT TECHNOLOGIES Håkon Magnussons gate 8

Brukerveiledning for Vesuv

VERSJON 5.1/5.2 HURTIGREFERANSE FOR WEBACCESS JAVA

BEHANDLING AV PERSONOPPLYSNINGER VED BRUK AV GATOR-KLOKKE

3.3 Case 3: Opprette en bruker Case 4: Endre en bruker... 8

Versjon /10. Xerox ColorQube 9301/9302/9303 Internett-tjenester

Entobutikk 3.TESTRAPPORT VÅR 2011

Brukerveiledning Webline Portal for E-post Bedrift/E-post Basis

Ingen investeringskostnader Ingen risiko Ingen bindinger eller forpliktelser Løpende oversikt over status Enkel håndtering av nye poster

Innledning. Det geniale med GEOREG er at systemet er fullstendig automatisert,

Hvordan publisere bilder i galleriet til Norsk lundehund klubb

Huldt & Lillevik Ansattportal. Installere systemet

Brukermanual. gostudyit.com

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Lotus Traveler - Manual for installasjon

Brukermanual for administrasjonsverktøy Gruppe: 08-03

Trafikanten + Innlevering oblig 1 INF2120 Våren Versjon 1

Kom i gang med Spybike Spylamp 2 (Baklykt med GPS-sporing)

2 Om statiske variable/konstanter og statiske metoder.

Brukerveiledning LagerMester ios

Brukerdokumentasjon for Agresso Employee

NetCom Trådløs Bedrift Mobil Sekretær. Brukerveiledning

Enkel Brukerveiledning for Unitracker 2

Installasjonsveiledning. Datek Lysstyring AX9

Trinn 1. Kopier kildefilen.

Transkript:

INF2120 Prosjektoppgave i modellering Del 1 Håkon Ulvestad haakonu@ifi.uio.no Jonas Winje jonaw@ifi.uio.no Amaia Santacoloma amaiac@ifi.uio.no Rakel Johnsen rakelj@ifi.uio.no Våren 2006

Innledning Prosjektoppgaven dreier seg om å utvikle et privat overvåkningssystem som kan brukes ved hjelp av mobiltelefon og datamaskin. Basaltjenesten inkluderer å melde seg av og på tjenesten via sms, og at brukeren kan se hvor han er i verden via Google Earth på en datamaskin. Videre har vi valgt å legge vekt på sms-tjenester, selv om det godt kan tenkes at vi vil se nærmere på andre muligheter i forbindelse med Google Earth i neste del av oppgaven. Vi vil først beskrive systemets funksjonalitet på et overordnet plan ved hjelp av et use-case diagram med tilhørende beskrivelse. Videre vil vi forklare detaljene og systemets interne deler mer inngående ved hjelp av composite structure diagrammer, klassediagrammer og sekvensdiagrammer. Når det gjelder PATS og posisjonering er vi klar over at vi ikke kan posisjonere brukere for ofte og konstant, selv om tjenestene vi inkluderer kan få det til å fremstå slik. Vi forutsetter også at PATS posisjonerer nøyaktig, selv om vi vet at dette ikke er tilfelle. Dette gjelder spesielt for tjenestene som innebærer varsling om man er i nærheten av en annen bruker etc. Det er stor forskjell på om man er 100 eller 1000 meter unna kompisen sin en lørdag ute på byen, men vi velger å ikke ta eventuelle feilposisjoneringer med i betraktningen. Andre spesielle forutsetninger vil nevnes der det føles naturlig. Vi har valgt å bruke engelsk tekst i alle diagrammmer, men norsk ellers i beskrivelsene. Noe blanding må derfor påregnes.

Use-case diagram MobUser MobUser er brukeren av systemet. Brukeren vil stort sett kommunisere med systemet via mobiltelefon, men for å benytte enkelte tjenester vil brukeren også benytte en datamaskin. Sign up as member Brukeren melder seg på tjenesten ved å sende en sms til 2034. Denne meldingen inneholder blant annet ønsket brukernavn. Dersom mobilnummeret allerede er registrert i systemet eller ønsket brukernavn er opptatt vil brukeren få en sms om dette tilbake. Tilsvarende vil han få en sms med bekreftelse dersom registreringen går i orden. Add person to buddy list Når brukeren har meldt seg på tjenesten kan han lage en buddylist. For å legge til en person i buddylisten sender han en melding til 2034 med buddyens mobilnummer. Dersom buddyen ikke er registrert som bruker av systemet vil han motta en sms med en invitasjon til å registrere seg. Dersom han er registrert bruker vil han få beskjed om hvem som har lagt han til som buddy. All videre funksjonalitet som omfatter buddyer forutsetter at buddyen også har lagt brukeren til som sin buddy, slik at buddyforholdet er gjensidig. Brukeren vil få en bekreftelse på sms hvis buddyforholdet blir gjensidig. Det følger naturlig at funksjonaliteten vil utvides slik at man også kan fjerne en buddy fra sin buddylist.

Add hotspot Brukeren kan lagre spesielle steder som hotspots. Dette gjøres ved å sende en melding til 2034, hvor navnet på hotspoten samt eventuelle koordinater oppgis. Dersom koordinater ikke oppgis vil systemet sette koordinatene, og dermed hotspoten, til det stedet brukeren befinner seg når han sender meldingen. Brukeren vil få en bekreftelse på sms om at hotspoten er lagret dersom ikke navnet på hotspoten eller koordinatene er lagret fra før. I så fall vil han få beskjed om dette. Det følger naturlig at funksjonaliteten vil utvides slik at man også kan fjerne hotspots. Add dynamic hotspot En dynamisk hotspot er en blanding av en buddy og en vanlig hotspot, altså en ting som beveger seg. Dette kan for eksempel være buss, trikk, danskebåten, romskip eller lignende. Vi vet lite om hvordan disse identifiserer og posisjonerer seg, men vi går ut i fra at de er tilknyttet noe som tilsvarer et mobiltelefonnummer. For å lagre en dynamisk hotspot sender brukeren en melding til 2034 med navnet til den dynamiske hotspoten samt identifikator for denne. Også her følger det naturlig at dynamiske hotspots skal kunne fjernes. Warn if close to buddy or hotspot Dersom brukeren ønsker å varsles hver gang han er i nærheten av en buddy eller en statisk/dynamisk hotspot sender han en melding til 2034 og ber om dette. Brukeren, buddyer og hotspots vil da posisjoneres jevnlig, og systemet vil sende brukeren en sms for hver buddy eller hotspot han er i nærheten av. Hvilken avstand som skal tilsvare "i nærheten" har vi ikke avgjort enda, men det vil nok dreie seg om 100-200 meter. Funksjonen kan tenkes utvides til at brukeren selv spesifiserer denne verdien, og at han kan velge å varsles kun om han er i nærheten av dynamiske hotspots (utelate buddyer og statiske hotspots, og omvendt), eller spesifiserte buddies/hotspots. Stop warn Dersom brukeren vil skru av varslingen må han sende en sms hvor han gir beskjed om dette. Bekreftelse vil gis på sms, eventuelt en feilmelding om varslingsfunskjonen ikke var aktivert i utgangspunktet. Find distance to buddy or hotspot Brukeren kan finne ut hvor langt unna og i hvilken himmelretning en buddy eller hotspot befinner seg ved å sende en sms med navnet til buddyen eller hotspoten til 2034 og be om dette. Svaret gis via sms, og brukeren kan foreløpig ikke sende mer enn en forespørsel per sms. Position with Google Earth Brukeren kan be om å få se sin posisjon i verden via Google Earth ved å sende en sms med ønske om dette til 2034. Posisjoneringssystemet vil generere en fil som sier noe om posisjoneringen, og brukeren må sette Google Earth til å lese denne fila. I første omgang er det jo vi som er utviklere av systemet som er brukere, og denne fila kan lagres lokalt på datamaskinen(e) som kjører systemet. Etter hvert bør det genereres en unik url for hver fil tilknyttet en bruker, slik at man kan bruke tjenesten på hvilken datamaskin som helst. Da vil brukeren få en sms i retur hvor denne url en er spesifisert. Sign off service Brukeren kan melde seg av tjenesten og slette sine opplysninger ved å sende en sms til 2034. Bekreftelse på vellykket sletting gis via sms, det samme med eventuelle feilmeldinger (hvis mobilnummeret for eksempel aldri er registrert).

Klassediagram Positioning System er beskrevet i 3 ulike nivåer. På det høyeste nivået er den i kontakt med både PATS laben og GoogleEarth. På neste nivå har systemet en Controller enhet som består av tre andre enheter: - UserController administrerer det som har med brukerne å gjøre. - BuddyController holder rede på brukeren sine buddies. - HotspotController tar vare på dynamiske og statiske hotspots. På siste nivå har vi brukerne, buddies og hotspots: MobUser er klassen som definerer brukerne. Disse blir identifisert gjennom navn og telefonnummer. I tillegg har de ett atributt for x og y koordinatene. Buddy klassen har en peker til en bruker, siden hver buddy må være registrert i systemet som bruker også. Hotspotsene vil bli behandlet som statiske eller dynamiske. Forskjellen ligger på atributtet phonenr. Dersom denne er null, vil den bli behandlet som statisk, siden enhver dynamisk hotspot krever bruk av en mobiltelefon. Statiske hotspots har da faste koordinater, mens dynamiske hotspots sine koordinater blir skrevet om. En hotspot blir identifisert gjennom navn og evt koordinatene.

Composite Structure diagram System (nivå I) Viser hvilke deler i hele systemet (ikke bare delen vi lager) som kommuniserer med hvilke. Brukeren, MobUser, sender og mottar meldinger fra PositioningSystem, og kan bruke Google Earth for å sjekke posisjonen sin. PositioningSystem bruker PATS for å posisjonere brukere, og skriver filer "til" (som leses av) Google Earth. PositioningSystem (nivå II) Controller har kontakt med delene utenfor PositioningSystem, og de andre Controller-klassene. Controller delegerer oppgaver videre til MobUser-, Buddy- og HotSpotController.

Sekvensdiagrammer sd SignUp MobUser (brukeren) sender en melding til PositioningSystem for å melde seg på tjenesten. Dersom registreringen går i orden får brukeren bekreftelse på dette via sms. Dersom telefonnummeret allerede er registrert får han beskjed om dette via sms. Dersom brukernavnet er opptatt får han beskjed om dette via sms. sd PS_SignUp Controller ber MobUserController om å opprette en ny bruker. MobUserController bekrefter eller gir feilmelding.

Sd SignOff MobUser (brukeren) sender en melding til PositioningSystem for å melde seg av tjenesten. Dersom registreringen går i orden får brukeren bekreftelse på dette via sms. Dersom telefonnummeret ikke er registrert som medlem brukeren beskjed om dette via sms. Sd PS_SignOff Controller ber MobUserController om å slette en bruker. MobUserController bekrefter eller gir feilmelding.

sd AddBuddy MobUser legger til en person i buddylisten ved å sende en melding til PositioningSystem med buddyens mobilnummer. Dersom Buddyen er registrert bruker og har lagt til MobUser som sin buddy vil han få beskjed om hvem som har lagt han til som buddy. MobUser vil få bekreftelse på sms om at buddyen er lagt til. Dersom Buddyen er registrert bruker men ikke har MobUser som buddy, vil han få beskjed om hvem som har lagt han til som buddy. MobUser vil få beksjed på sms om at buddyforholdet ikke er gjensidig. Dersom buddyen ikke er registrert som bruker av systemet (PotentialUser) vil han motta en sms med en invitasjon til å registrere seg. MobUser vil motta en sms med beskjed om at PotentialUser har blitt invitert.

sd PS_AddBuddy Controller sjekker med MobUserController om brukeren er registrert. Dersom brukeren er registrert sjekker Controller med BuddyController om det eksisterer et forhold mellom MobUser og Buddyen fra før. Hvis dette finnes fullføres forholdet til et gjensidig buddyforhold. Hvis ikke settes buddyen på hold til han eventuelt legger til MobUser som sin buddy.

sd AddHotSpot Brukeren sender sms til posisjoneringssystemet og ber om å få lagt til en hotspot. Dersom brukeren inkluderer koordinater, vil hotspot bli lagt til med disse. Hvis koordinater ikke inkluderes vil posisjoneringssystemet be PATS om å posisjonere brukeren og hotspot vil bli lagt til med disse koordinatene. sd PS_AddHotSpot Controller mottar meldingen fra brukeren og ber HotSpotController opprette en ny hotspot HotSpotController sjekker med PATS hvor bruker befinner seg hvis brukeren ikke har angitt koordinater i meldingen, oppretter en ny HotSpot og sender denne tilbake til Controller. Controller ber MobUserController legge til denne HotSpoten for denne brukeren.

sd AddDynamicHotSpot Brukeren sender sms til Posisjoneringssystemet med telefonnummer til et dynamisk hotspot og får bekreftelse eller feilmelding tilbake. sd PS_AddDynamicHotSpot Controller mottar meldingen fra brukeren og ber HotSpotController lage en ny dynamisk HotSpot. HotSpotController sender hotspot eller feilmelding tilbake til controller. Controller ber deretter MobUserController om å legge til denne hotspoten for brukeren. Tilbakemelding sendes til bruker.

sd CloseToBuddyOrHotspot Brukeren sender melding om at han/hun vil advares hvis hun er innenfor rekkevidde av buddies eller hotspots. Systemet vil da gjevnlig posisjonere brukeren og søke igjennom (posisjonere om nødvendig) posisjonene til buddies og hotspots for å sjekke om avstanden fra brukeren til denne er mindre enn en gitt radius. Brukeren vil få en sms per buddy/hotspot som er innen rekkevidde.

sd PS_CloseToBuddyOrHotspot Brukeren ber systemet varsle dersom den nærmer seg en buddy eller en hotspot. Controlleren mottar meldingen, som videresender meldingen til UserController. Denne ber PATS om koordinatene til brukeren, som blir stadig oppdatert og sendt til UserController, som sender dem tilbake til Controlleren. Controlleren gir også beskjed til BuddyController om å be PATS om koordinatene til brukerens buddier. Controlleren mottar koordinatene til buddiene også. Dersom koordinatene til brukeren og en av buddiene er nærmere en viss avstand, får brukeren en varsling om det. Stort sett det samme gjelder for hotspotsene. Controlleren gir beskjed til HotspotController om å be PATS om koordinatene til hotspotsene. Dersom det dreier seg om dynamiske hotspot ber HotSpotController PATS om å spore disse. Koordinatene til hotspotsene blir sendt til Controller, som igjen sammenligner dem med brukeren sine koordinater og eventuelt varsler brukeren hvis den nærmer seg en hotspot.

sd StopWarn Brukeren sender melding om at han/hun ikke lenger vil ha advarsel om buddies/hotspots er innen rekkevidde og mottar bekreftelse eller feilmelding. sd PS_StopWarn Brukeren ber systemet slutte å varsle om nærme buddies eller hotspots. Systemet mottar meldingen i Controller, som sender med mobilnummeret til UserController og ber om å avslutte loopen. Dersom varsling ikke var aktivert får brukeren beskjed om det, ellers får den bekreftelse på at varsling nå er av.

sd DistanceTo Brukeren sender sms til posisjoneringssystemet og ber om å få vite hvor en buddy/hotspot befinner seg i forhold til seg selv. Systemet vil da be PATS om å posisjonere brukeren. Hvis det dreier seg om en buddy vil så systemet be PATS om å posisjonere denne og. For hotspots trengs posisjonering kun hvis det dreier seg om dynamiske hotspots. Brukeren vil så få tilbakemelding med koordinatene og himmelretningen (i forhold til brukeren) til buddy/hotspot.

sd GoogleEarthPositioning Hvis brukeren ønsker å se posisjoneringen i systemet i GoogleEarth, må han/hun sende en sms til posisjoneringssystemet som ber PATS spore brukeren. Systemet vil så skrive en fil som GoogleEarth kan lese og returnere denne til brukeren på sms. Brukeren kan så be GoogleEarth om å lese denne filen (fra serveren hvor posisjoneringssystemet kjører) som så vil vise posisjoneringen eller gi feilmelding.