Märkmik

From ICO wiki

Meeskond

  • Kristiina Keelmann (projektijuht)
  • Häli Ann Reintam

Idee

Luua desktop rakendus, mille peamiseks funktsiooniks on eri liiki märkmete (tekst, pildid) loomise ja haldamise võimalus. Märkmeid on võimalik lisada, muuta ja kustutada. Esmaste lisafunktsioonide seas on märkmete kategoriseerimise ja neile prioriteetide määramise võimalus.

Tehnoloogia

  • C#
  • WPF
  • Entity Framework

Versioonihaldus ja lõpptoode

Versioonihaldus

Esitlus

Lõpptoode

Analüüs

Rakenduses on võimalik luua märkmeid. Olemasolevaid märkmeid kuvatakse kasutajale välja ning nende seas on võimalik teostada otsingut. Olemasolevaid märkmeid on võimalik muuta ja kustutada. Märkme loomisel ja muutmisel salvestatakse andmebaasi märkme sisu koos antud toimingu kuupäeva ja kellaajaga ning seda on hiljem võimalik kasutada märkmete otsimisel. Märkmele saab tekstilise sisendi kõrval lisada ka muid faililaiendeid nagu näiteks fotod, helifailid, lingid. Märkme tekstilist sisendit on võimalik täiendavalt vormindada kasutades eri tüüpi liste, muutes teksti suurust ja kirjastiili. Vaikimisi kuvatakse märkmeid loomise ja muutmise järjekorras alustades viimasena muudetud märkmest. Märkmete järjekorda on võimalik muuta drag-and-drop põhimõttel, ühtlasi saab olulisematele märkmetele lisada pin'i, mis tõstab märkme kuvamise järjekorras ettepoole. Märkmete organiseerimiseks on võimalik luua kategooriaid ning neid märkmetele vastavalt lisada. Kategooriate olemasolu korral on võimalik kasutajale kuvada ka ainult konkreetse kategooriaga seotud märkmeid.

Täiendavate planeeritud funktsionaalsuste eesmärgiks on pakkuda kasutajatele veelgi käepärasemat ja mugavamat töövahendit märkmete kiireks haldamiseks. Vaikimisi tühja templiidi kõrval loome enim kasutust leidvate tegevuste templiidid, võimaldame olemasoleva märkme eelmiste versioonide kuvamist ja taastamist ning märkme kopeerimist. Lihtsustamaks märkmete organiseerimist loome võimaluse nende eri kaustadesse jaotamiseks, sealhulgas pakume vaikimisi välja arhiivi kausta ning pakume kasutajale automaatselt välja pikalt kasutust mitte leidnud märkmete arhiveerimist/kustutamist. Kasutajamugavust arvesse võttes muutub võimalikuks kuvasuuruse muutmine rakenduses sees lisatööriistu kasutamata ning loetavuse parandamise eesmärgil on võimalik seadistada rakenduse kontrastust.

Rakenduse eesmärgiks on võimaldada kasutajal mugavalt sisestada ning vajadusel täiendavalt hallata igapäevaselt tekkivaid märkmeid. Võimaldamaks kasutajal olemasolevates märkmetes orienteeruda, lisatakse rakendusse otsing, mis minimaalsel juhul töötab tekstipõhise vaste põhimõttest lähtudes, kuid planeeritava lisafunktsionaalsuse realiseerimisel võimaldab detailset otsingut märkme eri parameetrite alusel nagu näiteks failide olemasolu või märkme loomise/muutmise ajavahemik. Võrdluses sarnaste olemasolevate rakendustega pööratakse antud lahenduses enam rõhku märkmete organiseerimise võimalustele nagu näiteks nende järjekorra muutmine või märkmele prioriteedi lisamine. Ühtlasi loodetakse realiseerida pikalt kasutust mitte leidnud märkmete arhiveerimise/kustutamise soovitus, mis hõlbustab kasutajal märkmete haldamist.

Peamine probleem antud rakenduse realiseerimisel on realistlik töömahu hindamine. Viimasest tulenevalt plaanime esmajärgus luua MVP - minimaalse elujõulise toote - ning võtta seejärel töösse planeeritud nice to have funktsionaalsused. Kuivõrd sarnaseid rakendusi on kättesaadavaid mitmeid võib keeruliseks osutuda lisandväärtuse loomine. Tähelepanu tuleb pöörata ka otsingu tehnilisele teostusele: arvesse tuleb võtta võimalikku andmebaasi kirjete hulka ning veenduda, et teksti põhine otsing ei osutuks liiga aeglaseks.

Must have funktsionaalsus

  • Uue märkme lisamine
  • Olemasolevate märkmete kuvamine
  • Olemasoleva märkme muutmine
  • Olemasoleva märkme kustutamine
  • Märkmele piltide/helifailide jms faililaiendite lisamine
  • Märkme teksti formaadi täiendused: listide loomine (nummerdus, bullet list, märkeruudud), teksti vormindamine jms
  • Märkmele kategooriate lisamine/kustutamine
  • Märkme prioriseerimine/järjestuse muutmine/esiletõstmine (pin)
  • Tekstipõhine otsing


Nice to have funktsionaalsus

  • Märkmete grupeerimine kaustadesse
  • Märkme teksti markeermine eristuva värviga
  • Märkme suurendamine ja vähendamine loetavuse parandamiseks
  • Ligipääsetavus: heleduse-tumeduse kontrast, ühildumine ekraanilugeriga
  • Täiendav lisaparameetrite põhine otsing (nt kas märkmes leidub faile, linke jms)
  • Tüüp-märkmete templiidid (nt ostunimekiri / reisi planeerimine jms)
  • Märkme vabalt valitud vanema versiooni taastamine
  • Märkme arhiveerimine
  • Märkme kopeerimine
  • Meeldetuletuse lisamine/kalendriga ühendamine
  • Märkme edasi saatmine välisesse kanalisse (e-post, sotsiaalmeedia vms)
  • Pikalt kasutust mitte leidnud märkmete automaatne arhiveerimise soovitus


Peamised kasutuslood

Kasutuslugu: uue märkme lisamine

  • Kasutaja klikib uue märkme lisamise ikoonil
  • Avaneb uus vaade, kus kasutajal on võimalik sisestada märkme tekstiline sisend ja/või lisada faililaiendeid
  • Kasutajal on võimalik määrata märkmele olemasolev kategooria või luua uus kategooria
  • Kasutaja klikib märkme salvestamise ikoonil / märge salvestatakse automaatselt
  • Kasutaja jäetakse loodud märkme detailvaatesse


Kasutuslugu: olemasoleva märkme muutmine

  • Kasutaja avab olemasoleva märkme
  • Kasutaja klikib märkme muutmise ikoonil / märget on võimalik automaatselt uuendada
  • Märge on staatuses muudetav ning kasutajal on võimalik märkme tekstilist sisendit ja/või faililaiendeid muuta
  • Kasutaja klikib märkme salvestamise ikoonil / märge salvestatakse automaatselt


Kasutuslugu: olemasoleva märkme kustutamine

  • Kasutaja avab olemasoleva märkme
  • Kasutaja klikib märkme kustutamise ikoonil
  • Avaneb kahe valikuga hüpikaken, kus on võimalik märkme kusutamine kinnitada või sellest loobuda
  • Märkme kustutamise kinnitamise järel suunatakse kasutaja peavaatesse ning kasutajale kuvatakse teadet märkme kusutamise õnnestumise kohta
  • Märkme kusutamisest loobumise järel jäetakse kasutaja märkme detailvaatesse


Kasutuslugu: olemasoleva märkme eelmise versiooni taastamine

  • Kasutaja avab olemasoleva märkme
  • Kasutaja klikib märkme ajaloo ikoonil
  • Avaneb märkme eri versioonide ajajoon
  • Kasutaja aktiveerib ajajoonel soovitud versiooni
  • Kasutaja kinnitab märkme eelmise versiooni taastamise
  • Kasutajale kuvatakse valitud versiooni detailvaadet


Kasutuslugu: märkmete reorganiseerimine

  • Kasutaja avab olemasoleva märkme
  • Kasutaja klikib märkme kategoriseerimise ikoonil
  • Kasutaja saab märkmele määrata kas olemasoleva kategooria või lisada uue kategooria
  • Kasutaja kinnitab märkme kategooria muudatuse
  • Kasutaja jäetakse muudetud märkme detailvaatesse


Kasutuslugu: märkme otsimine märksõna järgi

  • Kasutaja aktiveerib luubi ikooniga tähistatud otsingulahtri
  • Kasutajal on võimalik sisestada tekstilist sisendit
  • Kasutaja klikib nupul “Otsi”
  • Kasutajale kuvatakse märkmeid, mille sisu vastab antud otsingusõnale


Kasutuslugu: märkme otsimine täiendavate parameetrite järgi

  • Kasutaja aktiveerib detailse otsingu, mis asub põhiotsingu all lingina
  • Avanevas vaates on võimalik kasutada filtreid: kategooria, kuupäevade vahemik
  • Kasutaja klikib nupul “Otsi”
  • Kasutajale kuvatakse märkmeid, mille sisu vastab antud otsingu parameetritele

Kasutusjuhend

Kasutusjuhend