-

Podobni dokumenti
Document ID / Revision : 0519/1.3 ID Issuer System (sistem izdajatelja identifikacijskih oznak) Navodila za registracijo gospodarskih subjektov

INFORMATOR BIROKRAT 1/2011

Diapozitiv 1

Navodila Trgovina iCenter

Podatkovni model ER

COBISS3/Medknjižnična izposoja

Zbornica zdravstvene in babiške nege Slovenije Zveza strokovnih društev medicinskih sester, babic in zdravstvenih tehnikov Slovenije Stanje:

Microsoft PowerPoint - PIS_2005_03_02.ppt

Spoznajmo PowerPoint 2013

Vaja 3 Kopiranje VM in namestitev aplikacij - strežnik SQL 2000 SP3a A. Lokalni strežnik Vmware ESX Dodajanje uporabnikov vajexx v skupino Vaje

NAVODILA ZA UPORABO K01-WIFI Hvala, ker ste se odločili za nakup našega izdelka. Pred uporabo enote skrbno preberite ta Navodila za uporabo in jih shr

PRIPOROČILA ZA OBLIKOVANJE KATALOGOV ZNANJA ZA MODULE V PROGRAMIH VIŠJEGA STROKOVNEGA IZOBRAŽEVANJA

CODEKS IP KAMERA

Orodje za izvoz podatkov

Chapter 1

Navodilo za urejanje zavarovanj po šifri podlage za zavarovanje 033 prek portala e-vem Ljubljana, oktober 2015

Slide 1

PowerPoint Presentation

Zadeva: Ponudba

Microsoft Word - M docx

Gimnazija Bežigrad Peričeva Ljubljana OPERACIJSKI SISTEM Predmet: informatika

Programska sprememba oddelka šole

NEVTRIN d.o.o. Podjetje za razvoj elektronike, Podgorje 42a, 1241 Kamnik, Slovenia Telefon: Faks.: in

Nove različice programske opreme GE Podjetje GE Digital, vodilni svetovni proizvajalec programske opreme za področje avtomatike, je izdalo kar nekaj n

NAVODILA ZA IZPOLNJEVANJE ELEKTRONSKEGA OBRAZCA ZA PRIJAVO IN PREKLIC DIGITALNIH POTRDIL Verzija Datum Opis sprememb dokumenta dokumenta

(Microsoft Word - MSDN AA Navodila za \232tudente FS.doc)

NAVODILA ZA IZPOLNJEVANJE OBRAZCA

Navodila za programsko opremo FeriX Namestitev na trdi disk Avtor navodil: Martin Terbuc Datum: December 2007 Center odprte kode Slovenije Spletna str

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM POGOSTA VPRAŠANJA IN ODGOVORI Ljubljana, Verzija 1.0

INFORMATOR BIROKRAT 1/2011

ISOFT , računalniški inženiring

Poročanje izdanih računov pri gotovinskem poslovanju

Excel 2016

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, Verzija 1.1

PowerPointova predstavitev

PowerApps

Navodila za uporabo aplikacije mlist - neposredni mentorji za Zdravniško zbornico Slovenije pripravila Gooya, interaktivni mediji, d.o.o. Ljubljana, m

Navodilo Telemach

VPELJAVA MDM V DRŽAVEM ZBORU MATJAŽ ZADRAVEC

Na podlagi 24. in 25. člena Zakona o varstvu osebnih podatkov (Ur. list RS, št. 94/07), sprejema ravnatelj javnega zavoda Dijaški dom Nova Gorica nasl

OSNOVNE INFORMACIJE O TRGOSKOPU Kaj je Trgoskop? TRGOSKOP je orodje za pregled podatkov o sklenjenih poslih z nepremičninami, nepogrešljivo za investi

TRGOVSKI PORTAL SPLETNA APLIKACIJA NAMENJENA TRGOVCEM NAVODILA ZA REGISTRACIJO IN PRIJAVO Ljubljana, Verzija 1.1,

NETGEAR R6100 WiFi Router Installation Guide

1 MMK - Spletne tehnologije Vaja 5: Spletni obrazci Vaja 5 : Spletni obrazci 1. Element form Spletni obrazci so namenjeni zbiranju uporabniških podatk

UPRAVLJANJE RAZPRŠENIH PODATKOV Shranjevanje, zaščita in vzdrževanje informacij, ki jih najbolj potrebujete

II-RIS-Primer Seminarske Naloge Redni-LJ

Navodila za uporabo programske opreme OTRS verzija Administracijska navodila Avtor navodil: Sebastijan Šilec Datum: December 2007 Center odprte

Navodila za uporabo Mini snemalnik

Navodila Trgovina iCenter

Nameščanje Adopt Open Java Development Kit 8

RAM stroj Nataša Naglič 4. junij RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni

KRMILNA OMARICA KO-0

IJS EDS IJS Elektronski Dokumentni Sistem Osnovna uporaba sistema uporabniška navodila Institut "Jožef Stefan" Ljubljana

Nameščanje Adopt Open Java Development Kit 8

PowerPointova predstavitev

Obračun storitev v vrtcu in šoli

Postopek za pripravo in oddajo kontrolnih podatkov za napoved dohodnine za leto 2007

Mojtelemach brosura_junij 2015_mail

Microsoft Word - CN-BTU4 Quick Guide_SI

Upravljanje sistema COBISS Navodila za uporabo tiskalnika CITIZEN S310II V1.0 VIF-NA-27-SI

Vaja 2 Virtualizacija fizičnih strežnikov in virtualni PC A. Strežnik Vmware ESX Namestitev strežnika VMware ESX 3.5 na fizični strežnik 2. Nas

Linksys PLEK500 User Guide

NAVODILA ZA UPORABO SPLETNE APLIKACIJE

Microsoft Word - eDenar - navodila za uporabo osebnega portala clana doc

Microsoft PowerPoint - seminar_ pptx

Pogoji poslovanja Catena.si je spletna trgovina podjetja Catena d.o.o.. Pogoji poslovanja so sestavljeni upoštevajoč vse zakonske obveznosti in mednar

Microsoft Word - CNR-BTU3_Bluetooth_vmesnik

Microsoft Word doc

Elektronska pošta

ACAD-BAU-Analiza-prostorov

Microsoft Word - P-2_prijava

Vedno pod nadzorom, kjerkoli že ste

Splošni pogoji poslovanja 1. Uvodna določba 1) Splošni pogoji poslovanja so pravni dogovor med končnim uporabnikom (fizična ali pravna oseba, v nadalj

Navodila za uporabo Mini prenosna HD kamera s snemalnikom

NETGEAR R6250 Smart WiFi Router Installation Guide

Microsoft Word - Trust-CDsize-12052_12579_14070-al-cp_v5.0.doc

Macoma katalog copy

PowerPointova predstavitev

Prostorski informacijski sistem občin e-mesečnik 4 / 2008, Vsebina vsebinske novosti 1 poslovni subjekti 84. občina v sistemu pomoč uporabniko

POMOČ PREDSTAVITEV EKOSKLADOVNICE UPORABLJENA TERMINOLOGIJA REGISTRACIJA V EKOSKLADOVNICO PRIJAVA V EKOSKLADOVNICO OBJAVA PRISPEVKA ISKANJE PRISPEVKOV

Navodila za uporabo

Microsoft Word - NAVODILA ZA UPORABO.docx

ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA

Microsoft Word - IPIN slovenska navodila za pridobitev

Microsoft Word - M doc

Prodajna knjižica

SLO NAVODILA ZA UPORABO IN MONTAŽO Kat. št.: NAVODILA ZA UPORABO Univerzalni zračni kompresor Bruder Mannesmann 097 T Kataloška

(Microsoft Word - Nakupovalni vodi\350 po angle\232kih spletnih trgovinah - IzAnglije)

Vprašanja za 2. izpitno enoto poklicne mature Strokovni predmet NPA Vprašanja Visual C# (4. letnik) 1. Uporabniški vmesnik razvojnega okolja Visual C#

Microsoft Word - Splosni pogoji za uporabnike storitve_ONA_ doc

Navodila za izpolnjevanje elektronske vloge-obrazcev za prijavo programa ZŽS Zbirni obrazec Zbirni obrazec vam posreduje oz. pove število do

Microsoft Word - CNC obdelava kazalo vsebine.doc

Microsoft PowerPoint - Navodila za izdajo kartic.pptx

Event name or presentation title

PowerPoint Presentation

Kratka navodila za uporabo razširjevalnika dosega WiFi AC750 model EX3800

Microsoft Word - M docx

ZAČETNI VODNIK ZA POVEZAVO Izkusite prilagojeno nego perila z aplikacijo My AEG Care. Pralni stroj lahko povežete in upravljate od koder koli in preje

SPLETNA PRIJAVA NA IZPITE ZA DIJAKE Dijaki se na izpite prijavite na novem portalu novi.lopolis.si z istim uporabniškim imenom in geslom, kot ga upora

Transkripcija:

Organizacija in management informacijskih sistemov RAZVOJ APLIKACIJE ZA UPRAVLJANJE S STRANKAMI V PODJETJU ANET, D.O.O. Mentor: red. prof. dr. Jože Zupančič Kandidat: Nejc Šter Kranj, April 2011

ZAHVALA Zahvaljujem se mentorju dr. Jožetu Zupančiču za spodbudo, nasvete in pregled diplomskega dela. Prav tako bi se rad zahvalil sodelavcema Andreju Pečjaku in Janezu Cveku, ki sta pomagala s koristnimi informacijami in nasveti pri izdelavi diplomskega naloge in pri testiranju razvite aplikacije za upravljanje s strankami. Zahvalil bi se tudi Juliji za pomoč in spodbude pri izdelavi diplomskega dela.

POVZETEK RAZVOJ APLIKACIJE ZA UPRAVLJANJE S STRANKAMI V PODJETJU ANET, D.O.O. V diplomskem delu je predstavljeno delo pri zasnovi in implementaciji aplikacije za upravljanje s strankami, ki so pri podjetju Anet, d.o.o. kupile diagnostično napravo Texa. Opisana sta razvoj baze podatkov in izdelava uporabniškega vmesnika z programskim orodjem Microsoft Access. Programska oprema omogoča sprotno vnašanje, pregledovanje in obdelavo podatkov, ki so povezani z diagnostičnimi napravami in strankami in s tem učinkovitejše upravljanje s strankami. KLJUČNE BESEDE - Baza podatkov - Stranka - Uporabniški vmesnik - Upravljanje ABSTRACT DEVELOPMENT OF AN APPLICATION FOR CUSTOMER DATA MANAGEMENT IN COMPANY ANET, D.O.O. This assignment presents the design and implementation of an application for customer data management, for customers who have bought their Texa diagnostic tools from the company Anet, d.o.o. It describes the development of database and implementation of a user interface using Microsoft Access 2007 database programming environment. This software support allows entering, examining and analysis of data that apply to diagnostic tools and customers. As a result management of customers has become more efficient. KEYWORDS - Database - Customer - User interface - Management

KAZALO 1 UVOD... 1 1.1 PREDSTAVITEV PROBLEMA... 1 1.2 PREDSTAVITEV OKOLJA... 1 1.3 PREDPOSTAVKE IN OMEJITVE... 2 1.3 METODA DELA... 2 2 OSNOVE BAZE PODATKOV... 3 2.1 OSNOVE BAZE PODATKOV... 3 2.2 RELACIJSKA BAZA PODATKOV... 4 2.3 PREGLED POJMOV V RELACIJSKIH BAZAH... 4 2.4 RELACIJE MED PODATKI... 5 3 OBSTOJEČE STANJE... 6 3.1 POSNETEK STANJA... 6 3.2 KRITIČNA ANALIZA... 8 4 RAZVOJ PROGRAMSKE REŠITVE... 9 4.1 PROGRAMSKA ORODJA... 9 4.2 PRIPRAVA NA RAZVOJ APLIKACIJE... 10 4.2.1 ZBIRANJE PODATKOV... 10 4.2.2 NORMALIZACIJA... 10 4.2.3 KONCEPTUALNO NAČRTOVANJE... 12 4.2.4 FIZIČNI ENTITETNO RELACIJSKI DIAGRAM... 14 4.3 TABELE... 16 4.4 UPORABNIŠKI VMESNIK... 16 4.5 OBRAZCI... 17 4.5.1 OBRAZEC ZA UPRAVLJANJE Z NAROČNINAMI... 17 4.5.2 OBRAZEC ZA VNOS STRANKE... 18 4.5.3 OBRAZCI ZA PRODAJO IN VNOS NAPRAV... 19 4.5.4 OBRAZEC ZA VPISOVANJE POPRAVIL... 21 4.6 POIZVEDBE... 21 4.6.1 POIZVEDBA ZA ISKANJE NAROČNIN... 22 4.6.2 POIZVEDBA ZA POŠTO... 23 4.6.3 POIZVEDBA ZA ISKANJE NOVEJŠIH NAPRAV... 24 4.6.4 OSTALE POIZVEDBE... 25 4.7 POROČILA... 26 4.8 DELITEV APLIKACIJE PREKO DROPBOX strežnika... 29 4.9 TESTIRANJE APLIKACIJE... 30 4.10 UPORABA RAZVITE PROGRAMSKE OPREME... 31 4.11 PODATKI O RAZVITI PROGRAMSKI OPREMI... 32 5 ZAKLJUČKI... 32 5.1 IZKUŠNJE UPORABNIKOV... 32 5.2 IZKUŠNJE RAZVIJALCA... 33 5.3 NADALJNJE DELO... 33 LITERATURA IN VIRI... 34 POJMOVNIK... 34 KAZALO SLIK... 35 KAZALO TABEL... 34 KRATICE IN AKRONIMI... 35

1 UVOD 1.1 PREDSTAVITEV PROBLEMA Podjetje Anet, d.o.o. se že dalj časa ukvarja s prodajo avtomobilskih nadomestnih delov. Zadnjih 5 let pa je sestavni del ponudbe postala tudi diagnostična oprema italijanskega proizvajalca Texa, ki se uporablja za diagnosticiranje elektronskih krmilnih sistemov v različnih prevoznih sredstvih. V teh petih letih je število kupcev diagnostičnih naprav Texa naraslo na skoraj 200, kar pomeni, da vodenje evidence teh strank in vseh ostalih informacij, ki so povezane s tem, le s pomočjo preproste Excelove preglednice postaja vse bolj težavno. Pri vsem tem moramo poleg evidence strank beležiti tudi katero diagnostično napravo so kupile posamezne stranke, njihovo serijsko številko, katero programsko opremo imajo, s tem pa tudi verzijo programske opreme, datum pričetka naročnine za posodobitev programa, uporabniški jezik, aktivacijske kode za uporabniški program in evidenco popravil diagnostičnih naprav. Vseh teh podatkov je v tem času postalo preveč in pričele so se pojavljati napake, saj zaradi nepreglednosti obstoječe rešitve določene stranke niso prejele posodobitve za programsko opremo ali pa smo jim poslali napačno programsko opremo. Sami pa smo pričeli izgubljati čas z iskanjem potrebnih informacij v preobširni preglednici, ki se je uporabljala za evidentiranje. Trenutna rešitev je s svojo nepreglednostjo tratila naš in strankin čas, saj mi nismo uspeli dovolj hitro dobiti informacije o stranki in njenem programu. S tem pa smo povzročili slabo voljo in jezo pri strankah, ki so izgubljale zaupanje v naše sposobnosti in s tem v podjetje Anet. Poleg vsega tega pa se je pričel pojavljati tudi problem, da smo lahko v obstoječo preglednico vpisovali le na enem mestu. Začelo se je vse bolj pogosto dogajati, da smo pozabili vpisati določene nove podatke v tabelo. Zato smo morali poiskati tudi rešitev, ki bi omogočala, vpisovanje in pregledovanje podatkov na različnih računalnikih, ki jih uporabljamo za poslovanje. 1.2 PREDSTAVITEV OKOLJA Dejavnost skupine Anet je prodaja in distribucija avtomobilskih rezervnih delov originalne kakovosti. Njihovi dobavitelji so največji svetovni proizvajalci avtomobilskih komponent. V največji meri gre za proizvajalce, ki so dobavitelji samim avtomobilskim proizvajalcem tako da govorimo o rezervnih delih prve vgradnje oz. originalnih rezervnih delih. Na področju tistih rezervnih delov, ki jih avtomobilske tovarne proizvajajo same, pa so skrbno izbrali med proizvajalci, ki zagotavljajo najvišji nivo kakovosti. Tukaj predvsem mislijo na dele pločevine in plastike. Njihovi glavni dobavitelji pločevine tako sodelujejo z uglednim inštitutom»centro Zaragoza«, ki po sistemu, ki ga je potrdil tudi nemški inštitut TUV, podeljujejo certifikat ustreznosti oz. ekvivalentnosti z originalnimi deli. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 1

Skupina Anet se je v 12 letih poslovanja razširila na 12 poslovalnic po vsej Sloveniji s sedežem podjetja v Ljubljani. Pred tremi leti pa je Skupina Anet postala član Group Auto Union (GAU) Slovenija. GAU je skupina neodvisnih nacionalnih distributerjev, ki delujejo znotraj skupne mednarodne strategije, kjer upoštevajo raznolikost svojih članic: geografsko, kulturno, ekonomsko, spoštujejo svobodo članic v odločanju, spodbujajo samodisciplino in uporabo avtomobilskih rezervnih delov in blagovnih znamk, ki so identične ali enake kvalitete kot originalna oprema. Njihovo vodilo je predvsem zagotavljanje najvišje kakovosti rezervnih delov, ki se pojavljajo na tržišču, in konkurenčen cenovni nivo, obenem pa povečanje kakovosti njihove storitve v zadovoljstvo kupcev do največje mere. 1.3 PREDPOSTAVKE IN OMEJITVE Osnovna predpostavka v mojem diplomskem delu je, da je zaradi naraščajočega števila strank potrebno razviti aplikacijo, ki bo učinkovito reševala problem preglednosti in nadzora nad strankami. Poleg tega predpostavljamo tudi, da programska orodja za razvoj aplikacije obstajajo, da zaposleni v podjetju poznajo programsko opremo Microsoft Access 2007 in znajo z njo tudi delati, zaposleni poznajo problematiko in bodo znali svetovati pri razvoju aplikacije, ki bo pripomogla k lažjemu delu. Edina omejitev, ki se pojavlja je, da je na nekaterih službenih računalnikih nameščena starejša programska oprema MS Access 2003. Zato je potrebno aplikacijo, ki se bo razvijala v MS Access 2007 prilagoditi tako, da bo v celoti delovala tudi s starejšo programsko opremo. 1.3 METODA DELA Pri svojem delu sem se zaradi uporabnikovih zahtev in načina dela odločil za metodo prototipnega razvoja aplikacije. Pred pričetkom razvoja aplikacije namreč ni bilo mogoče izdelati natančnih specifikacij in vse potrebe niso bile jasne. Skozi izdelavo delnih rešitev (prototipov) in naknadnih informacije smo prišli do rešitve, ki najbolj ustreza končnemu uporabniku. Poleg tega pa so dimenzije projekta razmeroma majhne prav tako pa tudi število uporabnikov (trije), kar sta še dva od kriterijev za primernost uporabe prototipne metode razvoja aplikacije. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 2

2 OSNOVE BAZE PODATKOV 2.1 OSNOVE BAZE PODATKOV Bazo podatkov lahko opišemo z naslednjimi tremi značilnostmi oziroma zahtevami (Grad in Jaklič, 1996): je logično urejena zbirka med seboj povezanih podatkov, ki je shranjena na trajnem pomnilniškem mediju in odraža del realnega sveta, je narejena s posebnim namenom za množico uporabnikov, ki opravljajo s podatki naslednje operacije: doseganje, shranjevanje, brisanje in dodajanje, je integrirana, kar pomeni, da vsebuje podatke za mnoge uporabnike, pri čemer posameznega uporabnika zanima le del celote. Baza podatkov (slika 1) tako predstavlja visoko organizirano elektronsko skladišče znotraj katerega programska oprema, ki jo poznamo pod imenom sistem za upravljanje s podatkovnimi bazami (v nadaljevanju SUPB), upravlja s podatkovno strukturo in nadzoruje dostop do podatkov, shranjenih v bazi podatkov, ter omogoča izmenjavo podatkov med različnimi programi in uporabniki. Metapodatki podajajo opis lastnosti podatkov in povezav med njimi znotraj baze podatkov. Slika 1: Struktura baze podatkov (Kovačič idr., 2004, str. 121) Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 3

2.2 RELACIJSKA BAZA PODATKOV Relacijska baza podatkov temelji na matematični teoriji relacij, podatki v njej pa so strukturirani v skladu z relacijskim podatkovnim modelom, ki ima naslednje lastnosti (Gradišar idr., 2005): relacijski podatkovni model je preprost za razumevanje, temelji na matematični podlagi teoriji relacij, dejanska fizična predstavitev je uporabniku skrita, podatke pa uporabnik vidi v dvodimenzionalnih tabelah, poizvedovanje je počasnejše v primerjavi z ostalimi podatkovnimi modeli, saj so povezave med podatki implicitne, pri drugih modelih pa so eksplicitne, za poizvedovanje se uporablja standardni poizvedovalni jezik SQL, kar omogoča enostaven prehod z enega na drug sistem za upravljanje podatkovnih baz. 2.3 PREGLED POJMOV V RELACIJSKIH BAZAH Za lažje razumevanje bomo v tem razdelku na kratko predstavili osnovne pojme, ki jih bomo uporabljali pri delu z relacijskimi bazami podatkov. Pojme bomo razložili na primeru naše baze, sestavljene iz dveh tabel. Tabela NAPRAVA (slika 2) vsebuje podatke o napravah, tabela TIP NAPRAVE (slika 3), pa podatke o vrsti naprave. Slika 2: Primer zapisov vseh naprav v bazi podatkov Entiteta je stvar ali dogodek, ki obstaja ali mislimo, da obstaja v svetu, ki ga modeliramo. Podatke o entitetah shranjujemo v tabele. Vsaki entiteti (v našem primeru naprave) pripada ena tabela. Vsaka vrstica v tabeli (zapis) ustreza enemu primerku entitete (eni napravi). Primerek entitete v tabeli Naprava (slika2) je serijska naprave DAG9T003041, z zaporedno številko Zap_st_nap 10, katere lastnik je stranka s serijsko številko 5002, ki je kupila napravo na dan 23. 12.09 brez IDC3 programa, kar je navedeno pod opombo. Atributi so lastnosti entitete. Vsaka tabela je sestavljena iz čelne vrstice in podatkovnih vrstic. Čelna vrstica pojasnjuje pomen polj (stolpcev) v tabeli. Vsak stolpec pomeni eno lastnost. Na primer entiteta zaposleni ima lastnosti: Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 4

SN_naprave, Zap_st_nap, St_stranke_ Datum_nakupa in Opomba. Vsak stolpec ima prirejen podatkovni tip (število, besedilo itd.). Množico dopustnih vrednosti atributa imenujemo domena. Za atribut Serijska stranke na sliki 2, je domena množica vseh možnih števil. Če bi na primer označevali spol neke osebe, bi bila domena množica {M, Ž}. V primeru, da bi hoteli v polje vnesti podatek, ki ne ustreza domeni, mora programska oprema tak vnos zavrniti. Velikokrat želimo znotraj entitete enolično opredeliti primerek entitete. Na primer, imeti želimo podatek, po katerem lahko med seboj razlikujemo naprave. Najprimernejši atribut je SN_naprave z vrednostjo atributa v obliki serijske številke naprave, saj dve napravi znotraj iste entitete ne moreta imeti enakih vrednosti tega atributa. Ta podatek uporabimo kot glavni ključ. V kolikor v entiteti nimamo atributa, s katerim bi lahko enoznačno opredelili primerek entitete, uporabimo ključ, ki je sestavljen iz dveh ali več atributov. Takšen ključ imenujemo sestavljeni ključ. V tabeli Tip naprave (Slika 3) hranimo podatke o vrstah naprav. Tabelo sestavljata dve polji: Zap_st_nap in Ime_naprave. Primarni ključ tabele je polje oz. stolpec Zap_st_nap, podatkovnega tipa število. Polje Ime naprave vsebuje ime diagnostične naprave. Slika 3: Primer zapisov vrst naprav v bazi podatkov 2.4 RELACIJE MED PODATKI Če želimo informacije iz več tabel združiti v novi tabeli, obrazcu, poizvedbi ali poročilu, definiramo relacije med tabelami. Relacija v podatkovni bazi povezuje zapise dveh tabel, ki imata ujemajoče se podatke v poljih s ključem. Prva tabela je primarna in vsebuje primarni ključ, druga tabela je povezana s prvo tabelo in vsebuje zunanji ključ. Običajno se primarni in zunanji ključ nahajata v poljih z enakima imenoma v obeh tabelah, kar pa ni nujno. Imena polj so lahko različna, vendar pa morata povezani polji biti istega podatkovnega tipa, saj je to pogoj, da podatke v njima lahko primerjamo. V tabeli NAPRAVA (tabela 1), imamo polje z imenom Zap_st_nap podatkovnega tipa število. To je zunanji ključ, ki omogoča povezavo s tabelo TIP NAPRAVE (tabela 2), v kateri polje Zap_st_nap predstavlja primarni ključ podatkovnega tipa število. S pomočjo zunanjega ključa Zap_st_nap v tabeli NAPRAVA bomo iz tabele TIP NAPRAVE za posamezno napravo pridobili podatke o vrsti naprave. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 5

3 OBSTOJEČE STANJE 3.1 POSNETEK STANJA»Pred gradnjo podatkovnega vira morajo strokovnjaki informatiki izdelati načrt, ki pa ne more nastati brez predhodne analize uporabnikovih potreb, saj le uporabnik dovolj dobro pozna problemsko področje, ki ga želimo predstaviti s podatki v podatkovnem viru. Povezave in odvisnosti med objekti in podatki, ki te objekte opisujejo, odražajo poslovna pravila organizacije, ki jih najbolje pozna prav uporabnik«(jaklič, 1999, str. 15). Kakovostno načrtovanje baze podatkov je bistvenega pomena za izgradnjo take baze podatkov, ki bo dober temelj informacijskega sistema. Žal nas želja po hitrih rezultatih prepogosto pripelje do slabega in površnega načrtovanja, ki ima za posledico velike stroške (Grad in Jaklič, 1996). S hitrim razvojem elektronskih sistemov v današnjih vozilih je delo avtomehanikov brez diagnostične naprave postalo skoraj nemogoče, saj brez le-te na primerne morejo več zamenjati zavornih plošč na zadnjih kolesih ali pa ponastaviti sistema zračnih blazin po trku vozila. Napredna tehnika za krmiljenje motorjev z notranjim zgorevanjem pa zahteva uporabo več kot 10 senzorjev, kar pa mehaniku oteži iskanje vzrok okvare. Prav zato se je podjetje Anet, d.o.o. odločilo, da v svoj pester program nadomestnih avtomobilskih delov vključi tudi prodajo diagnostičnih naprav TEXA za diagnosticiranje elektronskih sistemov v sodobnih vozilih. Pri našem delu strankam ponujamo vrsto različnih diagnostičnih naprav, ki se uporabljajo za diagnosticiranje elektronskih in električnih sistemov pri novejših vozilih. Te naprave so s hitrim razvojem elektronskih sistemov v vozilih postale nepogrešljiv del opreme vsake mehanične delavnice. Prodaja takšnih naprav pa zahteva tudi tehnično podporo avtomehanikom, saj jim je mnogim delo z računalnikom v delavnici tuje in zelo težko. TEHNIČNA SLUŽBA ANET, D.O.O. STRANKA Slika 4: Povezava med enotami z vidika uporabnika Vsako diagnostično napravo predstavlja diagnostični vmesnik in programska oprema, ki jo uporabnik namesti na prenosni računalnik ali pa je le-ta sestavni del Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 6

diagnostičnega naprave. Italijansko podjetje TEXA letno izda 3-4 posodobitve tega programa, če stranka želi prejemati te posodobitve mora imeti sklenjeno naročniško razmerje, zato je zelo pomembno, da beležimo katero verzijo programa ima določena stranka. Vsa ta programska oprema je zaščitena s kodo, ki jo je potrebno vnesti po vsaki posodobitvi programa in je za vsako napravo različna. Poleg tega pa je TEXA razvila več vrst diagnostičnega programa. TEXA je za potrebe diagnosticiranja elektronskih sistemov v sodobnih vozilih razvila programsko opremo za vsa področja današnje logistike. Tako so postali vodilno podjetje na področju diagnoze osebnih vozil, motornih koles, tovornjakov in prikolic, traktorjev in ostalih kmetijskih strojev ter pomorskih vozil kot so vodne sanke, ter izvenkrmnih in vgradnih motorjev na ladjah. Diagnostična programska oprema za vsako področje ima poleg zmožnosti diagnoze sistemov v vozilu na voljo tudi sheme ožičenj elektronskih sistemov, posebna tehnična poročila in iskalnik rešitev problemov, ki deluje s pomočjo Googlovega algoritma iskanja. Delo tehnične ekipe podjetja Anet, ki jo sestavljamo trije tehniki, predstavljajo predstavitve naprav, šolanja in telefonska podpora avtomehanikom, ki uporabljajo našo napravo. Predstavitve naprav se v večini primerov izvajajo v avtomehaničnih delavnicah potencialnih strank, kjer se predstavi delovanje naprave na poljubnem vozilu. Če se stranka odloči, da bo kupila našo napravo, ji s tem tudi dva meseca pripada tehnična pomoč, če ima težave z določenimi vozili, ki jih diagnosticira. Po teh dveh mesecih se pomoč nadaljuje le, če je stranka sklenila naročniško razmerje eno leto. Drugače strankam pomagamo le v primeru težav z diagnostično napravo. Če ima stranka težave z diagnostično napravo, najprej sami preverimo ali lahko težavo odpravimo pri nas ali jo moramo zato poslati v dobaviteljevo podjetje v Italiji. V večini primerov lahko okvare odpravimo sami, če pa že pride do resnejše okvare, pa normalno traja 2-3 tedne, da se naprava vrne iz popravila iz Italije. Če do okvare pride v času garancije, ki traja 24 mesecev, stranki brezplačno posodimo našo diagnostično napravo tako, da je njeno delo nemoteno. Če pa je naprava izven garancijske dobe, pa se ji za posojanje naše naprave zaračuna dnevna tarifa. Trenutno ima Anet okoli 6»Demo«naprav, ki jih uporabljamo za predstavitve in nadomestitev naprav v popravilu. Trenutno ima Anet že več kot 150 strank, ki so kupile 1 ali 2 diagnostični napravi, kar predstavlja veliko težavo na področju preglednosti in nadzoru strank. Do sedaj se je celotna evidenca strank in njihovih naprav vodila preko Excel-ove preglednice, ki je z večanjem števila strank postala nepregledna in neuporabna. Od tega jih ima naročnino sklenjenih približno 60, pri čemer je potrebno beležiti tudi vrsto naročnine, vrsto programske opreme, ki uporablja, vrsto naprave, datum nakupa, datum sklenitve naročnine, kode za aktivacijo programa, razne opombe, serijsko številko naprave, ali je bil stranki poslan računa in kdaj in verzijo programske opreme. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 7

Slika 5: Excel preglednica V našem podjetju tehnična služba predstavlja vez med mehanikom in podjetjem. Ker so naše stranke avtomehaniki, je za podjetje zelo pomembno, da le-ti ne propadejo zaradi nepoznavanja lastnosti sodobnih vozil. Zato je podjetje ANET tudi pričelo s prodajo diagnostičnega orodja, saj so se vodilni zavedali pomembnosti tega področja za nadaljnji obstoj avtomehanikov in s tem tudi podjetja. Sprva je bil ta program mišljen le kot podpora avtomehanikom, sedaj pa je prerasel v pravi posel, kjer obstaja stalen boj s konkurenco, ki prav tako prodaja diagnostične naprave drugih proizvajalcev. 3.2 KRITIČNA ANALIZA Trenutno se v podjetju za upravljanje s poslovnimi procesi uporablja program TIC podjetja TRON Intercenter. Programska rešitev je izdelana z uporabo več nivojske arhitekture v sistemu lahki odjemalec/strežnik in podatkovnega skladišča, obsega pa rešitve iz vseh poslovnih področij, zlasti s poudarkom na elektronskem poslovanju. Programske rešitve TRON InterCenter temeljijo na popolni objektni orientiranosti v omrežjih (internet/intranet), za razliko od klasičnih rešitev pa so le-te dostopne uporabnikom od koder koli in na enak način, pa naj bo na delovnem mestu, na poti ali od doma. Žal pa ta programska oprema ne omogoča nadzora nad strankami glede na informacije, ki so za tehnično službo bistvene. Seveda bi bilo možno nadgraditi obstoječi sistem, da bi omogočal upravljanje tudi s tovrstnimi informacijami, vendar bi bila implementacija tega predraga. Trenutno se za upravljanje s strankami, ki so pri nas kupile diagnostično orodje, uporablja programsko orodje Microsoft Excel, ki pa ne omogoča preglednosti nad večjim številom podatkov, kar je tudi največja pomanjkljivost te aplikacije. Zaradi uporabe večih preglednic je težko ugotoviti v kateri preglednici so informacije, ki jih potrebujemo. Pri vsem tem pa ni standardizacije zapisov, ki se večkrat pojavijo kot na primer vrsta diagnostične programske opreme, ki jo stranka uporablja. Vse to privede do nejasnosti, ki v končni fazi povzročijo, da se določeno stranko zapostavi, saj se ne ve ali ima naročnino, ali jo je podaljšala, katero verzijo je prejela. Velikokrat smo že prejeli pritožbe na sedež podjetja, ko smo nehote prezrli stranko, ki ni prejela vabila na šolanje ali ni prejela nove posodobitve programske opreme. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 8

4 RAZVOJ PROGRAMSKE REŠITVE Kakovostno načrtovanje baze podatkov je bistvenega pomena za izgradnjo take baze podatkov, ki bo dober temelj informacijskega sistema. Žal nas želja po hitrih rezultatih prepogosto pripelje do slabega in površnega načrtovanja, ki ima za posledico velike stroške (Grad in Jaklič, 1996). 4.1 PROGRAMSKA ORODJA Microsoft Access je samostojno programsko orodje za izdelavo baz podatkov in bi ga kot takega lahko uporabili kot razvojno orodje, saj ga v te namene uporabljajo v mnogih manjših organizacijah. Zaradi sočasne uporabe s strani več uporabnikov in povezave z drugimi bazami podatkov bo v našem primeru uporabljen sprva kot razvojno orodje, nato pa kot uporabniški vmesnik za povezavo in dostop do strežnika, na katerem bodo shranjeni podatki. Microsoft Access se navzven kaže kot univerzalno orodje za delo s podatkovnimi zbirkami, je računalniški program, s katerim lahko enostaven program izdelamo skoraj brez vsakih programerskih izkušenj, z nekaj programerskega znanja pa hitro izdelamo tudi profesionalen program za delo z bazo podatkov. Na sliki 6 je prikazan primer razvoja obrazca Naročnine. Vse gradnike (polje z besedilom, kombinirano polje, napis, ukazni gumb, potrditveno polje itd.) iz orodnih vrstic povlečemo na delovno površino in v pogovornem oknu Lastnosti (manjše okno na desni strani slike) določimo lastnosti obravnavanega gradnika. Vse gradnike lahko po delovni površini poljubno premikamo, jim spreminjamo velikost in spremenljive lastnosti. Priklic podatkov iz katere koli tabele v polja z besedilom opravimo že v začetni fazi s pomočjo čarovnika za izdelavo obrazcev. Vsak obrazec lahko sestavimo na osnovi več tabel, v katere preko obrazca vnašamo podatke. Obrazcu lahko dodamo podobrazce, ki imajo popolnoma enake funkcionalne lastnosti kot osnovni obrazci. Usklajeno premikanje po zapisih obrazcev in podobrazcev dosežemo s povezovanjem sorodnih polj. Osnovni obrazec bi vseboval npr. podatke o stranki, podobrazca pa podatke o napravi in naročnini. Prikazovanje in vpisovanje podatkov v vseh obrazcih in podobrazcih najpogosteje sloni na izbrani stranki, kar pomeni, da vsi prikazani podatki ustrezajo točno določeni stranki in napravi. Po končanem delu oziroma med preverjanjem izgleda in funkcionalnosti obrazca preidemo iz pogleda načrta v normalni pogled. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 9

Slika 6: Izdelava obrazca v MS Access 4.2 PRIPRAVA NA RAZVOJ APLIKACIJE 4.2.1 ZBIRANJE PODATKOV Da bi razvili ustrezno bazo podatkov, moramo poznati vse podatke v procesu, ki predstavlja osnovo za kreiranje baze podatkov. V ta namen smo skupaj s sodelavci sestavili seznam podatkov, ki so potrebno za učinkovito in kakovostno upravljanje evidence strank. Vse te podatke smo podali v eno tabelo, ki sama po sebi še ni uporabna za programsko orodje MS Access. Zato je potrebno vse te podatke normalizirati. 4.2.2 NORMALIZACIJA Normalizacija je analiza funkcionalnih odvisnosti med lastnostmi entitet. Namen normalizacije je iz kompleksnega modela ustvariti množico preprostejših in stabilnejših podatkovnih struktur. Izkušnje kažejo, da so normalizirane podatkovne strukture fleksibilnejše in stabilnejše ter jih je laže vzdrževati kot nenormalizirane strukture. Postopek normalizacije je možno uporabiti na vseh vrstah modelov podatkov: hierarhičnem, mrežnem in relacijskem (Damij idr., 1995). Normalizacijo podatkov procesa nadzora in vzdrževanja elementov upravljanja s strankami smo izvedli tako, da smo iz vseh zapisov izločili ponavljajoče se podatke in tako dobili nekaj dodatnih skupin podatkov. Zaradi prevelikega števila podatkov v obravnavanem procesu bomo za lažje razumevanje prikazali prehod iz nenormalizirane oblike podatkov v normalizirano le na primeru normalizacije podatkov zapisa strank. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 10

NAROČNINE SN_naprave ST_stranke Datum_nakupa Ime_naprave Vrsta popravila Datum Opis Posojena_naprava Vrsta_naročnine Opis_prog_opreme Verzija Datum aktivacije Aktivacijska koda Kontra_koda Specialna_koda Opomba Jezik Racun Tabela 1: Nenormalizirani podatki POSTAVKA NAROCNINE POPRAVILA NAPRAVA TIP NAPRAVE VRSTA POPRAVILA Tip_narocnine SN_naprave SN_Naprave Zap_st_nap Zap_st_pop St_nar ST_pop Zap_st_nap Ime_naprave Vrsta_pop ST_prog Zap_st_pop St_stranke Verzija Datum Datum_nakupa Datum aktivacije Opis Opomba Aktivacijska_koda Posojena_naprava Kontra_koda Popravljeno Specialna_koda Opomba PROGRAMSKA VRSTA NAROČNINE NAROCNINA/NAPRAVA OPREMA Jezik ST_prog ST_nar SN_naprave Racun Opis_prog_opr Vrsta Tip_narocnine Tabela 2: Normalizirani podatki Normalizacija podatkov pomeni preoblikovanje podatkov v obliko, ki je primerna za računalniško obdelavo. Z normalizacijo prevedemo obsežen nabor podatkov (Tabela 1) v množico preprostejših (Tabela 2). Z normalizacijo preprečimo nepotrebno podvajanje podatkov, omogočimo enostavno spreminjanje podatkov in zmanjšamo uporabo prostora na podatkovnih nosilcih. Predstavljajmo si, da ima stranka več naprav z naročninami za posodobitev programske opreme. Podatki o tem so napisani tolikokrat, kolikor je kupljenih naprav in aktivnih naročnin. Ob vsaki spremembi teh podatkov (npr. ob zamenjavi lastnika naprave) moramo te podatke popraviti v vseh zapisih, v katerih se nahajajo. V Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 11

primeru normaliziranih podatkov se telefonska številka stranke le v tabeli s podatki o napravah. Ker so vsi zapisi povezani s podatki o napravah preko ključa SN_naprave, ki se nahaja v tabelah NAPRAVA, NAROCNINA/NAPRAVA, se ob spremembi lastnika naprave v tabeli NAPRAVA ta avtomatsko spremeni v vseh zapisih. Ustrezno opravljena normalizacija podatkov je pogoj za pristop h konceptualnemu načrtovanju. 4.2.3 KONCEPTUALNO NAČRTOVANJE Pod konceptualnim načrtovanjem razumemo predstavitev uporabnikovih podatkovnih zahtev s pomočjo konceptualnega podatkovnega modela, ki predstavlja osnovo za kreiranje baze podatkov. Konceptualno načrtovanje je v primerjavi z logičnim in fizičnim načrtovanjem, ki mu sledita, daleč najbolj kritično, saj se posledice dobrega ali slabega načrta v začetni fazi vlečejo skozi vse nadaljnje faze in neposredno vplivajo na kvaliteto konceptualne sheme baze podatkov (Mohorič, 1997). Konceptualni model definira celotno informacijsko sredstvo na neki abstraktni ravni, ki vključuje vse objekte baze podatkov in povezave med njimi Ne vključuje pa nobenih elementov - gradnikov zgrajenega sistema, kot so organizacija datotek, načini doseganja podatkov, opisi enot računalniške strojne opreme in podobno (Grad in Jaklič, 1996). Konceptualni diagram toka podatkov smo izdelali z orodjem Microsoft Visio 2007 (slika 7). Ta program smo uporabili zato, ker omogoča povezano delovanje med različnimi tipi diagramov ter nadgrajevanje izdelanih diagramov. Diagram izdelamo z vlečenjem vnaprej definiranih gradnikov, ki jih program ponuja (gradniki na zeleni podlagi na sliki 7), na risalno površino. Izbrani gradnik z držanjem pritisnjene leve miškine tipke povlečemo na risalno površino in ga izpustimo na želenem mestu. Ob ponovnem kliku na gradnik se odpre pogovorno okno (okno na dnu slike 7), v katerem definiramo lastnosti gradnika. Slika 7: Ekranska slika programa Visio 2007 Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 12

Na osnovi sistemskega diagrama toka podatkov ter z normalizacijo podatkov smo izdelali konceptualni diagram toka podatkov službe vzdrževanja (slika 8), ki vsebuje vse entitete procesa upravljanja s strankami ter povezave med njimi. Zasnova konceptualnega diagrama toka podatkov sloni na predpisanih zapisih, ki delujejo kot osnova za nadaljnji razvoj. Poleg običajnih zapisov se sedaj beleži tudi zapise o popravilih naprav. TIP NAPRAVE VRSTA POPRAVILA STRANKA NAPRAVA POPRAVILO POSTA NAROCNINA/NAPRAVA TIP PROGRAMSKE OPREME POSTAVKA NAROCNINE VRSTA NAROCNINE Slika 8: Konceptualni model toka podatkov - osnovne entitete Pomen entitet prikazanih na sliki 8: STRANKA: zapisi o strankah POSTA: šifrant poštnih številk NAPRAVA: zapisi o vseh napravah TIP NAPRAVE: šifrant vrst naprav POPRAVILO: zapisi o popravilih VRSTO POPRAVILA: šifrant vrst popravil NAROCNINA/NAPRAVA: povezovalna tabela POSTAVKA NAROCNINE: zapisi o naročninah TIP PROGRAMSKE OPREME: šifrant vrst programske opreme VRSTA NAROCNINE: šifrant vrst naročnine Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 13

Povezave med entitetami ponazarjajo relacije med njimi, npr. stranka posreduje svoje podatke v zapis o napravah. Relacija med objektom in podsistemom pove, da je objekt del nekega podsistema, podsistem pa vsebuje objekte. Prav tako vse ostale povezave povedo tip razmerja med entitetami. Razmerja med entitetami bomo v nadaljevanju podrobneje opisali. 4.2.4 FIZIČNI ENTITETNO RELACIJSKI DIAGRAM Fizični entitetno-relacijski model vsebuje naslednje sestavne dele oziroma gradnike: entiteta: je vzorec za entiteto s podobnimi atributi in jih uporabljamo pri načrtovanju podatkov; atribut: je lastnost entitete; vrsta atributa: lahko so elementarni atributi, sestavljeni atributi, ki jih lahko razbijemo na elementarne atribute, ter izpeljani atributi, katerih vrednosti lahko izpeljemo iz ostalih atributov; vrednost atributa: atributi imajo lahko več vrednosti ali pa je v določenem trenutku celo nimajo, kar označimo z vrednostjo NULL; domena: je množica dopustnih vrednosti atributa; kandidat za ključ: je atribut, za katerega ne moreta imeti v nobenem trenutku dva primerka iste entitete enakih vrednosti; ključ: v primeru več kandidatov za ključ izberemo enega in ga imenujemo glavni ključ; sestavljeni ključ: uporabimo ga, ko entitete ni mogoče enolično opredeliti z enim atributom; povezava in tip povezave: uporabljajo se za povezavo med posameznimi entitetami in izražajo poslovna pravila. Fizični entitetno-relacijski model vzdrževanja elementov upravljanja s strankami (slika 9) smo izdelali z nadgrajevanjem konceptualnega modela toka podatkov tako, da smo v programu Visio 2007 aktivirali vse funkcije za izdelavo fizičnega entitetnorelacijskega modela ter vnesli atribute in njihove fizične lastnosti. Običajno pred fizičnim izdelamo logični entitetno-relacijski model (slika 9), ki se od fizičnega (tabela 3) razlikuje v tem, da fizični poleg ključev in atributov vsebuje še podatke o fizičnih lastnostih atributov. Torej, če bi iz fizičnega entitetno-relacijskega modela odstranili tretji stolpec entitet (tabela 3), bi dobili logični-entitetno relacijski model (slika 9). Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 14

VRSTE POPRAVIL PK Zap_st_pop Vrsta_pop TIP PROGRAMSKE OPREME PK ST_prog Opis_prog_opr POPRAVILA PK ST_pop POSTA POSTAVKA NAROCNINE FK2,I2 Zap_st_pop FK1,I1 SN_naprave Datum Opis Posojena_naprava Popravljeno PK Postna_stevilka Naziv_poste PK Tip_narocnine FK2,I2 St_nar FK1,I1 ST_prog Verzija Datum_aktivacije Aktivacijska_koda Kontra_koda Specialna_koda Opomba Jezik Racun NAROCNINA/NAPRAVA PK,FK1,I1 SN_naprave PK,FK2,I2 Tip_narocnine PK NAPRAVA SN_naprave FK1,I1 Zap_st_nap FK2,I2 St_stranke Datum_nakupa Opomba PK STRANKE St_stranke Naziv Naslov FK1,I1 Posta Telefon E-mail Fax Za_poslati VRSTE NAROCNIN TIP NAPRAVE PK St_nar Vrsta PK Zap_st_nap Ime_naprave Slika 9: Logični-entitetno relacijski model Logični in fizični entitetno-relacijski model vsebujeta vse primarne in zunanje ključe ter atribute entitet modela. Vzemimo na primer entiteto NAPRAVA (tabela 3), ki vsebuje podatke o napravah. NAPRAVA PK SN_naprave VARCHAR (50) FK1,I1 Zap_st_nap INTEGER FK2,I2 St_stranke INTEGER Datum_nakupa DATETIME Opomba VARCHAR(255) Tabela 3: Element fizično-entitetnega modela V prvem stolpcu entitete se nahajajo oznake primarnih in zunanjih ključev. Oznaka PK označuje primarni ključ. V entiteti v tabeli 3 je to atribut SN_naprave. V kolikor ni možno z enim atributom enolično označiti entitete, moramo uporabiti sestavljeni ključ. To je primarni ključ sestavljen iz več atributov. Šele ti atributi enolično označijo zapis. Zunanji ključ (foreign key) z oznako FK1 v entiteti NAPRAVA je atribut Zap_st_nap. Ta zunanji ključ je primarni ključ entitete TIP NAPRAVE. S pomočjo relacije med entitetama lahko pridobimo podatke o vrsti naprave. V drugem stolpcu so lastnosti entitet, v tretjem pa podatkovni tip in velikost posameznega atributa. Najpogosteje uporabljeni podatkovni tipi atributov so: datetime, char, varchar, longchar, integer, binary in bit. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 15

4.3 TABELE Tabele tvorijo jedro predmetov v bazi podatkov in so namenjene shranjevanju podatkov, vsi drugi predmeti baze podatkov pa vzajemno delujejo z eno ali več tabelami (Bradač, 2005). Po uvozu fizičnega entitetno-relacijskega modela v Microsoft Access, le-ta ustvari tabele (slika 9) z vsemi lastnostmi uvoženega modela, zato tabel ni potrebno posebej izdelovati. Če želimo ustvariti novo tabelo, to lahko storimo neposredno z orodjem Microsoft Access na tri načine: z vnašanjem podatkov, s čarovnikom in v pogledu načrta. Vsi trije načini so enostavni in uporabniku prijazni, saj je postopek izdelave podoben izdelavi entitete fizičnega-entitetno relacijskega modela. Slika 10: Tabele v Microsoft Access 4.4 UPORABNIŠKI VMESNIK Uporabniški vmesnik je zasnovan tako, da uporabniku omogoča prijazno pregledovanje in zapisovanje v bazo podatkov. Ob zagonu programa se pokaže osnovno okno (slika 11), preko katerega dostopamo do vgrajenih funkcij. Osnovno okno vsebuje povezave do obrazcev za vnašanje podatkov in pregledovanje. S pritiskom na gumb Stranke dela odpremo obrazec za vnašanje strank. Prav tako se ob pritisku na katerikoli gumb (razen gumba Izhod) odprejo osnovni obrazci ostalih pomembnih funkcije za vnašanje in nadzor strank, naročnin, popravil, naprav in izbiro naslovov za pošiljanje. S pritiskom na gumb Izhod zaključimo delo s programom. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 16

Slika 11: Slika glavnega menija 4.5 OBRAZCI 4.5.1 OBRAZEC ZA UPRAVLJANJE Z NAROČNINAMI V Accessu smo izdelali obrazce oziroma zaslonske maske, ki omogočajo prilagodljiv način vnašanja, pregledovanja, urejanja, brisanja in analiziranja podatkov. S pomočjo obrazcev je vnos podatkov enostaven, hiter in točen. Obrazci namreč vodijo uporabnika pri vpisu vrednosti posameznih atributov in hkrati omogočajo nadzor celovitosti podatkov, ki so odraz poslovnih pravil. Kot primer uporabe na osnovi štirih tabel izdelanega obrazca za enostavnejši vnos podatkov (slika 12) naj omenim uporabo padajočega seznama (combo box), ki omogoča uporabniku izbiro ustreznega podatka iz seznama, obenem pa takšen način preprečuje vnos podatka, ki za določeno polje ni dovoljen. Obrazec Naročnine na sliki 12 vsebuje v tri padajoče sezname, s katerimi uporabnik iz tabele Stranke izbere iskano stranko pri ostalih dveh pa izbere vrsto naročnine in tip programske opreme, ki jo ima stranka nameščeno na svojem računalniku. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 17

Slika 12: Obrazec za upravljanje z naročninami V prvem razdelku uporabnik izbere stranko za katero želi urejati naročnine. Nato v drugem razdelku izbere napravo na katero se naročnina nanaša, pri čemer izbira iz seznama kar omogoča hitrejšo izbiro naprave, kot pa bi jo padajoči meni. V tretjem razdelku pa se vpisujejo podatki o naročnini. vpisuje se vrsto naročnine, vrsto programa, verzijo, mesec aktivacije naročnine, aktivacijsko in kontra-kodo programa, specialno kodo za omogočanje posebnih nastavitev, razne opombe, jezik programskega vmesnika in ali je bil stranki izdan račun za naročnino. V zgornjem delu programa sta še dva gumba. Prvi Nova programska oprema omogoča vnos nove vrste programske opreme, ki jo izda TEXA. Drugi gumb je povezava do spletne strani TEXA, kjer se pridobiva kontra-kode za aktivacijo programa. Na koncu pa sta na vrhu še dva gumba, ki omogoča shranjevanje in izhod iz te funkcije v glavni meni. 4.5.2 OBRAZEC ZA VNOS STRANKE Preko obrazca na sliki 13 lahko vnašamo spreminjamo ali brišemo zapise o strankah. Pri tem je zelo pomembna prva vrstica, kjer mora uporabnik vnesti Številko stranke. Številka stranke je primarni ključ, ki se nanaša na ključ stranke, ki se uporablja v programu TIC in je izpisan na vsaki dobavnici ali računu, ki ga izda podjetje ANET, d.o.o. Ta ključ ima vsaka stranka, ki je kadar koli poslovala z našim podjetjem. Poleg tega pa se vpisuje še Naziv, naslov, pošto in elektronsko pošto, telefon in fax stranke. Preko dveh gumbov lahko hitro pobrišemo obstoječo stranko ali pa dodamo nova. Dodana pa sta tudi gumba za shranjevanje in izhod iz obrazca. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 18

Slika 13: Obrazec za urejanje stranke 4.5.3 OBRAZCI ZA PRODAJO IN VNOS NAPRAV Preko gumba NAPRAVE v glavnem meniju dostopimo do obrazca za prodajo naprav. Napravo, ki jo želimo prodati izberemo preko padajočega menija v razdelku NAPRAVE. Ko izberemo napravo se nam v spodnjem obrazcu (slika 14) izpiše serijska številka in naziv naprave. Če želimo napravo prodati stranki, moramo stranko predhodno vpisati v naš register, kjer ji določimo unikatno številko. Če je stranka že vpisana lahko mi preko dveh padajočih menijev izberemo stranko po njeni številki ali po nazivu stranke. Poleg tega pa lahko tudi določimo datum nakupa naprave, kar nam pomaga pri določanju garancijske dobe. Slika 14: Obrazec za prodajo naprav Če naprava ni na zgornjem seznamu v padajočem meniju to pomeni, da naprave še nismo vpisali. Zato moramo pritisniti na gumb VNOS NAPRAVE pri čemer se nam odpre obrazec na sliki 15. Preko tega seznama mi vpisujemo vse naprave, ki smo jih dobili k nam na zalogo. Tu moramo vpisati serijsko številko naprave, ki je zapisana na vsaki napravo, tip naprave in razne opombe, ki dopolnjujejo opis naprave, ki je na zalogi. Preko razdelka stranka mi lahko določamo napravo stranki vendar se zaradi večje preglednosti to opravlja preko prejšnjega obrazca. Preko te vrstice mi le popravljamo lastnika naprave, če se le ta zamenja. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 19

Slika 15: Obrazec za vnos nove naprave Vsake toliko pa TEXA razvije novo diagnostično napravo, kar pomeni nov tip naprave. Zato preko pritiska na gumb NOV TIP NAPRAVE na obrazcu za Vnos naprave dostopimo do obrazca za vnašanje novega tipa naprave, kjer vnesemo novo vrsto (slika 16). Slika 16: Obrazec za vnos novega tipa naprave Vsi ti obrazci vsebujejo tudi običajne gumbe za shranjevanje, dodajanje in brisanje vnosa ter za izhod iz obrazca. Z vsakim pritiskom na gumb za izhod se vnemo na prejšnji obrazec. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 20

4.5.4 OBRAZEC ZA VPISOVANJE POPRAVIL Preko spodnjega obrazca (slika 17) mi vpisujemo vse zahtevke za popravilo naprav, ki smo jih prejeli. Tu preko vrstice Naziv stranke izberemo stranko, ki je oddala zahtevo za popravilo, nato pa na prvem podobrazcu izberemo na katero napravo se to nanaša. Na drugem podobrazcu pa preko padajočega menija izberemo Vrsto popravila, dodamo Datum popravila, Opis, Posojeno napravo in označimo ali je naprava vrnjena iz popravila ali ne. Slika 17: Obrazec za vpisovanje popravil 4.6 POIZVEDBE Pri izvajanju poslovnih procesov na operativni ravni so običajna opravila vseh vrst, na nadzorni ravni pa je najbolj običajno opravilo poizvedovanje, pri čemer nas v nasprotju z operativno ravnjo le redko zanima posamezna entiteta, pač pa večinoma uporabljamo podatke o več entitetah oziroma poslovnih dogodkih. Zaradi različnih ravni organizacije se pojavljajo tudi različne potrebe po podatkih. S pomočjo poizvedb iz shranjenih podatkov pridobivamo želene informacije. Poizvedba je le pogled na informacije, shranjene v osnovnih tabelah. Torej to niso nove tabele v bazi, temveč le našteti kriteriji in pogoji za prikaz podatkov iz osnovnih tabel. Microsoft Access prikaže tiste podatke in kombinacije podatkov, ki ustrezajo postavljenim kriterijem in pogojem. Prikazani podatki se ne shranijo, shranjena je le poizvedba (kriteriji in pogoji), ki pri ponovnem poizvedovanju ponovno črpa podatke iz baze. Ko poizvedbo zapremo, se vsi zapisi poizvedbe zbrišejo in ne zasedajo pomnilniškega prostora. Enostavne poizvedbe izvajamo znotraj podatkov ene tabele in jih je priporočljivo izvajati v grafičnem načinu. Slika 18: Enostavna poizvedba Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 21

4.6.1 POIZVEDBA ZA ISKANJE NAROČNIN Pri bolj zapletenih poizvedba uporabljamo zapise iz mnogih tabel pri čemer se uporablja tudi kriterije za iskanje zapisov. Slika 19: Poizvedba za iskanje naročnin Na zgornji sliki 19 je izdelava poizvedbe za prikaz naročnin, ki so se pričele na določen mesec. Dodana sta tudi dva kriterija pri čemer prvi določa, da mora biti naročnina "mala" ali "velika" s čimer se izloči vse tiste, ki nimajo naročnine, drugi pa določa mesec naročnine. Za določanje meseca naročnine se pred odprtjem poročila, ki bazira na tej poizvedbi, odpre okno (slika 20), ki zahteva vnos meseca naročnine npr. januar, februar pri čemer ni pomembno ali so velike ali male črke. Slika 20: Vnos meseca naročnine Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 22

4.6.2 POIZVEDBA ZA POŠTO Pri svojem delu je potrebno vsaj 5 krat letno pošiljati ponudbe za nove naročninske akcije ali pa vabila na šolanja. Zato je bilo potrebno narediti obrazec, kjer se določi naslovnike kamor se bo pošiljala pošta, saj ni vedno potrebno pošiljati pošte vsem strankam. Za rešitev te težave sem izdelal dve poizvedbi. Pri prvi poizvedbi (slika 21), do katere dostopoma preko gumba Izbira za pošto v glavnem meniju, poiščem vse stranke, ki so v naši bazi podatkov in nato v zadnjem stolpcu Za poslati označimo ali naj prejme pošto ali ne. Slika 21: Poizvedba izbira za pošto Drugo poizvedbo pa uporabljamo za iskanje strank, ki smo jih predhodno označili kot naslovnike za pošto, vendar se ta poizvedba prikaže le kot poročilo narejeno za tisk, kjer je vse pripravljeno za tisk na kuverte (slika 22). To poročilo, ki bazira na poizvedbi, je dostopno preko gumba v glavnem meniju Tisk za kuverte. V zgornji levi kot sem dodal tudi žig podjetja, ki se samodejno prikaže na vsaki strani, ki jo bomo natisnili. Slika 22: Priprava za tiska na kuverte Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 23

4.6.3 POIZVEDBA ZA ISKANJE NOVEJŠIH NAPRAV Vsako leto TEXA izda posebno akcijo za posodobitev programa po ugodnejših cenah, ki omogoča strankam, ki imajo novejše naprave kot so Navigator Mobile, TXT, TXC, itd. in nimajo naročnine. Zato sem za hitrejši pregled strank naredil poizvedbo, ki poišče stranke, ki imajo novejše naprave, nimajo naročnine in ki imajo trenutno verzijo programa nižjo od zadnje, ki je na voljo. Slika 23: Poizvedba za iskanje novejših naprav Na zgornji sliki 23 imamo grafični prikaz te sestavljene poizvedbe, kjer sem uporabil tri kriterije za iskanje. Prvi kriterij izloči vse naprave, ki ne spadajo v TEXA akcijo, drugi kriterij izloči vse tiste, ki že imajo naročnino, zadnji pa zahteva od uporabnika, da sam vpiše zadnjo verzijo, ki je na voljo. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 24

4.6.4 OSTALE POIZVEDBE Za lažje upravljanje s strankami TEXA sem izdelal tudi enostavne poizvedbe, ki prikažejo vse aktualne naročnine, zalogo, stranke in popravila naprav. Aktualne naročnine so razdeljene na tovorne in osebne naročnine, ki se razlikujejo v tem ali ima stranka naročnino na program za diagnozo osebnih vozila ali za tovorna vozila. Poizvedbi vsebujeta dva kriterija za iskanje. Prvi kriterij izloča vse stranke, ki nimajo naročnine, druga pa poišče vse stranke, ki imajo programsko opremo za diagnozo tovornih vozil. Poizvedbi se prikaže preko poročila in sta dostopni preko gumbov Naročnina tovorni in Naročnina osebni. Slika 24: Primer poizvedbe za naročnino tovorni Ostale poizvedbe pa preko kombinacije table prikažejo aktualno zalogo diagnostičnih naprav, ki jih lahko prodamo, naprave, ki so v popravilu ali pa so bile že popravljene, ter seznam vseh strank pri čemer je tudi zapis o serijski številki in vrsti naprave, ki so jo kupili. Slika 25: Seznam strank Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 25

4.7 POROČILA Poročila so namenjena prikazovanju podatkov na zaslonu oziroma tiskanju podatkov iz baze podatkov, ki temeljijo na podatkih izbrane tabele ali poizvedbe. Poročila je možno oblikovati, vanje dodajati besedilo, slike, grafe itd. Na sliki 26 je primer enostavnega poročila, ki vsebuje podatke o novejših napravah, ki še nimajo naročnine. Slika 26: Poročilo o novejših napravah brez naročnine Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 26

Na sliki 27 je prikazano poročilo o veljavnih naročninah, kjer so izpisani podatki o strankah, napravah, programski opremi in njihovih trenutnih verzijah. Zaradi varstva podatkov so nazivi naših poslovnih partnerjev zakriti. Slika 27: Poročilo o veljavnih naročninah Slika 28: Seznam popravil naprav Na sliki 28 je seznam vseh popravil, ki so se opravljala na napravah naših strank. Na so podani opis, serijska številka naprave, ime naprave, datum prejema v popravilo, vrsta popravila, katero napravo se je posodilo in ali je popravilo zaključeno. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 27

Za vsako napravo posebej je potrebno izpolniti garancijski certifikat, kar je v nekaterih primerih po nepotrebnem zamudno, saj uporabnik ne ve točno kdaj se je naprava prodala, kakšen je naslov stranke in kakšna je serijska številka naprave. Zato lahko uporabnik preko klikne na gumb Garancijski certifikat v glavnem meniju pride do obrazca (slika 29), kjer izbere stranko za katero želi izdelati garancijski certifikat. Ko izbere stranko lahko klikne na gumb Ogled poročil, kar ustvari garancijski certifikat (slika 30) s podatki, ki jih je uporabnik vnesel v vseh drugih obrazcih. Slika 29: Obrazec za izbiro stranke Slika 30: Garancijski certifikat Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 28

Slika 31: Izpis naročnin po mesecih Na sliki 31 vidimo poročilo, ki nam izpiše vse naročnine, ki so se pričele na isti mesec. Mesec naročnin izberemo preko obrazca (slika 20), kjer v padajočem meniju izberemo mesec, kdaj se je naročnina sklenila. Zgornji obrazec nam pomaga pri nadzoru poteka naročnin, saj je potrebno stranko 2 meseca pred potekom obvestiti o poteku naročnine, drugače se naročnina samodejno podaljša, kar pa je lahko za ANET neugodno, saj podjetje TEXA v vsakem primeru izda račun. 4.8 DELITEV APLIKACIJE PREKO DROPBOX STREŽNIKA Dropbox client omogoča uporabniku da postavi katero koli datoteko v predvideno mapo, ki se nato sinhronizira z Dropbox internetno storitvijo in z vsemi ostalimi računalniki uporabnika na katerih je nameščen Dropbox client. Uporabniki lahko preko spletnega brskalnika ročno prenašajo datoteke, vendar se za to lahko uporablja tudi klasične oblike za prenos datotek kot so FTP ali priponke pri spletni pošti. Medtem ko Dropbox deluje kot storitev za shranjevanje, se predvsem osredotoča na sinhronizacijo in delitev med uporabnike. Omogoča povrnitev predhodno pobrisanih datotek iz Dropbox mape na katerem koli računalniku. Nadzor verzij pomaga uporabnikom, da vedo kakšna je zgodovina datoteke na kateri delajo, kar pomeni, da lahko na datoteki dela več uporabnikov, pri čemer se nam ni potrebno bati, da bi izgubili določene podatke. Zgodovina verzij je omejena na 30 dni. Na voljo pa je tudi plačljiva možnost za neomejeno zgodovino verzij. Zgodovina verzij se uskladi preko uporabe tehnologije delta encoding. Za ohranitev širine in časa, če se datoteka v Dropbox mapi uporabnika spremeni, bo Dropbox Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 29

prenesel le dele datoteke, ki se spremenijo. Čeprav Client verzija aplikacije nima omejitev glede velikosti datotek, je prenos datotek preko spleta omejen na 300 MB na datoteko. Da se prepeči brezplačnim uporabnikom, ki imajo 2 GB brezplačnega prostora, da bi ustvarili več brezplačnih računov, Dropbox vključuje tudi vsebino map, ki se delijo, ko izračunava skupno velikost. Dropbox uporablja Amazon's S3 sistem za shranjevanje datotek in SoftLayer Technologies za svojo infrastrukturo. Dropbox smo namestili na več računalnikov, ki se uporabljajo pri našem delu. Prav tako pa smo namestili aplikacijo tudi na prenosni telefon, ki deluje na operacijskem sistemu Android. S tem se izognemo postavitvi ali najemu strežnika, kar postavi stroške uporabe naše aplikacije na nič. Uporabnik lahko zato na terenu pregleduje in popravlja podatke v naši aplikaciji. Ti podatki pa se ob vzpostavitvi internetna povezave takoj sinhronizirajo s kopijami na ostalih računalnikih. Težava se lahko pojavi, če dva uporabnika hkrati uporabljati aplikacijo, ki je v mapi Dropbox. Ko oba uporabnika zapreta aplikacijo, se v Dropbox shranita dve kopiji programa pri čemer ima vsaka kopija sedaj dopolnjeno naziv z imenom računalnika na katerem je bila aplikacija odprta. Težava se pojavi če dva uporabnika hkrati vnašata podatke v aplikacijo. V tem primeru je potrebno preverite kaj se je vnašalo, da se lahko naredi ena aplikacija z vsemi podatki. 4.9 TESTIRANJE APLIKACIJE Razvito programsko opremo smo kot prototip vzporedno testirali v službi tehnične službe, kar pomeni, da smo poleg razvite aplikacije uporabljali tudi Excel preglednico. Uporaba programske opreme se je sprva zaradi prevelikega števila gumbov in pomanjkljivih obrazcev pokazala kot nepregledna. Začetni meni je vseboval preveč gumbov za dostop do obrazcev, nekatera poročila niso vsebovala vseh podatkov, ki so pomembni za pregled nad strankami. Manjkala so določena poročila, kjer bi bili izpisani podatki, katere lahko v Excel preglednici hitro najdemo. Na primer, v začetni fazi obrazca za izpis naročnin po mesecih še ni bilo, kar nam je otežilo nadzor nad potekom naročnin, saj je potrebno za podaljšanje naročnine stranko 2 meseca prej obvestiti o tem. Med testiranjem smo morali vsebinsko tudi spreminjati tabele. Tak primer so naročnine, kjer smo morali v tabelo Postavka narocnine dodati nov atribut Racun, ki nam pove ali je bil stranki poslan račun za naročnino. V tabelo stranke pa smo morali dodati atribut Davcna stevilka saj je ta podatek pomemben za izpis garancijskega certifikata. Zaradi prekomernega števila gumbov na začetni strani uporabnik ni točno vedel preko katerega gumba lahko dostopi do želenega obrazca. Zato smo poskušali nekatere obrazce združiti, kar bi povečalo preglednost pri vnosu in nadzoru. Povezave do nekaterih obrazcev pa smo preprosto le prestavili na drugi nivo, kar pomeni, da je uporabnik do njih lahko dostopal le preko določenega obrazca. Posebnih težav pri testiranju ni bilo, se je pa ta faza izkazala za dolgotrajno, saj so se sproti pojavljale pomanjkljivosti zaradi katerih je bilo potrebno aplikacijo neprestano dopolnjevati. Razlog temu so nepopolne zahteve v začetni fazi razvoja aplikacije, kjer cilji niso bili točno določeni. Nejc Šter: Razvoj aplikacije za upravljanje s strankami v podjetju Anet, d.o.o. stran 30