Kravspesifikasjon
1 Inledning 1.1 Presentasjon Tittel Informasjonsplattform for NorgesGruppen Oppgave Utvikle en informasjonsplattform for butikkene i NorgesGruppen Periode 3. Januar 14. Juni Gruppemedlemmer Joakim Sjögren Magnus Øren Morten Sandberg Magnus Nerland Espen Fossum Prosjektgruppe Gruppe 10 Veileder Weiqin Chen Oppdragsgiver Creuna Norge A/S Kontaktpersoner Joakim Howlid Øystein Eriksen Tore Urnes
Innholdsfortegnelse 1 Innledning... 2 1.1 Presentasjon... 2 2 Forord... 4 3 Om bedriften... 4 4 Kort systembeskrivelse... 4 5 Kort om bakgrunn og formål... 5 6 Funksjonelle krav... 6 6.1 Krav til database... 6 6.2 Importjobb... 6 6.3 Tjenestelaget... 6 6.4 Client/WebServices... 7 6.5 Admingrensesnitt for masterdata... 7 7 Krav til dokumentasjon... 8 8 Kildehenvisning... 8
2 Forord Dette dokumentet er utarbeidet i samarbeid med seniorkonsulentene Tore Urnes, Øystein Eriksen og Rannveig Aarnes fra Creuna og beskriver prosjektets Mål og Rammebetingelser. Hensikten med dokumentet er å sikre bedre styring, kontroll på ressurser og tid og å sikre at begge parter er enige om hvordan platformen skal være. 3 Om bedriften Creuna er et digitalt fullservice byrå med 7 kontorer i skandinavia, hvor administrasjonen holder til på Skøyen i Oslo. I Norge har Creuna omlag 100 ansatte, og på verdens basis er det omlag 300 ansatte. Creuna består av ca. 50% kommunikasjon og 50% teknologi og jobber med det meste innen den digitale verden. De tilbyr tjenester innenfor salg, markedsføring, merkevarebygging og kommunikasjon. (Om Creuna. Hentet 09.01.12 fra http://www.creuna.no/om-creuna) Bedriften har hatt kunder som trafikanten og skatteetaten, og en av de mange nåværende kundene er NorgesGruppen hvor de utvikler nettsideløsninger for NorgesGruppens butikker. Creuna administrerer også all digital data for NorgesGruppen. 4 Kort systembeskrivelse Systemet skal hente informasjon fra xml-dokumenter som blir publisert av NorgesGruppen. Hvert xml-dokument representerer en butikk, og inneholder informasjon om blandt annet kjede, åpningstider osv.. Dataen fra xml-dokumentene skal hentes ut av xml-dokumentene med en importjobb. Dataen skal så igjennom tjenestelaget som legger dataen i riktige tabeller i sql-databasen ut fra atributtene til objektene. Tjenestelaget kan legge inn, oppdatere, slette og hente(crud) data fra databasen. Tjenestelaget vil dermed gjøre dataen tilgjengelig for en webservice, slik at informasjonen kan benyttes av web-applikasjoner. Se figur 1. Det skal også være mulig å manuelt legge inn informasjon i databasen gjennom et administrasjonsgrensesnitt.
Xml feed Importjobb Web-service Web/ Mobilapplikasjon Tjenestelag CRUD Database Figur 1, dataflyt i systemet 5 Kort om bakgrunn og formål Creuna har i lenger tid ønsket å utvikle en master-database som vil innholde informasjon fra alle butikker i NorgesGruppen. NorgesGruppen eier over 3000 butikker. Det eksisterer ikke en enkel løsning for å hente ut informasjon. Informasjon sendt fra NGs server til en CMS server i XML-format Det er vanskelig å hente ut spesifikk informasjon fra mappene. Det er derfor ønskelig at det blir utviklet en master-database for alle butikker i NG. Databasen skal gjøre det enklere for NorgesGruppen og Creuna å hente ut informasjon om de forskjellige butikkene. Informasjonen kan så enklere brukes i sammenheng med utvikling av nye applikasjoner eller web-tjenester. For å kunne lagre dataen i DB-en må det oversettes fra XMLformatet. Da må det utvikles et oversettelsesprogram, og programmet skal periodisk oppdateres ettersom det ofte skjer oppdatering i NG-butikkenes databaser. Web-tjenester som kan tilby bruker nyttig informasjon som avstand og retning til nærmeste butikk, butikkens åpningstider, hvilke tjenester butikken tilbyr etc.
6 Funksjonelle krav 6.1 Krav til database En sql-database hvor en skal kunne lagre dataen sendt fra tjenestelaget og administrasjonsgrensesnittet. Det skal være mulig å lese, skrive, slette og oppdatere data. Krav P 1-5 Kommentar Design 1 Implementasjon 1 Slettemerking av masterdata 1 Alle feed data lagres 1 Tjenester som ikke er i feed 2 Spesielle åpningstider 3 Syntetiske nøkkler 1 6.2 Importjobb Et program som henter data fra xml-dokumentene, parser og tillegner atributter til dataen. For så å sende det vidre til tjenestalaget. Krav P 1-5 Kommentar Parse feed xml xsd 1 Implementere samtlige aksjoner ( ny slett oppdater) 1 Validering 1 CRUD - ett lag for hele plattformen 1 Enhetstesting 2 Logging (log4net) 1 Beregne lokasjon for butikker basert på adresse 1 6.3 Tjenestelaget En felles plattform for å lese, skrive, oppdatere og slette data i databasen. Bruker spørringer for å interagere med databasen. Får data fra importjobb og sender data til webservice. Krav P 1-5 Kommentar Felles for import og Web services 1 Hent gitt butikk 2 Hent alle butikker for kjede 2 Alle lagre/oppdater/slett rutiner 1 Rutiner for butikktjenester 3 Hent nærmeste butikk for gitt lokasjon 1
6.4 Client/WebServices Tjeneste for å formidle og behandle informasjon fra databasen til web/mobilapplikasjoner. Krav P 1-5 Kommentar Finn nærmeste butikk og vis i kart på mobil 1 Kryssplattform web teknologi HTML5, Jquery Mobile, 1 CSS3 Skaff lokasjon (tast inn/gps/...) 2 WebService som returnerer butikkdata for nærmeste butikk (lokasjon, navn, adresse,åpningstid) 1 6.5 Admingrensesnitt for masterdata Gjør det mulig å manuelt administrere informasjon i databasen. F.eks legge inn data som ikke finnes i xml-dokumentene. Denne delen av oppgaven prioritet 4, og vi har ikke fått konkrete krav.
7 Krav til dokumentasjon Det er krav om å levere en prossessrapport med all informasjon om prosjektets arbeid og produktets uvikling. Derfor skal vi dokumentere alt vi gjør. Dette gjøres i dagbok og ukesrapport. I tillegg skrives det møtereferater til viktige møter. Styringsdokumenter skal også skrives og føres inn i prossessrapporten. Dette for å gjøre prossessen enklere, unngå å gjøre feil, skape trygghet og holde frister. Planlegging er veldig viktig i et så stort prosjekt. Det ferdige produktet skal forklares i en produktrapport. Her skal også testrapport, kildekode og en brukerveiledning vises. Følgende dokumenter skal inngå i prosjektrapporten: Prossessrapport o Arbeidsplan o Fremdriftsplan o Risikoanalyse o Samarbeidsavtale o Avtale om prosjektoppgave o Ev. Ukesrapporter og dagbok Kravspesifikasjon Produktrapport o Testrapport o Brukerveiledning 8 Kildehenvisning (Om Creuna. Hentet 09.01.12 fra http://www.creuna.no/om-creuna)