FORPROSJEKTRAPPORT FOR ENTOBUTIKK VÅR 2011 LAGET AV GRUPPE 02 1
INNHOLDSFORTEGNELSE PRESENTASJON 03 SAMMENDRAG 04 BEDRIFT 05 Om bedriften 05 Dagens situasjon 05 MÅL OG RAMMEBETINGELSER 06 Funksjonalitet 06-07 Generelle mål 07 Rammebetingelser 07 KRAVSPESIFIKASJON 08 Funksjonelle krav 08-09 Ikke funksjonelle krav 09 Øvrige krav 10 LØSNINGER/ALTERNATIVER 10 ANALYSE AV VIRKNINGER 11 KRITISKE SUKSESSFAKTORER 12 Godkjenning av løsningsdesign 12 Sette av tilstrekkelig tid/ressurser 12 God kommunikasjon med oppdragsgiver/veiledere 12-13 Godt samhold i gruppa 13 ORGANISERING 13-14 KONKLUSJON 15 Arbeidsplan Fremdriftsplan 2
PRESENTASJON Tittel: Oppgave: entobutikk Utvikle en nettbutikk som har god funksjonalitet og er meget brukervennlig for kunder, gjester og administrasjon. Prosjektperiode: 1.desember 31. mai 2011 Gruppemedlemmer: Gruppenummer: 02 Madia Kalsoom (s153424) Sawen Mohammad Ahmed (s156163) Anzor Aslambekovitsj Akhmiev (s156146) Mariam Bourass (s153446) Veileder: Kirsten Ribu, Førstelektor Oppdragsgiver: entobutikk.no Kontaktperson: Khuram Ali Asif Epost: kontakt@entobutikk.no Mobil: 414 51 381 Sted og dato: 10.jan 2011 Signatur: Madia Kalsoom Sawen Mohammad Ahmed Anzor Aslambekovitsj Akhmiev Mariam Bourass 3
SAMMENDRAG Dette dokumentet tar for seg forprosjektrapport for Entobutikk, ved prosjektgruppe 2011-02 ved Høgskolen i Oslo, ingeniørutdanning. Formålet er å skaffe oss en grov oversikt over hva problemområdet er, hva målene i prosjektet er, rammebetingelsene og retningslinjer for gruppa. Noen av temaene som blir tatt opp er beskrivelse av selve oppgaven vi skal jobbe med, en arbeidsplan, fremdriftsplan over hva som kommer til skje fremover. Vi skal også komme inn på hvilke faktorer som kan påvirke prosjektarbeidet. Etter å ha lest denne forprosjektrapporten skal både prosjektgruppa, intern veileder og oppdragsgiver være samstemte om hva prosjektet går ut på, og også hva som kommer til å skje videre i prosjektperioden. 4
BEDRIFT OM BEDRIFTEN Entobutikk er en privateid og familiedrevet nettbutikk som selger produkter innenfor data, helse og velvære. Bedriften importerer varene direkte fra fabrikker i Asia, spesielt fra Kina. Deres hovedfokus er høy kvalitet produkter med gode priser, og god service til hver enkelt kunde. Entobutikk har sterkt fokus på kundene, og derfor har de 100% fornøyde kunder. De har 14 dagers returrett/åpenkjøp. Alle produktene selges med 1 års fabrikk garanti. Ved reklamasjoner bytter entobutikk varen(e) eller returner pengene etter kundens ønske. DAGENS SITUASJON Per i dag benytter bedriften en eksisterende nettside for å selge produktene sine. Denne nettsiden viser alle produkter og produktbeskrivelse, samt at man har mulighet til å kjøpe dem. Nettsiden er kodet med enkel html-kode. Men den mangler enkelte funksjoner og løsninger som kunne ha gjort det bedre for både kunder og administrator, som f. eks innloggingsrutiner, layout, brukervennlighet, handlekurv og historikk. Vår løsning vil bli en bedre og komplett nettbutikk for bedriften med flere funksjoner for kunder og administrator. Gruppen skal lage en enkel og brukervennlig nettside som er lettere å bruke/lese og oppdatere. Her får kunder mulighet til å se/endre på sin historikk og personlige opplysninger. Administrator skal få kunne oppdatere siden, få oversikt over produkter og kunder uten at vedkommende må kunne programmering. Vi skal finne en mer avansert løsning enn den nåværende, med hensyn på brukervennlighet, sikkerhet, brukergrensesnitt, og med flere funksjoner enn den nåværende nettbutikk tilbyr. 5
MÅL OG RAMMEBETINGELSER Målet med oppgaven er å utvikle en profesjonell nettbutikk som kan gi flere og nye muligheter til kunder, administrasjon og gjester. Løsningen vår skal ha hensiktsmessig brukergrensesnitt slik at det blir så enkelt som mulig å bruke det. I og med ingen i bedriften kan avansert programmering, skal ikke løsningen kreve noen forkunnskaper innen for programmering eller avansert databruk. Entobutikk vil dele produktene sine i kategorier, slik at det blir enklere for dem å registrere et nytt produkt i en kategori. Admin skal kunne lagre ordre til en kunde, skrive ut kvittering av ordre i etikett, denne funksjonen skal være integrert i nettbutikken. Oppdragsgiveren vil også ha en søkemotor i nettbutikken for Admin som gir muligheten til å søke alt innen nettbutikken sånn som kunde, dato, produkt og produktnøkkel(id). Entobutikk krever også at løsningen skal regne ut moms på alle prisene til produktene automatisk når Admin legger det inn ut på nettbutikken. Når man kjøper et produkt skal også momsgrunnlaget vises på kvitteringen. FUNKSJONALITET Slik skal funksjonene til administrasjon, kunder, gjester, kategorier og produkter være: Admin - Admin skal ha eget grensesnitt som skal være enkel samtidig skal den administrere produkter, kategorier, kunder og bilder. - Admin skal også få tilgang til ordrehistorikk til hver enkelt kunde samt mulighet til å slette en ordre og lage en ordre. - Admin skal ha sitt eget logginnfunksjon. - Skrive ut kvittering av en ordre i en etikett. Kunder - Registrere seg for å bli kunde, legge til et eller flere produkter i handlekurv, slette/fjerne produkter fra handlekurv og kjøpe produkter ved å betale. - Endre personlige opplysninger når som helst, en hver endring må registreres i databasen. - Skal ha egen logginnfunksjon. 6
Gjester/anonyme - Lese aktuelle nyheter på hovedsidene, bla i produkter. - Får mulighet til å legge til produkter i handlekurven, slette og kjøpe produkter ved å betale. - Trenger ikke å registrere seg. Produkter - Registreres, endres og legges inn i database av Admin. - Hvert produkt skal få unik ID(tall) som man kan brukes til å legge, slette og endre produktet. - Alle produkter skal ha minst en kategori. Kategori - Registreres, endres og legges inn i database av Admin. - Hver kategori skal få unik ID(tall) som man kan brukes til å legge, slette og endre kategorien. - Alle kategorier skal ha minste et produkt. GENERELLE MÅL Tittel på nettbutikk skal være i rød skrift og bokstavene i tittel skal være små etter ønske fra oppdragsgiver. Alle registreringer og endringer skal registreres i databasen. All kode skal dokumenteres skikkelig for videreutvikling av nettbutikken. Lage forståelige og lett lesbare instruksjoner. Få til nesten alle funksjonene til å fungere. RAMMEBETINGELSER Applikasjonen skal kobles opp mot en Sql server, som også støtter.net. Løsningen skal implementeres i ASP.Net. Det skal være mulig å kjøre løsningen fra skolens server og oppdragsgivers server. 7
Løsningen må kunne hvert fall kjøres i Internet Explorer, Mozilla Firefox og Netscape. KRAVSPESIFIKASJON Denne kravspesifikasjonen beskriver de tekniske og funksjonelle kravene som nettbutikken "Entobutikk" skal inneholde. Her lister vi opp følgende krav: FUNKSJONELLE KRAV Slik skal funksjonene til administrasjon, kunder, gjester, kategorier og produkter være: Admin - Skal ha eget grensesnitt som skal være enkel å bruke. - Administrere produkter, kategorier, kunder og bilder. - Ha tilgang til ordreliste. - Ha tilgang til ordrehistorikk. - Slette en ordre. - Lage en ordre. - Ha eget logginnfunksjon. - Skrive ut kvittering av en ordre i en etikett. - Får adgang til å redigere FAQ. Kunder - Registrere seg for å bli kunde. - Legge til et eller flere produkter i handlekurven. - Slette produkter fra handlekurven. - Kjøpe produkter ved å betale. - Endre personlige opplysninger. - Ha egen logginn funksjon. - Se sin egen ordrehistorikk. - Ha tilgang til å se produkter og deres beskrivelse. 8
Gjester/anonyme - Lese aktuelle nyheter på hovedsiden. - Ha tilgang til å se produkter og deres beskrivelse. - Legge til et eller flere produkter i handlekurven. - Slette produkter fra handlekurven. - Kjøpe produkter ved å betale. - Trenger ikke å registrere seg. Produkter - Registreres, endres og legges inn i database av Admin. - Hvert produkt skal få unik ID(tall). - IDen skal brukes til å legge, slette og endre produktet i databasen. - Alle produkter skal ha minst en kategori. Kategori - Registreres, endres og legges inn i database av Admin. - Hver kategori skal få unik ID(tall). - Iden skal brukes til å legge, slette og endre kategorien i databasen. - Alle kategorier skal ha minste et produkt. IKKE FUNKSJONELLE KRAV Applikasjonen skal kobles opp mot en Sql server, som også støtter.net. Løsningen skal implementeres i ASP.Net. Det skal være mulig å kjøre løsningen fra skolens server og oppdragsgivers server. Løsningen må kunne hvert fall kjøres i Internet Explorer, Mozilla Firefox og Netscape. Man skal ikke være avhengig av spesialisert programvare eller maskinvare for å få tilgang til nettbutikken. Alt som kodes i XHTML skal kunne valideres på http://www.w3.org. 9
ØVRIGE KRAV Kontrasten mellom tekst og bakgrunn skal være bra, sånn at det ikke er vanskelig å lese teksten som er skrevet. Fargetemaet på nettsiden skal ikke være for lys eller for mørk. Tittel på nettbutikk skal være i rød skrift etter ønske fra oppdragsgiver. Alle registreringer og endringer skal registreres i databasen. Tre-klikksregelen skal følges. Man skal aldri måtte klikke mer enn tre ganger for å finne informasjonen man er ute etter. LØSNINGER/ALTERNATIVER Utviklingsprogram: Visual Studio 2010, php Expression silverlight, Expression studio 4. Programmeringsspråk: ASP.Net/c#, HTML, CSS. Database: MySQL. Andre programmer: Office pakke, photoshop, paint, Snagit. Gruppen har friheten til å velge selv fremgangsmåten og programmering språket. Valget stod mellom PHP og ASP.Net. Ut fra erfaringene og etter flere diskusjoner i gruppen bestemte vi oss for å velge ASP.Net og MySQL. Vi har tenkt til å bruker vanlig html, ASP.Net/C#, CSS og mysql database for å utvikle systemet. Disse verktøyene gjør det mulig å lage en funksjonell og brukervennlig nettbutikk for brukerne. 10
ANALYSE AV VIRKNINGER Her setter vi opp en tabell over punktene vi fokuserte på, når vi skulle ta valget mellom hvilken teknologi/ programmeringsspråk vi ønsket å ta i bruk. Teknologi / programmeringsspråk Fordeler Ulemper PHP - populær (med tanke på videreutvikling) - enkel å lære ASP.Net - stor etterspørsel i arbeidslivet - fleste nettleser støtter det - alle i gruppen kjenner til språket - mest brukte komponenter er ferdiglagde - dynamisk C# - ligner litt på java (som vi har hatt tidligere) - sammen med.net kan det bli bra verktøy for webapplikasjoner Visual Studio 2010 - innebygget webserver og er veldig bra for å utvikle webapplikasjoner - fint og brukervennlig brukergrensesnitt - lite kjennskap og kunnskap - - ikke så mye kjent - kan bli litt vanskelig underveis - kan henge opp iblant 11
KRITISKE SUKSESSFAKTORER Suksessfaktorer i denne sammenheng beskriver punkter i prosjektprosessen som er kritisk avgjørende for at prosjektets gjennomførelse skal bli vellykket eller ikke. Grunnen til at vi påpeker slike faktorer, er så vi kan ta forbehold og forhåpentligvis sørge for at prosjektet vil lykkes og bli gjennomført. Det første som må gjøres er å identifisere suksessfaktorene og vurdere hvor stor sannsynligheten er for at de skal inntreffe. GODKJENNING AV LØSNINGSDESIGN En av faktorene for at prosjektgruppen vår kan fortsette videre med prosjektet, er at oppdragsgiver (entobutikk) godkjenner løsningsdesignet som vi etter hvert vil levere. Dette er viktig slik at vi kan fortsette med prosjektet og komme i gang med å konstruere en prototype av løsningen vår. Prototypen vil igjen være med på å statuere resultatet av gruppas prosjektoppgave. Her må vi også tenke på at det er oppdragsgiver som sitter med kapitalen som er disponibel for gruppa for å kjøpe inn komponenter og annet nødvendig materiale. For å unngå at vi ikke får godkjent løsningen vår, må alle medlemmene av gruppa bruke de kunnskapene vi har lært i de ulike fagene vi har hatt i løpet av totalt tre studieår. SETTE AV TILSTREKKELIG MED TID OG RESURSER Det er viktig for gruppen at det settes av tilstrekkelig med tid og resurser. Med dette mener vi at vi må ta i betraktning at vi har begrenset tid og vi må disponere den til det fulleste, slik at vi rekker å utføre det vi har satt opp i fremdriftsplanen til de rette tidene. Ukentlige gruppemøter og møter med veileder er gode måter å vite hvor i løypa man er ved at alle er informerte og oppdaterte om statusen til prosjektet. GOD KOMMUNIKASJON MED OPPDRAGSGIVER OG VEILEDERE Det å ha en god kommunikasjon mellom oss i prosjektgruppa og veilederne våre er viktig, slik at ingen av partene opplever eller får negative assosiasjoner med gruppa. Kommunikasjonssvikt kan føre til at prosjektet blir nektet å fortsette, noe som igjen setter alle som er involverte i dårlig lys. 12
Måten vi kan unngå dette er å være pro aktive og være hurtige til å ta kontakt med de nødvendige personene så hurtig som mulig, og også å holde alle parter oppdaterte på hvordan prosjektet ligger an. GODT SAMHOLD I GRUPPA Vi anser det som viktig at gruppa oppfører seg skikkelig og profesjonelt ovenfor oppdragsgiver, veiledere og andre parter gruppa har kontakt med. Et negativ bilde av oss når det kommer til hovedprosjekt er ikke positivt, spesielt ved evaluering. ORGANISERING Her har vi fordelt roller og ansvar i prosjektet vi skal følge: Madia: Leder Ansvarlig for å holde prosjektet på rett kurs, og har avgjørende stemme ved stemmelikhet. Kommunikasjon Ansvarlig for kontinuerlig kommunikasjon mellom oppdragsgiveren og veileder i form av mailkorrespondanse. Avtaler også møter med oppdragsgiver/veileder etter behov. Dokumentasjon Ansvarlig for fullstendig dokumentasjon av prosjektet og at dette følger de fastsatte retningslinjer. Prosjektside Ansvarlig for å holde den oppdatert og fungerende. Tidsregnskap Ansvarlig for å overvåke og følge opp prosjektets tidsbruk. 13
Sawen: Teknisk design Ansvarlig for at utvikling av design blir utlevert fullstendig. Funksjonelt design Ansvarlig for at utvikling av design blir utlevert fullstendig. Skisse Ansvarlig for å lage midlertidige tegninger/design til hele prosjektet. Anzor: Grafikk Ansvarlig for utvikling av grafikken. Kode Ansvarlig for kodestandard og ferdigstillelse. Infrastruktur Ansvarlig for at server er i drift. Mariam: Nestleder Ansvarlig for å styre prosjektet dersom lederen ikke er tilstedet. Testing Ansvarlig for at testing utføres og at kravene til testdokumentasjonen innfris. Admin Design Ansvarlig for Admin sin design og dets ferdigstillelse. Møtereferat Ansvarlig for å få med alle høydeåunker i prosjektet og samt skrive møtereferat. 14
KONKLUSJON Systemet vi skal lage skal føre til at hele salgsprosessen til Entobutikk blir mer automatisert, det vil gjøre lettere og holde oversikt over lagerstatus, ordrehistorikk, produkter og kunder. Denne løsningen vi lager for Entobutikk vil: Hjelpe dem med å holde ting strukturert og oversiktlig. Bygge et bedre kontakt mellom dem og kunder. Kunne lettere oppdatere, legge eller fjerne produkter i database. La Admin ha fullt oversikt over ordrer, historikk og kunder. Gi et nytt utseende med mange nye funksjoner. VEDLEGG 1 ARBEIDSPLAN (under styringsdokumenter) VEDLEGG 2 FREMDRIFTSPLAN (under styringsdokumenter) 15