Meeskond Taksobaas

From ICO wiki
Revision as of 16:05, 16 December 2012 by Mkirillo (talk | contribs)
Jump to navigationJump to search

Kirjeldus

Ülivägev andmebaas-rakendus taksodest (Algne idee meeskonna projektijuhi kunagisest katki jäänud projektist Eesti Politseile). Põhieesmärk on anda kiirelt infot taksode, juhtide, firmade ja nende litsentside kohta.

Tööjaotus

  • Marek Kirillov - Projektijuht,osa analüüsist,wiki lehe haldamine,kasutajaliides ja login, kasutajatüübi määramine, andmebaasiga seotud meetodid, andmete kuvamise lahendus, otsing,
  • Rando Laisaar - Osa analüüsist,seadete aken, kasutajate haldamise aken, logiaken, disain , prototüübi retsensioon
  • Siim Treilmann - Osa analüüsist,analüüsi retsensiooni koosatamine,profiiliaken, printimise funktsioon,
  • Tiit Tallermaa - Osa analüüsist, kasutajate haldamise funktsioon,

Tööd jaotame rakenduse loomise käigus.

Analüüs

Rakendus Taksobaas sisaldab endas andmebaasi taksode kohta, mis on ideejärgi mõeldud kasutamiseks politseile või mõnele muule korrakaitseüksusele. Taksobaasi eesmärk on teha võimalikult lihtsaks ja kiireks kontroll taksode õigsuse, taksojuhtide litsentside ja rikkumiste üle. Rakendusel on kolm kasutajagruppi: superadmin, registreeritud kasutaja ja registreerimata kasutaja. Kõik järgnevalt kirjeldatud lõikudes kuulub enamjaolt must-have funktsionaalsuste alla.
Registreerimata kasutajal on peale rakenduse käivitamist võimalik vaadata rakenduse avaaknas ilmuvaid admeid, neid järjestada omale meelepärassesse järjekorda ning kasutada otsingut. Otsing otsib kõikide andmete seast valitud märksõna ja kategooria järgi välja andmeid (näiteks: märksõna „Peeter“ ,kategooria „eesnimi“ ; märksõna „kehtetu“ , kategooria „kehtivus“ jne). Märksõna sisestatakse vastavalt textbox'i ningi kategooria saab valida dropdown-listist. Sellega registreerimata kasutajate õigused ka piirduvad.
Registreeritud kasutajal on lisaks eelnevalt kirjeldatule rohkem võimalusi. Rakenduse käivitamisel küsitakse eelnevalt määratud kasutajanime ja parooli, mille maksimaalseks pikkuseks on 15 tähemärki. Edasi kuvatakse aken, milles on kasutajal võimalik valida kahe „tab“i vahel. Esimesel toimub andmete kuvamine ja otsing nagu eelnevas lõigus kirjeldatud. Lisaks sellele on võimalik kustutada valitud andmeid ja neid printida. Andmerea peale klikkides avatakse uus aken, milles kuvatakse tabelis olevaid andmeid ning lisainformatsiooni konkreetse sisestuse kohta. Avanud akent võib võtta kui konkreetse isiku profiili, kus kajastatakse temaga seostuvaid andmeid. Seda on võimalik muuta, klikkides nupule muuda (mis aktiveerib tekstiväljad) ja salvestada (update käsklus andmebaasi) ning kustutada ja profiililehte ka printida. Lisaks on esimesel „tab“il veel nupp, mis uuendab tabeli sisu ning võimalusel ka muid Nice-To-Have funktsionaalsusi, mis on kirjeldatud analüüsile järgnevas loendis. Teine „tab“ sisaldab endas kõikvõimalikke taksodega seotud andmete lisamise võimalusi. Tühju kirjeid pole võimalik lisada ning tärniga on märgitud väljad, mille täitmine on kohustuslik.
Superadmin on kasutaja, kes omab kõikidele eelnevalte kirjeldatud võimalusetele veel võimalusi vaadata sisse/väljalogimise ja andmete muutmise, otsimise logi ning registreerida uusi ja muuta vanu kasutajaid. Superadmin siseneb sarnaselt registreeritud kasutajale rakendusse eelnevalt määratud kasutajanime ja parooliga. Superadmini vaates ilmuvad lisanupud „Kasutajate haldamine“ ja „Logi“.
Lisaks tabidele kuvatakse alati rakenduse all servas kasutaja olekut (näiteks: „Oled registreeritud kasutaja režiimis.“, „Oled tavakasutaja režiimis, logi sisse selleks,et muuta andmeid“ jne) ning kaks nuppu: Logi Sisse/Välja(muutub sõltuvalt kasutaja olekust) ja Sulge. Välja logimisel kuvatakse taas Sisselogimise akent, sulgemisel aga logitakse baasist välja ja sulgetakse kogu rakendus. Lisaks on kõikidel kasutajatel võimalik muuta andmebaasi serveriga seotud andmeid (kui näiteks tekib vajadus andmebaas teise serverisse kolida) ning on ka võimalus nende andmete salvestamiseks, kuid see kehtib ainult superadminile, selleks , et kui tavakasutaja kogemata midagi ära muudab ja salvestab , siis ta ei saa enam baasile ligi. Kui aga neid ära ei salvestata, siis piisab tavakasutajal programmi taaskäivitamisest,et uuesti andmetele ligi pääseda.

Must-Have funktsioonide loend:

  • Sisselogimise süsteem
  • Erinevad kasutajatüübid
  • Otsing ja andmete kuvamine
  • "Profiiliakna" kuvamine
  • Tabide kuvamine
  • Lihtne disain
  • Andmete lisamine
  • Eelistuste salvestamine (järgneval käivitusel ei ole seaded algseks muutnud vaid säilitavad oma muudetud oleku) (registreeritud kasutajale)
  • Andmete järjestamise valik (dropdown-list)
  • Osaliselt on logi pidamine ka nice-to-have funktsionaalsus (superadminile),



Nice-to-Have funktsioonide loend:

  • Printimine tabelist ja profiilist (registreeritud kasutajale)
  • Otsing, kus ei pea valima kategooriat vaid otsitakse kõikide tabeli veergude seast. (registreeritud kasutaja)
  • Eelistused, kus saab vahetada rakenduse teemat ja määrata tabeli automaatne uuendus ning ajavahemik, millal tabel ennast uuendab (registreeritud kasutajale)
  • "Fancy" disain
  • Kasutaja automaatne blokeerimine kui parooli on järjest sisestatud valesti 3 korda
  • Lisaaken, reaalajas kommunikatsiooniks (registreeritud kasutajale)
  • Teema mitte ei muuda ainult värve ja fonte vaid ka kujundust (registreeritud kasutajale)
  • Libataksod ja kehtetu litsentsiga taksod eristatavad
  • Sisselogimisel „jäta parool meelde“ checkbox (registreeritud kasutajale)
  • Pildi kuvamine profiilis (registreeritud kasutajale)
  • Serveriga ühendamiseks vajalke andmete vahetamine/sisestamine (kõikidele kasutajatele)

Nice to have funktsionaalsustest teeme valmis nii palju kui ajaliselt jõuame ja oskused lubavad. Eelnevalt keskendume Must Have osa loomisele.

Retsensioon

Retsensioon on koostatud meeskonna Kajarist[1] analüüsi kohta.

Prototüüp

Rakenduse prototüübi ja selle kasutamiseks vajalikud failid: [2]. Selleks, et rakendust kasutada on vaja SQL Serverit (2012) ja SQL Server Management Studiot. Lahtipakkimisel tekkivas kaustas on kaks SQL scriptifaili. Esmalt tuleb luua SQL Server Management Studios uus andmebaas nimega "Taksobaas". Seejärel kasutada "Andmebaaside_tekitamine" scripti ,et luua tabelid andmebaasi ning "Admin_kasutaja_lisamine" scripti, et tekitada üks administraatoriõigustega kasutaja, millega saab rakendusse siseneda. Kasutajanimi: "admin" , parool: "parool".

Rakendusel puuduvad:

  • Printimise funktsioon (kood peaaegu olemas)
  • Seadete funktsioon (ideeliselt olemas)
  • Kasutajate muutmise ja blokeerimise funktsioon (ideeliselt olemas)
  • Andmete järjestamise funktsioon (kood peaaegu olemas)
  • Stiili muutmise funktsioon (ideeliselt olemas)
  • Korralik disain (kood peaaegu olemas)
  • Kasutajaandmete krüpteerimine
  • Automaatne uuendamine
  • Tuleb veel erinevaid funktsionaalsusi,lisaks nendele ja nice-to-have'idele, juhul kui ajaliselt jõuab.


Rakendusel töötavad:

  • Kasutaja autentimine ja kasutajatüübi määramine
  • Erinevate väljade kontrollid ja veateated (Näiteks andmete lisamisel kohustuslikkude väljade mittetäitmisel, kasutaja lisamisel kui kasutajanimi juba olemas või sisestatud paroolid erinevad, sisselogimisel vale parooliga jne)
  • Andmete lisamine
  • Andmete otsimine (kõikide sisestuse hulgast)
  • Litsentsi kehtivuse kontroll
  • Profiiliaken
  • Andmete muutmine profiiliaknas
  • Uuendamine
  • TB nupu alt, (Administraatoriõigustega kasutajaga jaoks) logi vaatamine/pidamine ning kasutajate lisamine ja kustutamine


Lõpptoode

Failid

Kasutusjuhend

Arendusprotsessi kirjeldus

Lahenduse kirjeldus

Logi

  • 22.10.2012 - Wiki lehe loomine
  • 29.10.2012 - Arutlus üldise idee ja kasutajaliidese üle + visuaalne skeem
  • 02.11.2012 - Analüüsi osade kokku panemine
  • 04.11.2012 - Analüüsi viimistlus ja wiki lehe uuendamine
  • 06.11.2012 - Sisselogimise ja kasutajatüübi määramise funktsiooni loomine
  • 11.11.2012 - Retsensiooni koostamine
  • 17.11.2012 - Üleminek MySql'ilt Linq'le
  • 18.11.2012 - Andmete lisamise aken ja funktsioon, profiilivaate, seadete, logi, kasutajahaldamise ja -lisamise aknad. Erinevate meetodite katsetamine.
  • 24.11.2012 - Andmete kuvamise funktsiooni loomine, disain, printimise funktsioon katsetamine, kasutajahalduse testimine
  • 25.11.2012 - Otsingu funktsioon, kasutajate lisamise funktsioon, uuendamine, logi salvestamine ja kuvamine,
  • 26.11.2012 - Profiililehe funktsioon, kasutajate kustutamise funktsioon, Profiililehe muutmise ja salvestamise funktsioon
  • 02.12.2012 - Prototüübi retsensioon
  • 10.12.2012 - Printimise funktsiooni lisamine, disaini silumine, testimine, turvaaukude otsimine
  • 12.12.2012 - Ideede kogumine ja meetodite testimine paroolide krüpteerimiseks
  • 16.12.2012 - Rakenduse testimine. Dokumentatsiooni tegemine ja vormistus

Pildid

?
Taksobaas - Algne visuaalne skeem asjast (Tehtud maailma parima fototöötlus programmiga MS Paint)