WatchWinders

From ICO wiki
Jump to navigationJump to search

Meeskond

Toomas Juhkov, toomas.juhkov@gmail.com
Tiit Kuuskmäe, tiit.kuuskmae@gmail.com

Tegevuste logi

08.02.2018 - meeskonna loomine, kokkuleppe sõlmimine teema osas
10.02.2018 - õppejõu teavitamine koos esmase andmemudeliga
15.02.2018 - lõpliku andmemudeli valmimine(versioon 5)
18.02.2018 - õppejõu kinnitus, et teema ja meeskond kvalifiseeruvad
22.02.2018 - viki lehe loomine ja analüüsi koostamise alustamine

Kasutatavad metoodikad

WatchWinders projektis plaanime kasutada peamiselt kaht metoodikat:

1. läbiv retsenseerimine (üks paariline teeb midagi valmis ja teine teeb sellele ülevaatuse; üksus lisatakse kui ülevaatus on lõplikult läbitud ning osapoolte vahel on saabunud konsensus)
2. paaris programmeerimine (istume ühe masina taha maha ja kirjutame kahekesi)

Tulenevalt kaugõppe formaadist saab ülekaalus olema esimene variant. Teist metoodikat kasutame nende osade kirjutamiseks, mille puhul võib arvata, et nende lahendamine on keeruline või et lahenduskäike võib olla väga erinevaid. Püüame jooksvalt siinses vikis kajastada ka seda, millise metoodika järgi üks või teine osa valmis.

Projekti osad

Alljärgnevalt anname ülevaate projekti osadest:

(1) andmemudel,
(2) analüüs,
(3) veebiteenus,
(4) klientrakendus,
(5) XML.

Projekti osad on meie viki lehel kirjeldatud valmimise järjekorras.

Andmemudel

Andmemudeli koostamisel lähtusime õppejõu poolt ette antud kriteeriumist, mille kohaselt peab olema vähemalt 6 põhiolemit (tähistatud tumesinisega), mille hulgas ei tohi sisalduda kasutajate tabelit. Antud juhul oleme kavandanud luua 7 põhiolemit: "Watch" (mingi konkreetne kell), "Manufacturer" (nii kellade kui karpide tootjad), "TimeLabBoxes" (konkreetsed kellakarbid), "Settings" (karbi seaded, mis on seotud aga konkreetse kellatüübiga), "Media" (kui karbi ühe külje külge kinnitatakse ekraan, siis seal piltide ja videote näitamiseks), "Support" (nii karpide kui kellade parandajad).

Lisaks sellele defineerisime neli abiolemit: "WatchType", "Error", "UserType" ja "Offers". Ülejäänud olemite näol, mis skeemil on märgendatud halliga, on sisuliselt tegemist vahetabelitega.




Andmemudel valmis (1) metoodika abil, vt lähemalt projekti metoodikate sektsioonist.

Veebiteenuse analüüs

Alljärgnevalt esitame kellakarpide infosüsteemi analüüsi järgmistes osades:

(1) olukorra kirjeldus ja eesmärk
(2) nõuded ja funktsionaalsus
(3) 'must have' funktsionaalsused
(4) 'nice to have' funktsionaalsused

Võimalik, et meie lõpptulemus erineb mõnes osas esitatud analüüsist. Seda olenevalt sellest kui edukalt meil õnnestub plaanitud funktsionaalsusi realiseerida. Erisusi plaanime käsitleda vastavas 'post production' jaotuses, kus loendame ka projektist kogunenud peamised õppetunnid.

Olukorra kirjeldus ja eesmärk

Esmalt vaatleme kellakarpide tähendust nende kasutajatele, seejärel loodavat infosüsteemi. Mehhaaniliste käekellade kollektsionääride huvi kellakarpide vastu on mitmetine. Esmalt muidugi arvepidamise aspekt – mitu kella, missuguste omaduste ja eripäradega. Teisalt soov eksponeerida oma kogusid kolleegidele ja sõpradele. Kellakarpidega täidetud sein või riiulid loovad selleks suurepärase võimaluse. Kolmandaks praktiline vajadus tagada kellavedrude õige vinnastatuse aste. Kaasaja mehhaanilised kellamehhanismid võimaldavad kellakorpuse füüsilisel liigutamisel kellavedru automaatselt vinnastada. Näiteks piisab kella kinnitamisest käele, et see hakkaks end käe liigutamisel üles keerama. Kuid kuidas keerata üles nö seisvat kella? Selleks on tänapäeva kellakarpides elektrimootor, mis tagab kella liigutamise vastavalt kellatüübile ettenähtud ööpäevase graafiku alusel. Kuidas juhtida sellist karpi ja omada jooksvat ülevaadet kõikidest oma karpidest, nende tehnilisest seadistusest ja kollektsiooni kuuluvatest kelladest näiteks tööreisil välisriigis?

Nõuded ja funktsionaalsus

Loodav kellakarpide infosüsteem võimaldaks karbi omanikel hallata klientrakenduse kaudu karbi käitumist, monitoorida nii olemasolevaid kellasid kui karpe ning pidada ühendust asjakohaste hooldajate ja tootjatega. Teisalt oleks tootjatel ja hooldajatel võimalus püsida oma lõppklientidega võimalikult lähedases suhtes - uuendada jooksvalt kontaktandmeid ja edastada personaalseid teateid.

Must have

  • veebiteenus, mis suudab suhelda nii karpide kui klientrakendusega
  • lõppkasutaja ja administraatori vaated:
1. administraatorid näeksid kõike süsteemiga seonduvat ja saaksid muuta seadeid kogu andmemudeli ulatuses
2. lõppkasutajad saaksid hallata oma karpe ning nendega seotud kellasid

Nice to have

  • ülejäänud kasutajagruppide vaated:
1. kellade ja karbi tootjad saaksid lisada oma tooteid koos metaandmetega
2. hooldusega tegelevad ettevõtted saaksid lisada ja täpsustada oma tugipunktide andmeid
  • karbi külge planeeritud ekraani infotehnoloogilise lahenduse realiseerimine veebiteenusena

Süsteemi analüüs valmis (1) metoodika abil, vt lähemalt projekti metoodikate sektsioonist.

Kasutatud kirjandus ja allikad

1. Albahari, Joseph, Albari, Ben 2017. C# 7.0 in A Nutshell. Sebastopol: O’Reilly
2. MariaDB Foundation. MariaDB. Kättesaadav:https://mariadb.org/
3. Martin, Robert 2018. Clean Architecture. Boston: Pearson Education