FORPROSJEKTRAPPORT Tittel Oppgave DataMan for Consafe Logistics Utvikle en klient for PDA med skanner, som skal brukes til datasanking i en logistikkløsning. Prosjektperiode 13.12.2007-12.06.2008 Gruppemedlemmer Thomas Alsén ( s135571), Claus Erik Kirkerud (s135561), Tor- Harald Soløst (s128112) Prosjektgruppe 08-15 Oppdragsiver Veileder Kontaktperson Consafe Logistics AS Ulf Uttersrud Jan Terje Nordlien 1
SAMMENDRAG Prosjektet skal gjennomføres som hovedprosjekt ved HIO, avdeling for ingeniørutdanning, i samarbeid med Consafe Logistics AS. Vi skal utvikle en klient for PDA med skanner, som skal brukes til datasanking i en logistikkløsning. Systemet skal kunne håndtere skanning av plukklister, varetelling, varemottak, varebestilling mm. og skal kommunisere trådløst med en server. Systemet skal utvikles med.net for Windows Mobile. DAGENS SITUASJON Consafe Logistics er en internasjonal bedrift innen mobile og industrielle IT-løsninger. Consafe Logistics har en unik kompetansebredde som dekker hele verdikjeden fra strategisk rådgivning til utvikling av avanserte løsninger med full integrasjon mot kjernesystemer. Consafe Logistics er en bedrift som har spesialisert seg på logistikk løsninger med håndholdte terminaler. De holder til på Hvam, rett utenfor Oslo, og har en stor og internasjonal kundemasse. Dette har gjort at de har en bred kompetanse på dette området. Som utvikler av løsninger for datasanking har Consafe Logistics et produkt, CapDataMan, som benyttes av mange kunder. Dette systemet kjøres på en DOS-terminal av det gamle slaget som tilbyr lite brukervennlighet og er utrangert. Det er derfor behov for et nytt system som kjører på nye og mer moderne terminaler. Andre bedrifter har ingen systemer for elektronisk sanking og bruker derfor fortsatt penn og papir. Det finnes fortsatt overraskende mange av disse, som dermed er store potensielle kunder for ny og rimelig teknologi. MÅL OG RAMMEBETINGELSER Mål Målet med oppgaven er å utvikle en applikasjon for bruk på en moderne PDA-terminal. Applikasjonen skal gjøre logistikken for bedrifter lettere og mer effektiv, samt kunne skreddersys til hver enkelt kunde. Applikasjonen er derfor avhengig av et godt design. Systemet skal: Lages slik at det lett skal kunne utvides, og skreddersys til hver enkelt kunde. Være brukervennlig. 2
Ha mulighet for flere skjermoppløsninger Håndtere skannede strekkoder. Kunne utføre følgende logistikkoppgaver: varetelling, plukke ordre, sjekke lager, returmottak, lokasjonsregistrering, varemottak, varebestilling, ordreopptak, butikkekspedisjon, linking av varenummer, Synkronisere informasjon automatisk og trådløst mot en server. Rammebetingelser Oppdragsgiver ønsker å bruke terminaler basert på Windows Mobile. Det er da mest hensiktsmessig å utvikle applikasjonen i.net Compact Framework. Applikasjonen må lages på en slik måte at den enkelt kan utvides/tilpasses senere. Til kommunikasjon hadde vi mange alternativer å velge mellom. Oppdragsgiver ønsket å prøve ut Microsoft Message Queue (MSMQ), så vi prioriterte dette. Alternativt kunne vi brukt webservices, MSSQL database, eller programmering rett mot socket. Utfordringene lå i at den håndholdte enheten ikke alltid er på nett. Selv om det er trådløst nett (WLAN) i lokalene er det ikke sikkert alle rom er dekket, og det også alltid noen mørke områder. Innsamlet data må derfor ligge å vente til nettkobling er tilstede og så bli sendt til serveren. Kommunikasjonen er en såpass viktig del av applikasjonen at hvis det ikke går blir det katastrofale følger for prosjektet. Den må derfor testes på forhånd. Siden MSMQ var ønsket av oppdragsgiver prioriterte vi testing av denne. Funksjoner for å legge data i kø, detektering av nettverksforbindelse, og transaksjonshåndtering ligger innebygd i den så den ville spare oss for mye arbeid. Vi har satt opp et testmiljø for testing av MSMQ. Vi har lagt et lite program hvor innsamlet data skrives inn, før dette blir sendt videre til køen. Dette blir da lagret på en utgående kø på PDAen, og ligger her og venter til nettforbindelse med serveren er tilstede. Da blir dataene sendt til serveren, hvor vi hadde et program som skrev ut dataene til skjermen. Testingen var vellykket. Siden MSMQ var den ønskede teknologien fra oppdragsgivers side, ble ikke andre teknologier testet. Oppdragsgiver har selv god kjennskap til disse andre teknologiene og ønsket å bruke MSMQ hvis denne fungerte. MSMQ ble derfor valgt. ALTERNATIVER OG LØSNINGER Valget av utviklingsmiljø og språk var i hovedsak avklart på forhånd. Oppdragsgiver bruker fortrinnsvis.net rammeverket til sine nye produkter og ønsket derfor også å få dette prosjektet utviklet på det samme. Valg av språk ble C# siden dette nærmest er standard for utvikling av nye applikasjoner i.net. Alternativt kunne vi brukt andre språk som Visual Basic eller J# men dette er mye mindre brukt og derfor vanskeligere for andre å utvikle videre. PDA-terminalene de ønsker å bruke benytter Windows Mobile, og vi skal derfor utvikle applikasjonen med hensyn på denne plattformen. 3
Når det gjelder versjonsnummer, både på rammeverket og Windows Mobile, står vi i utgangspunktet fritt til velge mellom nyeste og nest nyeste..net versjon 3.5 har akkurat kommet ut, og Windows Mobile har kommet i versjon 6. Oppdragsgivers mening om saken er at det ikke er noe poeng å utvikle nye applikasjoner for gamle teknologier. Men.Net 3.5 og Windows Mobile 6 er såpass nytt, forandringene er ikke veldig store, og vi har ikke noe test-utstyr med Windows Mobile 6, så vi kommer til å starte med å utvikle for.net 2.0 og Windows Mobile 5 for senere eventuelt og oppgradere dette senere. Denne oppgraderingen er ikke regnet som en stor jobb, da kompatibiliteten er nesten 100% Videre vil vi benytte oss av oppdragsgivers eget «utviklingssystem» kalt Duplo. Dette er en mal/template for hvordan applikasjonen skal struktureres og som forenkler byggingen av modulbaserte systemer. Da deles programmet i forskjellige moduler slik at kunder kan kjøpe det de vil ha. Fordi Duplo er et system som oppdragsgiver er vant med å bruke vil dette også forenkle arbeidet med å skreddersy og videreutvikle applikasjonen på en senere tidspunkt. Serverapplikasjonen vil bli skrevet i.net Framework, i tilsvarende versjon som PDAapplikasjonen, for i størst mulig grad å benytte samme teknologi. Når det gjelder lagring på serveren er det i hovedsak to alternativer. Flatfil og XML. Flatfil er rett å slett en enkel tekstfil, med en linje pr melding som blir sendt fra PDAen. Dataene blir i denne laget i et på forhånd avtalt format/rekkefølge som kommaseparerte verdier. Da er det viktig at den som skriver fila og den som leser fila er enige om rekkefølgen og formatet på fila for ikke å gå i surr. Alternativet er å lagre det som XML. Dette er et standard utvekslingsformat av data mellom maskiner og gjør det enklere å vite hva som er hva i dataene, men er litt mer komplisert å kode. For å være mest mulig fleksibel til forskjellige kunder vil vi legge mulighet for både XML og flatfil. Teknologier:.NET Framework og Compact Framework 2.0, Microsoft Message Queue og Windows Mobile 5 Utviklingssprogram: Visual Studio 2008 Team Edition Lagring: Microsoft Message Queue, flatfil / xml Programmeringsspråk: C# Vi har laget en oversikt over systemet slik vi har planlagt så langt (Se figur 1). På PDAen har vi satt opp firelags-arkitektur. Nederst har vi kommunikasjonsdelen. Den består hovedsaklig av MessageQueuen, men den lages slik at MSMQ kan byttes ut med andre overføringsteknologier. Ovenfor finnes DataAccess laget. Det er minimalt med lesing og skriving av filer på PDAen, men tilgangen til scanneren finnes her. Scannerdelen lages slik at den enkelt kan brukes med forskjellige typer scannere med forskjellige drivere. Bussiness-laget håndterer alle forespørslene fra GUIen og kaller på de andre modulene. GUIlaget inneholder alle skjemaene som blir vist for brukeren og lyttere til disse. Server delen av systemet er i dette prosjektet veldig lite. Det er kun en deamon/service som leser ut fra MSMQ og lagrer dette på en fil. Den vil også inneholde en statusoversikt som blir brukt under testing og kanskje i det ferdige produktet 4
Figur 1 ANALYSE AV VIRKNINGER Dataman vil føre til en enklere hverdag for brukere av dette systemet. Det nye brukergrensesnittet er uten tvil langt bedre enn tidligere (for eksempel DOS-baserte terminaler) og det vil også kunne betraktes som meget intuitivt. Dette vil igjen medføre at det blir betydelig enklere å sette seg inn i apparatets funksjoner. Tidsforbruket ved for eksempel ordreplukking vil som en følge av dette også reduseres en god del, fordi brukerne kan betjene apparatet raskere. I tillegg til å avlaste de ansatte som jobber med lagerhold og butikk i bedriften, vil dette systemet gjøre logistikkløsningene vesentlig mer oversiktlige. Noen argumenter for det er blant annet at man går ytterligere et skritt mot papirløs ording for lagerstyring og handel. Mulighetene for å skrive eller taste inn feil bokstaver eller tall elimineres som en følge av at strekkoder skannes med PDAen og at dataene overføres elektronisk til en database. Det finnes stadig flere produkter som inkluderer serienummer, noe som også er en kilde til feil. Når serienummer blir skannet ved varemottak og ved ordreplukking vil nøyaktigheten på dette området også være ivaretatt. For de som velger å oppgradere fra DOS-baserte terminaler, vil det være stor forbedring i forhold til brukervennlighet og effektivisering av rutiner. Applikasjonen kan lett tilpasses den individuelle kundemassen som finnes i markedet, noe som gjør dette produktet til et enkelt og kostnadseffektivt produkt som vil være lett salgbart. De gamle DOS-baserte terminaler er ikke lenger i salg og en oppgradering vil tvinge seg frem. DataMan blir dermed et aktuelt alternativ. De nye terminalene kjører som regel Windows Mobile og tilbyr et mer avansert grafisk design og bedre brukergrensesnitt. Oppgradert programvare og utstyr vil ikke bare gjøre rutiner mer effektive, men også brukervennligheten vil økes betraktelig som en effekt av denne oppgradering. 5
KONKLUSJON De teknologier og metoder som er valgt å bruke ser ut til å lede oss til en god løsning, med referanser til tester og forsøk som er gjort under forprosjektet. Tiden som er beregnet til å utvikle dette systemet er basert på tre elementer: tidligere erfaringer hos Consafe Logistics, det faktum at vi som skal gjennomføre prosjektet er studenter, og hva som finnes av tilgjengelige resurser. Med disse hensyn vil gruppen anbefale at prosjektet gjennomføres. Dette er uten tvil et realistisk prosjekt som allerede har stor etterspørsel i markedet. Dette synliggjøres ved at flere av oppdragsgivers selgere svært hyppig ber om tilbakemeldinger på når dette produktet kan bli ferdig for demonstrasjon og salg til kunder. Thomas Alsèn Tor-Harald Soløst Claus Erik Kirkerud 6