Meeskond: ÄraSööKüpsiseidVoodis

From ICO wiki

Liikmed

  • Simo Jaanus
  • Artur Tammiste
  • Valdo Taevere
  • Kristina Rästas

Idee

Rühma eesmärgiks on luua verepanga programm. Kasutajad saavad end registreerida, programmis salvestub oluline info:

  • veregrupp
  • Rh(reesus)- faktor
  • doonori nimi
  • aadress
  • telefoni nr

Antud info põhjal on võimalik teha otsinguid ning leida sobilik doonor. Samuti on võimalik vaadata, kui palju on saadaval erinevate veregruppide verd.

Blogi

  • 26.09 Meeskonna kokkupanek
  • 13.10 Idee välja valimine
  • 05.11 Analüüsi tegemine
  • 12.11 Retsensiooni tegemine
  • 04.12 Prototüübi alustamine
  • 17.12 Prototüübi algne valmimine

Kasutatav tehnoloogia

  • C#
  • WPF
  • TFS
  • LINQ

Lõpptoode

link

TFS

link

Analüüs

Meie rühma analüüs on nähtav lingil.

Must have

  • Kasutajaliides
  • Registreerida uus doonor
  • Andmebaas, kus leiab infot veregrupi, reesusfaktori, doonori nime, aadressi, telefoni numberi kohta.
  • Lisada erinevaid veregruppe andmebaasi
  • Eemaldada verd andmebaasist
  • Otsing, mille abil on võimalik leida vastav doonor või vastava veregrupi laojääki
  • Sorteerida andmed kategooriate kaupa
  • Uuendada pidevalt laojääki vastavate veregruppide kogusest

Nice to have

  • Hoida doonori meditsiinilisel taustal silma peal, et vastavate haiguste avastamisel, kontrollitakse eelnevalt annetatud verd.
  • Automaatselt saadetakse sõnum doonorile, kui vastava veregrupi verekogus on vähenemas.
  • Doonorivaade- iga doonor saab sisse logida ning hoida silma peal enda andmetel ja annetustel.
  • Lisamärkmed doonorite kohta
  • Ilus disain
  • Veri eemaldatakse automaatselt kui see on aegunud - punalibled säilivad vastavas lahuses kuni 42 päeva.

Dokumentatsioon

Arendusprotsessi kirjeldus

Kõigepealt toimus meeskonna kokkupanek. Algselt 4-liikmeline meeskond muutus juba enne prototüübi esitlemist 3-liikmeliseks. Edasine samm oli projekti idee välja mõtlemine. Kaalusime erinevaid variante ning lõpphääletuse tulemusena otsustasime, et kõige teostatavam ning parimate väljavaadetega on verepanga programmi loomine.

Idee paigas, oli vaja täpselt paika panna must-have ja nice-to-have funktsionaalsused. Analüüsida suuremaid probleeme, mis võivad ette tulla. Kõige olulisem samm oli muidugi toote valmimine. Alustasime TFS-i loomisega ning kui kõik olid süsteemi käima saanud, siis algaski programmeerimine. Raamatukogus sai istutud nii mõnedki pikad tunnid. Kõigepealt esmatähtsate funktsioonide valmis tegemine ning seejärel testimine-testimine-testimine.

Tiimitöö alles jäänud kolme liikme vahel sujus ning suurem ja eeskujulikum osa oli prototüübi esitlemise ajaks valminud. Mõningaid kinnijäämisi tuli küll ette, eriti andmebaasist päringute tegemise koha pealt, kuid üldiselt toimus projekti valmimine sujuvalt. Edasi oli vaja teha veel kasutaja vaade.

Must-have poole pealt sai laias laastus teostatud kõik. Programmi käivitamisel tuleb ette kasutajaliides, mis võimaldab sisse logimist. Vastavalt sellele, kas sisse logib arst või doonor, ilmub uus vaade. Arstid saavad doonoreid lisada ning andmeid muuta. Andmete haldamiseks on loodud andmebaas, kus säilitatakse infot vere ning isikute kohta. Andmebaasi on võimalik lisada erinevates kogustes erinevaid veregruppe ning verd vastavalt ka eemaldada. Nimevälja on lisatud otsingu funktsionaalsus. Trükkides nime, otsitakse andmebaasist otsingusõnale vastavad vasted. Andmeid on ka sorteeritud. Kasutajavaates on kasutajale kuvatud just tema andmed veredoonorluse kohta. Nice-to-have nimekirjast jõudsime teha doonorivaate koos sisse logimisega. Veel oli vaja koodi kommenteerida ja ilustada.

Lahenduse kirjeldus

Projekti tulemusena loodi Windows Presentation Foundation tehnoloogial põhinev rakendus, mille abil on võimalik pidada arvet doonorite ning vere doonorluse kohta. Rakenduses on loogika ja kood jaotatud Mode-View-ViewModel struktuuri järgi, päringute tegemiseks kasutatakse LINQ komponenti ning andmete hoiustamiseks tuleb igas klient-arvutis luua Microsofti SQL andmebaas. Lahendus on jaotatud kaheks. Rakendus Verepank on back-end, sisaldades endas domeene, migratsioone ja service kihti. Verepank.WPF on käivitatav programm ning sisaldab kasutajaliidese vaatemudeleid.

Andmebaas

Rakenduse andmebaasis on 4 tabelit. Nõutud oli küll 6, kuid ühe liikme kadumisel saime prototüübi kaitsmisel tagasisideks, et pole mõtet väga keeruliseks enam asja ajada ning seetõttu otsustasime jätta 4.

Tabelid on:

 • Bloods – sisaldab unikaalset ID-d, veretüüpi ja reesust
 • HumanBloods – seostab andmed inimeste ning vereandmete vahel
 • People – sisaldab andmeid inimeste kohta
 • RemoveBloods – sisaldab andmeid selle vere kohta, mis on andmebaasist eemaldatud

Teenused:

 • IPersonService
 • BaseService
 • PersonService

Vaatemudelid:

 • BaseVM
 • LoginVM
 • MainWindowVM
 • RemoveBloodVM
 • StatistickWindowVM
 • UserStatVM

Kasutusjuhend:

Programmi käivitamisel avaneb sisselogimisaken, kus küsitakse salasõna ja parooli. Admin kasutajaks on hetkel „arst“ parooliga „arst“. Sedasi nupule klikates ja sisse logides avaneb uue persooni lisamise vaade, kus on võimalik andmeid sisestada ja muuta. Andmete lisamiseks tuleb lihtsalt täita kõik väljad ning vajutada lisamise nupule.

Adminina on võimalik veel minna statistika vaatesse, klikates vastaval kohal. Selles aknas kuvatakse kasutajale erinevad andmed.

Hetkel sai sisse logimine kasutaja jaoks tehtud nii, et eesnimi on kasutajanimi ning parool on perekonnanimi. Kui andmebaasis on selline inimene olemas, siis avaneb vaade, kus on antud isikul võimalik näha oma veretüüpi, reesust ja kogust palju on aja jooksul verd annetatud.