Meeskond: Lebokeiss OÜ

From ICO wiki
Jump to navigationJump to search

C# projekt Vajutuskunn

Meeskonna nimi: Lebokeiss OÜ

Projekt

Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.

Meeskonna koosseis

  • Iris Tambaum
  • Kerli Edasi
  • Joonas Jõeleht
  • Timo Lanno
  • Karell Veskimeister


Projektijuht: Joonas Jõeleht


Projektist

Ülevaade

Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas.

Kasutatav .NET tehnoloogia

Kasutatav raamistik: .NET Framework 4.5

Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ

Kasutatav arhetektuuriline muster: MVVM


Täpsemalt rakenduse tööst

  • Rakenduse valimine

Kasutaja valib endale rakenduse, kus ta soovib ennast arendada. Pakutakse välja olemasolev template ja kasutaja saab alustada õppimist.

  • Rakenduse lühendite täiustamine

Kasutajal on võimalus lisada spetsiifilisemaid lühendeid, mida ta tahab harjutada ja endale selgeks teha.

Idee kirjeldus

Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saaksime kasutada programmi efektiivsemalt, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.

Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise erinevate programmide kiirklahvide kohta.

Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.

Mida rakendus endas sisaldab? (Mis võimalused seal on?)

Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud.

Teste saab teha rakenduse siseselt kättesaadavaks kõigile, see tähendab, et need on kättesaadavad antud arvuti kasutajatele, või hoida privaatsena ehk kasutajaspetsiifilisena.

Samuti saab teste meie platvormilt eksportida ning nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.

Milliste osade realiseerimine võib osutuda problemaatiliseks?

Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine, (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü) aga kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).

Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame võtta sellel ajal programmi fullrecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition) kust saab eeskuju võtta.

Funktsionaalsused

Planeeritavad funktsionaalsused

Kindlad funktsionaalsused

  • Andmebaas, selle haldamine (templates, kasutaja salvestused)
  • Kiiruse peale lahendamine
  • Import hotkeys from text
  • Vale vastuse kuva(sh. ajalugu)


Võimalikud funktsionaalsused (kui aega üle jääb)

  • Leaderboard
  • Head-to-head

Kokkusaamiste logid

Algus

31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.

Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante.

Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks


25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service'i konto ning tutvusime võimalustega.

Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad. Järatavad kondid:

Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?

Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.

Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.

Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad..

Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda.


22.10 Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.