PlantWise: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Anisepp (talk | contribs)
No edit summary
Anisepp (talk | contribs)
No edit summary
Line 48: Line 48:


====Andmemudel====
====Andmemudel====
1. Users
2. Plants - plant library
3. UserPlantsGroups
4. UserPlants
5. PlantWateringHistory
6. Fertilizers
7. FertilizingHistory


====Kasutuslugu 1 - rakenduse tutvustuse lugemine====
====Kasutuslugu 1 - rakenduse tutvustuse lugemine====

Revision as of 23:35, 5 November 2017


Rühmatöö aines Programmeerimine C# keeles

Liikmed

  • Allar Vendla - projektijuht
  • Anita Sepp - front-end arendaja
  • Gert Vesterberg - nooremarendaja

Idee

Luua Androidi rakendus, mis võimaldab hallata erinevaid taimi nii koduses kui ka töökeskkonnas: salvestada taimede kirjeldusi, väetamis- ja kastmissagedusi, märkida taim kastetuks ning (nice-to-have funktsionaalsusena) saada meeldetuletus järgmise kastmisaja saabumise kohta.

Tehnoloogiad

Rakenduse näol on tegemist pilvepõhise teenusega, kus kasutajakontod ning nendega seonduv info on salvestatud serverisse ning mobiilirakendus saab ning salvestab infot üle REST API.

  • C# / ASP.NET
  • SQL andmebaas (HSQL/PostgreSQL)
  • Xamarin
  • Git

Analüüs

Must have

  • Kasutajaks registreerumine.
  • Eelnevalt ette salvestatud taimedega andmebaas ehk taimede raamatukogu.
  • Erinevate taimegruppide lisamine, nt. taimed tööl, kodus, maal.
  • Taimegruppide muutmine, kusutamine.
  • Konkreetsete taimede lisamine.
  • Konkreetsete taimede muutmine, kustutamine.
  • Ülevaade taimedest.
  • Väetamise ja kastmise kuupäeva uuendamine.

Nice to have

  • Taime kastmise ajaloo kuvamine.
  • Foto lisamine konkreetse taime ning grupi juurde.
  • Kasutajal endal võimalus taimede raamatukogu hallata. Taimi lisada, muuta, eemaldada.
  • Meeldetuletused kastmis- või väetamisaja saabumise kohta.
  • Teise kasutaja lisamine enda loodud taimegruppi kasutajaks. Näiteks saaksid elukaaslased koos hallata kodus olevaid taimi või kolleegid tööl olevaid taimi.

Edasiarenduse võimalused

  • Rakenduse ühendamine niiskusanduritega.
  • Ühendumine Facebooki kaudu.
  • Kogu andmebaas viia üle blockchaini.
  • Tulevikus võiks rakendus kasutada big datat ja machine learningut, et tuvastada taime kastmise vajadust.

Mis võib osutuda problemaatiliseks?

  • Kuna puudub varasem mobiilirakenduste loomise kogemus, siis võib osutuda suureks väljakutseks intuitiivse ning selge UI loomine.
  • Kuna pole varem nimetatud tehnoloogiaid kasutanud võib ka aeg saada murekohaks, sest ka väikse asja tööle saamine võib võtta plaanitust kauem aega.

Andmemudel

1. Users 2. Plants - plant library 3. UserPlantsGroups 4. UserPlants 5. PlantWateringHistory 6. Fertilizers 7. FertilizingHistory

Kasutuslugu 1 - rakenduse tutvustuse lugemine

Uue kasutajana soovin lugeda PlantWise rakenduse kohta, et saaksin paremini aru, millega on tegu.

  • Kasutaja avab rakenduse.
    • Avanenud 1. vaates on kaks lahtrit "Username", "Password" ja "Login" nupp. Lehe ülemises osas on menüüriba (iga vaate osa), mis koosneb PlantWise logost vasakul ning ☰ (menüü) nupust paremal.
  • Kasutaja vajutab ☰ nupule.
    • Avaneb kaks valikut "Info" ja "Register".
  • Kasutaja vajutab "Info" nupule.
    • Avanenud 2. vaates on rakendust tutvustav tekst ning menüüriba.

Kasutuslugu lõppeb.

Kasutuslugu 2 - kasutajaks registreerumine

Uue kasutajana soovin registreeruda PlantWise kasutajaks, et saaksin paremini hallata enda taimi.

  • Kasutaja avab rakenduse.
  • Kasutaja vajutab ☰ nupule ja valib "Register".
    • Avanenud 3. vaates on kolm lahtrit "Username", "Password", "Retype password" ja "Register" nupp.
  • Kasutaja sisestab kasutajanime, mis on juba kasutusel.
    • Kuvatakse veateade, et kasutajanimi on juba kasutusel.
  • Kasutaja sisestab erinevad paroolid.
    • Kuvatakse veateade, et paroolid ei kattu.
  • Kasutaja pole kõiki välju täitnud ning vajutab "Register" nupule.
    • Kuvatakse veateade täitmata väljade kohta.
  • Kasutaja sisestab korrektselt kõik väljad ja vajutab "Register" nupule.
    • Kasutaja on registreeritud ning ühtlasi ka kohe sisse logitud.

Kasutuslugu lõppeb.

Kasutuslugu 3 - sisselogimine

Registreeritud kasutajana soovin siseneda PlantWise rakendusse, et saaksin hakata enda taimi haldama.

  • Kasutaja avab rakenduse.
  • Kasutaja sisestab "Username" lahtrisse enda kasutajanime ning "Password" lahtrisse vale parooli.
    • Kuvatakse veateade, et parool on vale.
  • Kasutaja täidab korrektselt "Username" ja "Password" lahtrid ning vajutab "Login" nupule.
    • Kasutaja on sisse logitud.

Kasutuslugu lõppeb.

Kasutuslugu 4 - uue taime lisamine raamatukokku

Registreeritud kasutajana soovin lisada uusi taimi raamatukokku, et saaksin hiljem konkreetse taime lisamisel kasutada raamatukogus leiduvat informatsiooni.

  • Kasutaja logib rakendusse sisse.
    • Kui kasutajal ei ole varasemalt taimi lisatud, siis avaneb 4. vaade tekstiga, et kasutajal ei ole veel ühtegi taime, juhised, kuidas edasi toimida ning nupp "Add new".
  • Kasutaja vajutab ☰ nupule.
    • Avaneb viis valikut "My plants", "My groups", "Library", "Info" ja "Log out".
  • Kasutaja vajutab "Library" nupule.
    • Kui kasutaja taimede raamatukogu on tühi, siis avaneb 5. vaade, kus on tekst, et kasutaja raamatukogu on tühi ning nupp "Add new".
  • Kasutaja vajutab nupule "Add new".
    • Avaneb 6. vaade taime lisamise vormiga, kus on neli välja "Plant name", "Plant description", "Watering interval", "Fertilize interval" ning nupud "Save" ja "Cancel".
  • Kasutaja täidab korrektselt kõik väljad ning vajutab "Save" nuppu.

Kasutuslugu lõppeb.

Kasutuslugu 5 - raamatukogus oleva taime andmete muutmine/täiendamine

Registreeritud kasutajana soovin muuta raamatukogus oleva taime andmeid, et raamatukogu sisaldaks täpset ja õiget informatsiooni.

  • Kasutaja logib rakendusse sisse ja vajutab menüüs "Library" nupule.
    • Kuna kasutajal on juba taimi raamatukokku lisatud, siis avaneb 5. vaade taimede loeteluga: taime nimi ja sellest paremal kaks valikut "Edit" ning "Delete". Vaate ülemises osas on nupp "Add new".
  • Kasutaja vajutab nupule "Edit".
    • Avaneb 6. vaade taime lisamise vormiga, mis on täidetud varasemalt salvestatud informatsiooniga.
  • Kasutaja teeb soovitud muudatused ning vajutab "Save" nuppu.

Kasutuslugu lõppeb.

Kasutuslugu 6 - raamatukogus oleva taime kustutamine

Registreeritud kasutajana soovin kustutada raamatukogus oleva taime, kuna selliseid taimi mul enam ei ole ja ei plaani neid ka tulevikus soetada.

  • Kasutaja logib rakendusse sisse ja vajutab menüüs "Library" nupule.
    • Avaneb 5. vaade taimede loeteluga: taime nimi ja sellest paremal kaks valikut "Edit" ning "Delete". Vaate ülemises osas on nupp "Add new".
  • Kasutaja vajutab nupule "Delete".
    • Kui kasutajal on konkreetse taime andmed kasutusel kuvatakse veateade ja "Ok" nupp. Kui taime andmed kasutusel ei ole kuvatakse kinnituse küsimine.
  • Kasutaja kinnitab taime kustutamise soovi.

Kasutuslugu lõppeb.

Kasutuslugu 7 - uue grupi lisamine

Registreeritud kasutajana soovin lisada uue grupi - näiteks "Taimed töö juures", et hiljem sellesse gruppi taimi lisada.

  • Kasutaja logib rakendusse sisse ja vajutab menüüs "My groups" nupule.
    • Kui kasutajal pole ühtegi gruppi salvestatud, siis avaneb 7. vaade, kus on tekst, et kasutajal pole veel ühtegi gruppi ning nupp "Add new".
  • Kasutaja vajutab nupule "Add new".
    • Avaneb 8. vaade grupi lisamise vormiga, kus on kolm välja "Group name", "Location", "Description" ning nupud "Save" ja "Cancel".
  • Kasutaja täidab korrektselt kõik väljad ning vajutab "Save" nuppu.

Kasutuslugu lõppeb.

Kasutuslugu 8 - uue taime lisamine

Registreeritud kasutajana soovin lisada uut taime, et omada ülevaadet kastmise ning väetamise aegade kohta.

  • Kasutaja logib rakendusse sisse ja vajutab avanenud 4. vaates "Add new" nupule.
    • Avaneb 9. vaade taime lisamise vormiga, kus on: neli lahtrit "Plant name", "Location", "Last watered", "Last fertilized"; kaks rippmenüüga välja "Plant description", mis saab sisendi kasutaja taimede raamatukogust ja "Add to group", mis saab sisendi kasutaja loodud gruppidest; nupud "Save" ja "Cancel".
  • Kasutaja täidab korrektselt kõik väljad ja vajutab "Save".

Kasutuslugu lõppeb.

Kasutuslugu 9 - olemasolevate taimede haldamine

Registreeritud kasutajana soovin näha ülevaadet enda taimedest ja märkida taimi kastetuks, et teada saada, millal on järgmine kastmine.

  • Kasutaja logib rakendusse sisse.
    • Kuna kasutajal on taim salvestatud siis on avanenud 4. vaates loetelu gruppide järgi.
  • Kasutaja vajutab grupi nimele.
    • Avaneb 10. vaade grupi kirjeldusega ja loeteluga grupis olevatest taimedest. Loetelus on ära toodud taime nimi, asukoht, järgmine kastmise ja väetamise aeg. Nimistus on ülevalpool taimed, mis vajavad kastmist või väetamist kõige enne. Taimest paremal on kaks nuppu "Water" ja "Fertilize".
  • Kasutaja märgib taime kastetuks, vajutades "Water" nuppu.
    • Taime järgmine kastmise aeg on uuendatud vastavalt käesolevale kuupäevale ning kastmis intervallile.
  • Kasutaja vajutab taime nimele.
    • Avaneb 11. vaade, kus on kogu info taime kohta: taime nimi, taimeliik, asukoht, kirjeldus, kastmis- ning väetamissagedus, järgmise kastmise ning väetamise aeg. Lisaks on neli nuppu: "Water", "Fertilize", "Edit", "Delete" ning "Back".

Kasutuslugu lõppeb.

Blogi

  • 17.09.17 Meeskonna moodustamine ja idee paika panek - Cryptocurrency-explorer.
  • 01.10.17 Koosolek kasutajaliideste raamistike teemal.
  • 22.10.17 Wiki lehe ja TFS konto loomine.
  • 04.11.17 Skype koosolek. Projekti analüüsimine, mille käigus otsustasime projekti ideed muuta - PlantWise.