<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.itcollege.ee/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kegipt</id>
	<title>ICO wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.itcollege.ee/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kegipt"/>
	<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php/Special:Contributions/Kegipt"/>
	<updated>2026-05-06T19:50:44Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=104333</id>
		<title>Kodutöö aines &quot;Võrgurakendused II: hajussüsteemide ehitamine&quot; 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=104333"/>
		<updated>2016-06-05T11:13:11Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskond: &amp;quot;Skeddl&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Võrgurakendused II: hajussüsteemide ehitamine]]&lt;br /&gt;
__NOINDEX__&lt;br /&gt;
&lt;br /&gt;
=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; 2016=&lt;br /&gt;
==Eesmärk==&lt;br /&gt;
Saada praktiline kogemus hajussüsteemide ehitamisest XML(SOAP) või Rest veebiteenusel ja sellele klientrakenduse loomise abil ning süvendada meeskonnatööoskust. &lt;br /&gt;
*SOAP veebiteenuse puhul eeldatakse WCF tehnoloogia kasutamist. Vanema põlvkonna ASP.NET veebiteenuse loomine ei ole lubatud, kuna seda ei toeta ka Microsoft enam tänasel päeval.&lt;br /&gt;
*REST teenuste loomisel tuleks kasutada ASP.NET Web API võimalusi.&lt;br /&gt;
&lt;br /&gt;
Kaugem eesmärk on loomulikult hinne :).&lt;br /&gt;
&lt;br /&gt;
==Reeglid==&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendused (soovitavalt vähemalt kaks)endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
Ühte projektimeeskonda kuulub 3..4 tudengit ning ühel teemal teostab projekti üks või mitu meeskonda. 1,2 ja viie liikmelised meeskonnad tuleks õppejõuga eraldi kooskõlastada.&lt;br /&gt;
&lt;br /&gt;
Töö käiku kajastatakse  http://wiki.itcollege.ee keskkonnas. Wikilehe täitmise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest.&lt;br /&gt;
&lt;br /&gt;
==Tähtajad==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;XML fail&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#XML_andmefail NB! Täpsem info]&lt;br /&gt;
** XML fail, stiilifail ja skeemifail peavad olema valmis ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;20. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid XML-failide kohta peavad tehtud olema &#039;&#039;&#039;27. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** &#039;&#039;&#039;Meeskonnad on loonud omale enda wiki lehe, kuhu kirjeldavad meeskonna ja panevad nad üles oma tööd. Lisaks hakkavad kogunema ka sinna teiste gruppide poolt kirjutatavad retsensioonid. &amp;lt;ins&amp;gt;Meeskonnalehed lingitakse selle lehe lõppu Meeskonna pealkirja alla.&amp;lt;/ins&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Veebiteenus&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Veebiteenus NB! Täpsem info]&lt;br /&gt;
** Veebiteenuse analüüs peab olema valmis, esitatud ja wikilehel kirjeldatud hiljemalt: &#039;&#039;&#039;17.aprill 2016&#039;&#039;&#039;&lt;br /&gt;
** Veebiteenus peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid veebiteenuste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Veebiteenus tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klientrakendused&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Klientrakendus NB! Täpsem info]&lt;br /&gt;
** Klientrakendused peavad olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid klientrakenduste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Klientrakendused tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--* &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne&#039;&#039;&#039;&lt;br /&gt;
** Meeskonnatöö kokkuvõttev aruanne peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt 8.mai 2011&lt;br /&gt;
** Arvamused Meeskonnatöö kokkuvõtva aruande ja esitluse kohta tuleb esitada hiljemalt päev enne eksamit&lt;br /&gt;
** &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne ja töö lõplik tulemus&#039;&#039;&#039; tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hindamine==&lt;br /&gt;
===Üldised kriteeriumid===&lt;br /&gt;
&lt;br /&gt;
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud.&lt;br /&gt;
&lt;br /&gt;
Maksimumtulemuse saavutamiseks peab projekt olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub  arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Maksimumtulemuse annab (vähemalt 4/6):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Majanduslik mõtlemine (kas loodav teenus ja rakendused oleks kasutatav ka ärilistel eesmärkidel)&lt;br /&gt;
* Mobiilrakendused &lt;br /&gt;
* AngularJS klientrakendus&lt;br /&gt;
* Kogukondade kaasamine&lt;br /&gt;
* Kasutajamugavus&lt;br /&gt;
* Läbimõeldud töökorraldus&lt;br /&gt;
* Lisavõimaluste realiseerimine (vt näidisteemad)&lt;br /&gt;
&lt;br /&gt;
===XML andmefail===&lt;br /&gt;
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning minimaalselt kaks sobivat XSL transformatsiooni faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kasutama vajadusel parameetreid ning kindlasti ka erinevaid tingimuste kontrolle.&lt;br /&gt;
&lt;br /&gt;
XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
 &amp;lt;dim1&amp;gt;&lt;br /&gt;
   &amp;lt;dim2&amp;gt;&lt;br /&gt;
     &amp;lt;dim3&amp;gt;&lt;br /&gt;
       &amp;lt;dim4&amp;gt;&lt;br /&gt;
       &amp;lt;/dim4&amp;gt;&lt;br /&gt;
     &amp;lt;/dim3&amp;gt;&lt;br /&gt;
   &amp;lt;/dim2&amp;gt;&lt;br /&gt;
 &amp;lt;/dim1&amp;gt;&lt;br /&gt;
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.&lt;br /&gt;
&lt;br /&gt;
Käesoleva ülesande käigus peab looma meeskonna ning selle wiki lehekülje&lt;br /&gt;
&lt;br /&gt;
===Veebiteenus===&lt;br /&gt;
Loodav veebiteenus peab võimaldama:&lt;br /&gt;
* Teenuse pakkumist&lt;br /&gt;
* &#039;&#039;&#039;Teenuse kasutajate tuvastamist ning haldamist&#039;&#039;&#039;&lt;br /&gt;
* Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes&lt;br /&gt;
* Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus peab toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus tuleb luua kasutades &#039;&#039;Windows Communication Foundation&#039;&#039; või ASP.NET MVC  Web API tehnoloogiat&lt;br /&gt;
&lt;br /&gt;
Andmebaasis peab olema vähemalt 9 olemit ehk andmebaas on eeldus,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soovitav on luua teenus (FE) ja teenuse seadistamiseks ning kasutajate haldamiseks mõeldud rakendus (BE).&lt;br /&gt;
&lt;br /&gt;
===Klientrakendus===&lt;br /&gt;
Klientrakendus mõnele olemasolevale veebiteenusele, võib olla teostatud veebirakendusena, Silverlight, WPF või vormirakendusena.&lt;br /&gt;
&lt;br /&gt;
Variant1: teha klientrakendus enda loodud veebiteenusele &lt;br /&gt;
&lt;br /&gt;
Variant2: teha klientrakendus mõnele levinud veebiteenusele.&lt;br /&gt;
Näiteks: &lt;br /&gt;
* http://www.bing.com/developer&lt;br /&gt;
* http://www.flickr.com/services/api/response.soap.html&lt;br /&gt;
* http://developer.ebay.com/developercenter/windows/&lt;br /&gt;
* http://apiwiki.twitter.com/Getting-Started&lt;br /&gt;
&lt;br /&gt;
===Retsensioonid===&lt;br /&gt;
Retsensioon on üliõpilase iseseisva teadustöö kriitilise analüüsi põhjal koostatud argumenteeritud hinnang. Retsensioonis tuleb hinnata töö vastavust esitatud tingimustele, programmikoodi loetavust ning kommenteeritust, dokumentatsiooni ja kirjeldada puudusi. Retsensioonide põhjal on meeskondadel õigus oma projekte parandada enne määratud esitamistähtaja kättejõudmist.&lt;br /&gt;
&lt;br /&gt;
Retsensioon peab sisaldama minimaalselt...&lt;br /&gt;
* XML - ...200 sõna.&lt;br /&gt;
* Veebiteenus - ...600 sõna.&lt;br /&gt;
* Klientrakendus - ...600 sõna.&lt;br /&gt;
&lt;br /&gt;
Mõnelauselisest arvamusest ei piisa, kuna tegemist on grupi loodavate arvustustega, mitte individuaalsete arvustustega.&lt;br /&gt;
&lt;br /&gt;
==Konsultatsioonid==&lt;br /&gt;
 Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma&lt;br /&gt;
 töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida&lt;br /&gt;
 õppejõuga kokkuleppeid kontaktidel&lt;br /&gt;
 mait.poska [ät] itcollege.ee või (+372 53 469 734)&lt;br /&gt;
 (teksti originaalautor Priit Raspel)&lt;br /&gt;
&lt;br /&gt;
=Teemad 2016 kevad=&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendus mõnele olemasolevale või endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
NB! XML andmefail ja veebiteenus ei pea olema omavahel seotud.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Näidisteemad==&lt;br /&gt;
&lt;br /&gt;
===Nimede pakkumise teenus===&lt;br /&gt;
Mõte selles, et luua nimede baas, mille abil pakkuda rakenduse loojale sobiva algusega nimesid. Reaalne rakendus: &#039;&#039;autocompleter&#039;&#039; tarvis teenuse pakkumine&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua sobiva alguse järgi nimede pakkumise teenus:&lt;br /&gt;
* alates kahetähelisetest algustest pakkuda sobivad nimesid&lt;br /&gt;
* luua võimalus kasutajatel nimesid lisada&lt;br /&gt;
* luua võimalus administraatoril nimesid muuta/kustutada&lt;br /&gt;
* meeste ja naiste nimed peavad olema süsteemis eristatavad&lt;br /&gt;
* luua võimalus, mis võimaldab kuvada populaarseid nimesid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* luua võimalus, et nimi lisatakse baasi alles siis, kui administraatori õigustega inimene on selleks vastava loa andnud&lt;br /&gt;
&lt;br /&gt;
===Külastusstatistika teenus===&lt;br /&gt;
Mõte selles, et pakkuda teenust, kus kasutajal on võimalik registreerida külastused ning küsida oma külastusstatistikat.&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua külastusstatistika teenus:&lt;br /&gt;
* kasutaja saab teenuses registreerida külastusi&lt;br /&gt;
* kasutaja saab küsida külastusstatistikat päevade/kuude/kogu perioodi lõikes&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
&lt;br /&gt;
Lisavõimalused:&lt;br /&gt;
* luua võimalus registreerida alamlehtede külastusstatistikat&lt;br /&gt;
* luua võimalus külastusstatistikale lisaparameetrite lisamiseks (ip aadress, sirviku versioon jne)&lt;br /&gt;
&lt;br /&gt;
===Telefoniraamatu teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada kontakte ja nende seast otsida&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua telefoniraamatu teenus:&lt;br /&gt;
* kasutaja saab teenuses kontakte lisada ja kustutada&lt;br /&gt;
* kasutaja saab kontaktide nime/telefoninumbri jne abil otsida&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutajaid on võimalik lisada gruppidesse&lt;br /&gt;
* kasutajal on võimalik lisada vajalike kontaktandmete liike&lt;br /&gt;
* kasutajatel on võimalik jagada omavahel kontakte ja kontaktide grupper&lt;br /&gt;
&lt;br /&gt;
===RSS voogude kogumise ja uudiste kuvamise teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada talle huvipakkuvaid RSS vooge ja nendelt voogudelt uudiseid lugeda&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua RSS voogude haldusteenus:&lt;br /&gt;
* kasutaja saab teenuses RSS vooge lisada ja kustudada&lt;br /&gt;
* kasutaja saab pärida talle huvipakkuvate voogude viimaseid uudiseid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutaja saab RSS vooge vaadata eraldi või grupeeritult&lt;br /&gt;
* vooge peab puhverdama, kuna voogude lugemine võtab enamasti üsna palju aega &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
= Meeskonnad 2016=&lt;br /&gt;
&lt;br /&gt;
==Päevaõpe==&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Travo 2.0 ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tarvo Reinpalu&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond: Travo 2.0]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Aloha Snackbar&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Egert Aia&lt;br /&gt;
* Merit Ridaste&lt;br /&gt;
* Ants-Kristjan Rooma&lt;br /&gt;
* Siim Ivask&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Aloha Snackbar]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [[SHOP]] asub [https://wiki.itcollege.ee/index.php/Talk:SHOP siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [[LuckyYou]] asub [https://wiki.itcollege.ee/index.php/Talk:LuckyYou siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Kõnõtraat ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kristjan Tõnismäe&lt;br /&gt;
* Andreas Plado&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Kõnõtraat]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Lebokeiss OÜ Core 1.0&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
Meeskonna koduleht: [[Lebokeiss OÜ]].&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 Travo 2.0] asub [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;LuckyYou&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tanel Vähk&lt;br /&gt;
* Aleks Luik&lt;br /&gt;
* Melissa Eenmaa&lt;br /&gt;
* Taavi Kliss&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LuckyYou]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 TRAVO 2.0] XML retsensioon leiab [https://wiki.itcollege.ee/index.php?title=LuckyYou#XML_retsensioon_TRAVO_2.0 SIIT]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/K%C3%B5n%C3%B5traat Kõnõtraat] XML retsensioon leiab [https://wiki.itcollege.ee/index.php?title=LuckyYou#XML_retsensioon_K.C3.95N.C3.95TRAAT SIIT]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond SHOP ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Johannes Tamm&lt;br /&gt;
* Martin Mägi&lt;br /&gt;
* Martin Betlem&lt;br /&gt;
* Merilyn Renser&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[SHOP]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#SHOPi_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond BurgerAce ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Silver Ohlo&lt;br /&gt;
* Martin Luik&lt;br /&gt;
* Ahto Elken&lt;br /&gt;
* Arvo Bendi&lt;br /&gt;
Meeskonna koduleht: [[BurgerAce]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Netgroup Netgroup] asub [https://wiki.itcollege.ee/index.php/Talk:Netgroup siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Ordering Ordering] asub [https://wiki.itcollege.ee/index.php/Talk:Ordering siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond LinkCode ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Rene Ott&lt;br /&gt;
* Renet Pirso&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LinkCode]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Screaming_Magic_Gnomes Screaming Magic Gnomes] asub [https://wiki.itcollege.ee/index.php/Talk:Screaming_Magic_Gnomes#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/DoubleTrouble Double Trouble] asub [https://wiki.itcollege.ee/index.php/Talk:DoubleTrouble#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Screaming Magic Gnomes ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Märt Häkkinen&lt;br /&gt;
* Taavi Kivimaa&lt;br /&gt;
* Siim Osa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Screaming_Magic_Gnomes]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar#Retsensioon_XML Aloha Snackbar]&lt;br /&gt;
&lt;br /&gt;
retsensioon meeskonnale Ordering [https://wiki.itcollege.ee/index.php/Talk:Ordering]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Givela ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikk Raudsepp&lt;br /&gt;
* Alar Ameerikas&lt;br /&gt;
* Vladimir Rõkovanov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Givela]]&lt;br /&gt;
&lt;br /&gt;
XML Retsensioon meeskonnale [[Kõnõtraat]] asub [https://wiki.itcollege.ee/index.php/Talk:K%C3%B5n%C3%B5traat siin ]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VVA ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleksandr Babõkin&lt;br /&gt;
* Vladislav Kovaltšuk&lt;br /&gt;
* Andrei Tverskoi&lt;br /&gt;
* Vladislav Lahtarin&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VVA]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon XML-failide kohta meeskonnale &amp;quot;Givela&amp;quot; [https://wiki.itcollege.ee/index.php/VVA#Retsensioon_XML-failide_kohta_meeskonnale_.22Givela.22 siin]&amp;lt;br&amp;gt;&lt;br /&gt;
Retsensioon meeskonna &amp;quot;SHOP&amp;quot; veebi- ja kliendirakendusele [https://wiki.itcollege.ee/index.php/VVA#Retsensioon_meeskonna_SHOP_veebi-_ja_kliendirakendusele siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Undress Gaver&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Marko Koiduste&lt;br /&gt;
* Jaanus Türnpuu&lt;br /&gt;
* Sergei Fatejev&lt;br /&gt;
* Kaspar Tilk&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Undress Gaver]] &amp;lt;br /&amp;gt;&lt;br /&gt;
Retsensioon meeskonna [https://wiki.itcollege.ee/index.php/Ordering Ordering] XML-ile asub [https://wiki.itcollege.ee/index.php/Talk:Ordering#Retsensioon_meeskonna_Undress_G.C3.A4ver_poolt siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Double Trouble&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kaido Henrik Elias&lt;br /&gt;
* Jekaterina Jakimets&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[DoubleTrouble]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale VRJ [https://wiki.itcollege.ee/index.php/Talk:VRJ asub siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
XML retsensioon meeskonnale Givela [https://wiki.itcollege.ee/index.php/Talk:Givela asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Team ATW&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleks Tatter&lt;br /&gt;
* Vaiko Vällik&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Team_ATW]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Netgroup&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Indrek Nurja&lt;br /&gt;
* Imre Teras&lt;br /&gt;
* Kristjan Kotto&lt;br /&gt;
* Marek Kivikink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Netgroup]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Ordering&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kelli Lukas&lt;br /&gt;
* Märt Lõhmus&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Ordering]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond KTM Development ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tauno Otti&lt;br /&gt;
* Mart Abel&lt;br /&gt;
* Kristian Laupa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[KTMdev]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#SHOPi_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Status Code 200&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Ilja Andrejev&lt;br /&gt;
* Kristjan Kivisild&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Status_Code_200]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Spendings&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tauri Busch&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Spendings]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Loading ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Laura Teder&lt;br /&gt;
* Martin Saar&lt;br /&gt;
* Roomet Saadi&lt;br /&gt;
* Indrek Tamm&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Loading]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#Meeskond_Loading_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Undress_Gaver Undress Gaver] asub [https://wiki.itcollege.ee/index.php/Talk:Undress_Gaver#Meeskond_Loading_retsensioon_meeskonnale_Undress_Gaver siin]&lt;br /&gt;
&lt;br /&gt;
==Kaugõpe==&lt;br /&gt;
=== Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikhail Reznichenko&lt;br /&gt;
* 10143193&lt;br /&gt;
* 10090107&lt;br /&gt;
* Alisa Dudinova&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioonid meeskonnale [https://wiki.itcollege.ee/index.php/Talk:VRJ &amp;quot;VRJ&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Vrii-team &amp;quot;Vrii-team&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VRii Team ===&lt;br /&gt;
&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Mets&lt;br /&gt;
* Toomas Juhkov&lt;br /&gt;
* Tiit Kuuskmäe&lt;br /&gt;
* Kaire Toom&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Vrii-team]]&lt;br /&gt;
&lt;br /&gt;
XML: [http://enos.itcollege.ee/~amets/VR2/XML/xml-resources.zip] XML olemas ka meeskonna kodulehel.&lt;br /&gt;
&lt;br /&gt;
Retsensioonid XML ülesandele: [https://wiki.itcollege.ee/index.php/Talk:Meeskond_%22Symphony_No._7_in_C-sharp_minor%22 Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Sille Sille].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;VRJ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jevgeni Gavrilov&lt;br /&gt;
* Vladimir Nitsenko&lt;br /&gt;
* Riho Uusjärv&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VRJ]]&lt;br /&gt;
&lt;br /&gt;
Meeskond [https://wiki.itcollege.ee/index.php/Aeg&amp;quot;Aeg&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Enneaegsed&amp;quot;Enneaegsed&amp;quot;] retsentsioonid asuvad [https://wiki.itcollege.ee/index.php/VRJ#Retsensioon &amp;quot;siin&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;freeVariable&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mihkel Viilveer&lt;br /&gt;
* Kristjan Adrat&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[freeVar]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[Aeg]] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_1 asub siin]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 TRAVO 2.0] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_2 asub siin]&lt;br /&gt;
&lt;br /&gt;
Projekti esitus [https://wiki.itcollege.ee/index.php/FreeVar#Projekti_esitus asub siin]&lt;br /&gt;
&lt;br /&gt;
Projekti retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Server.2Fkliendirakenduse_retsesnsioon_Skeddl.27e meeskonna Skeddl&#039;e projektile]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Enneaegsed&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jaan Elken&lt;br /&gt;
* Margit Ool&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioon meeskonnale Travo 2.0 [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 asub siin].&lt;br /&gt;
XML ülesande retsensioon meeskonnale Aloha Snackbar [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar asub siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Skeddl&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Skeddl]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;19.03.2016&#039;&#039;&#039; XML/XSLT ülesande leiab [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26.03.2016&#039;&#039;&#039; Meeskonna [[Aeg]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_1_retsensioon SIIT]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26.03.2016&#039;&#039;&#039; Meeskonna [[Enneaegsed]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_2 SIIT]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;29.05.2016&#039;&#039;&#039; Veebiteenus &amp;amp; Klientrakendus asuvad [https://wiki.itcollege.ee/index.php/Skeddl SIIN]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;05.06.2016&#039;&#039;&#039; Retsensioon meeskonnale freeVariable asub [https://wiki.itcollege.ee/index.php/Skeddl SIIN]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Sille&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Trei&lt;br /&gt;
* Lasse Kolkanen&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Sille]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[VRJ]] XML retsensioon asub : [https://wiki.itcollege.ee/index.php/Sille#XML_retsensioon SIIN]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;A$unik&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Hardi Antsov&lt;br /&gt;
* Juhan Trink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[A$unik]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Yksikyritus&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Kaidi Parman&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Yksikyritus]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Aeg&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Maksim Gorb&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Aeg]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;VRFeeds&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Tarmo Sillajõe&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[VRFeeds]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon [[meeskonna &amp;quot;freeVariable&amp;quot; XML&#039;i osale ]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon [[meeskonna &amp;quot;Sille&amp;quot; XML&#039;i osale ]]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=104332</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=104332"/>
		<updated>2016-06-05T11:11:10Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
Projekt realiseeritakse kasutades ASP.NET MVC Web API tehnoloogiat. &lt;br /&gt;
&lt;br /&gt;
Esialgne rakenduse ülesehituse skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Program_architecture.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Korraga saab rakendusse olla sisse logitud mitu kasutajat. &lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
* Serveris tuleb logida olulisemaid kasutajate poolt klientrakenduses tehtud toiminguid (sisse logimine, konto lukustumine, taski lisamine jmt);&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
== Meeskonna Veebiteenus &amp;amp; klientrakendus ==&lt;br /&gt;
29.05.2016&lt;br /&gt;
&lt;br /&gt;
Veebiteenus ja klientrakendus on realiseeritud ühes solutionis. &lt;br /&gt;
Rakenduse valmistamisel on aluseks võetud Mait Poska ja Andres Käveri lahkelt jagatud projektipõhi: [https://github.com/akaver/ASP.NET-BaseApps] [https://github.com/akaver/ASP.NET-WebApiDal]&lt;br /&gt;
&lt;br /&gt;
Rakenduse versioonihaldus toimus GitHub&#039;is [https://github.com/Seramis/ITK_VR2/tree/preSwagger]&lt;br /&gt;
&#039;&#039;&#039;NB!&#039;&#039;&#039; Rakenduse loomisel on katsetatud erinevate tehnoloogiatega. Viimaseks ja õigeks branch&#039;iks jäi &#039;preSwagger&#039;.&lt;br /&gt;
&lt;br /&gt;
Veebiteenus võimaldab:&lt;br /&gt;
*Teenuse pakkumist&lt;br /&gt;
*Teenuse kasutajate tuvastamist ning haldamist&lt;br /&gt;
*Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes (http access log serveri poolt, bearing key requesti headeris identifitseerimiseks)&lt;br /&gt;
*Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist (IIS QoS manageerimine).&lt;br /&gt;
*Teenus toetab mitme kasutaja sisselogimise võimalust.&lt;br /&gt;
&lt;br /&gt;
Teenus on loodud kasutades ASP.NET MVC Web API tehnoloogiat.&lt;br /&gt;
&lt;br /&gt;
Rakenduse testimiseks tuleb käivitada nii WebAPI projekt (serveri pool) kui ka Web projekt (ASP.NET klientrakendus).&lt;br /&gt;
Sisselogimiseks on vaikimisi loodud kaks erinevate õigustega kasutajat:&lt;br /&gt;
*Admin õigustega: 1@eesti.ee (parool: a)&lt;br /&gt;
*Tavakasutaja: 2@eesti.ee (parool: b)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rakendus asub [http://enos.itcollege.ee/~kegipt/VRII/ITK_VR2-preSwagger.zip SIIN].&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Retsensioon meeskonnale: [https://wiki.itcollege.ee/index.php/FreeVar FreeVar] ==&lt;br /&gt;
05.06.2016&lt;br /&gt;
&lt;br /&gt;
Retsensiooni eesmärk on anda kriitilise analüüsi põhjal koostatud argumenteeritud hinnang kaasõpilaste tööle. Retsensiooni koostamisel hinnati: töö vastavust esitatud tingimustele, programmikoodi loetavust ja ülesehitust ning kommenteeritust ja dokumentatsiooni. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Veebirakendus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppeainest lähtuvalt peab veebiteenus võimaldama: teenuse pakkumist, kasutajate tuvastamist ning haldamist, kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes, teenuse poole pöördumiste arvu piiramist ja piirangute haldamist. Samuti peab veebiteenus toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
FreeVar teenus võimaldab teenusesse sisse logida (kasutajad tuvastada), uusi kasutajaid luua. Toetatud on ka mitme kasutaja võimalus. Kasutusstatistika ja teenuse poole pöördujate arvu piiramist ja piirangute haldamise kohta paraku ei leidnud.&lt;br /&gt;
&lt;br /&gt;
Veebiteenus on loodud kasutades ASP.NET MVC Web API tehnoloogiat. Andmebaasis on 9 olemit. DTO-sid eraldi realiseeritud ei ole ning sellel otstabel kasutatakse domeeni otse. Seega on kodutöö tingimused täidetud.&lt;br /&gt;
&lt;br /&gt;
WebAPI-s on kasutatud Http-headerid lehendamiseks (vaate jaotuseks), mis on väga kena lähenemine.&lt;br /&gt;
&lt;br /&gt;
Solution on üles ehitatud loogiliselt ning hästi strkutureeritud. Kood on loetav, kuigi vähesel määral kommenteeritud.&lt;br /&gt;
&lt;br /&gt;
Blogi index on realiseeritud.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Pisimärkused:&#039;&#039;&lt;br /&gt;
*Jääb arusaamatuks, miks ViewModel on paigutatud BLL-i alla, mitte ei ole WEB projektis või siis hoopiski eraldi projektina. &lt;br /&gt;
*WEB on pandud suhtlema otse BLL-iga, kuna ViewModel asub seal. Tegelikkuses ei peaks klient-rakendus kasutama BLL kihti. (Seda peab kasutama vaid serveri pool)&lt;br /&gt;
*Igasugused refereeringud meetoditele võiksid käia läbi NameOf’i, nt actionlink’ides. Praegusel juhul on kasutatud tavalist stringi, mis refactor’dades ei muutu kaasa.&lt;br /&gt;
*UOW-s ei ole Repode propertey’d, mis oleks ilmselt koodi kirjutamise lihtsamaks teinud (nt UserInt jmt puhul, mis baasprojektist kaasa tulevad, on need olemas).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakendus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Suurem osa kliendirakendusest tundub olevat tegemata. Staatiline leht on olemas aga baas-asjad nagu nt auto lisamine/muutmine on jäänud poolikuks. Autot ei ole võimlaik lisada, kuna dropdown’i (rippmenüü) väärtused puuduvad. Kontrolleris ei ole dropdown mingil viisil väärtustatud (tühi). View template’is on vastav rippmenüü loodud kuid ilma sisuta. Samadel põhjustel ei õnnestu blogi loomine.&lt;br /&gt;
&lt;br /&gt;
BlogPost Controlleris on meetodite kirjeldused kohati sassi läinud, nt create meetodi puhul viitab link hoopis „edit“ meetodile.&lt;br /&gt;
&lt;br /&gt;
Kliendi poolel esineb vigu, nt rakenduses headerile vajutades sorteerimine ei tööta, kuid koodi järgi võiks see nii olla.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kokkuvõte&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Veebiteenus on koostatud hästi. Eriti võttes arvesse, et teenuse pani püsti vaid üks õppur. Kuid klientrakendus on jäänud poolikuks, mis töömahtu arvestades on arusaadav. Autor on üldiselt aru saanud API teenusest ning oskab seda koostada.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=104316</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=104316"/>
		<updated>2016-06-03T15:15:59Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskonna Veebiteenus &amp;amp; klientrakendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
Projekt realiseeritakse kasutades ASP.NET MVC Web API tehnoloogiat. &lt;br /&gt;
&lt;br /&gt;
Esialgne rakenduse ülesehituse skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Program_architecture.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Korraga saab rakendusse olla sisse logitud mitu kasutajat. &lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
* Serveris tuleb logida olulisemaid kasutajate poolt klientrakenduses tehtud toiminguid (sisse logimine, konto lukustumine, taski lisamine jmt);&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
== Meeskonna Veebiteenus &amp;amp; klientrakendus ==&lt;br /&gt;
29.05.2016&lt;br /&gt;
&lt;br /&gt;
Veebiteenus ja klientrakendus on realiseeritud ühes solutionis. &lt;br /&gt;
Rakenduse valmistamisel on aluseks võetud Mait Poska ja Andres Käveri lahkelt jagatud projektipõhi: [https://github.com/akaver/ASP.NET-BaseApps] [https://github.com/akaver/ASP.NET-WebApiDal]&lt;br /&gt;
&lt;br /&gt;
Rakenduse versioonihaldus toimus GitHub&#039;is [https://github.com/Seramis/ITK_VR2/tree/preSwagger]&lt;br /&gt;
&#039;&#039;&#039;NB!&#039;&#039;&#039; Rakenduse loomisel on katsetatud erinevate tehnoloogiatega. Viimaseks ja õigeks branch&#039;iks jäi &#039;preSwagger&#039;.&lt;br /&gt;
&lt;br /&gt;
Veebiteenus võimaldab:&lt;br /&gt;
*Teenuse pakkumist&lt;br /&gt;
*Teenuse kasutajate tuvastamist ning haldamist&lt;br /&gt;
*Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes (http access log serveri poolt, bearing key requesti headeris identifitseerimiseks)&lt;br /&gt;
*Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist (IIS QoS manageerimine).&lt;br /&gt;
*Teenus toetab mitme kasutaja sisselogimise võimalust.&lt;br /&gt;
&lt;br /&gt;
Teenus on loodud kasutades ASP.NET MVC Web API tehnoloogiat.&lt;br /&gt;
&lt;br /&gt;
Rakenduse testimiseks tuleb käivitada nii WebAPI projekt (serveri pool) kui ka Web projekt (ASP.NET klientrakendus).&lt;br /&gt;
Sisselogimiseks on vaikimisi loodud kaks erinevate õigustega kasutajat:&lt;br /&gt;
*Admin õigustega: 1@eesti.ee (parool: a)&lt;br /&gt;
*Tavakasutaja: 2@eesti.ee (parool: b)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rakendus asub [http://enos.itcollege.ee/~kegipt/VRII/ITK_VR2-preSwagger.zip SIIN].&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=103888</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=103888"/>
		<updated>2016-05-29T23:09:46Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskonna Veebiteenus &amp;amp; klientrakendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
Projekt realiseeritakse kasutades ASP.NET MVC Web API tehnoloogiat. &lt;br /&gt;
&lt;br /&gt;
Esialgne rakenduse ülesehituse skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Program_architecture.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Korraga saab rakendusse olla sisse logitud mitu kasutajat. &lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
* Serveris tuleb logida olulisemaid kasutajate poolt klientrakenduses tehtud toiminguid (sisse logimine, konto lukustumine, taski lisamine jmt);&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
== Meeskonna Veebiteenus &amp;amp; klientrakendus ==&lt;br /&gt;
29.05.2016&lt;br /&gt;
&lt;br /&gt;
Veebiteenus ja klientrakendus on realiseeritud ühes solutionis. &lt;br /&gt;
Rakenduse valmistamisel on aluseks võetud Mait Poska ja Andres Käveri lahkelt jagatud projektipõhi: [https://github.com/akaver/ASP.NET-BaseApps] [https://github.com/akaver/ASP.NET-WebApiDal]&lt;br /&gt;
&lt;br /&gt;
Rakenduse versioonihaldus toimus GitHub&#039;is [https://github.com/Seramis/ITK_VR2/tree/preSwagger]&lt;br /&gt;
&#039;&#039;&#039;NB!&#039;&#039;&#039; Rakenduse loomisel on katsetatud erinevate tehnoloogiatega. Viimaseks ja õigeks branch&#039;iks jäi &#039;preSwagger&#039;.&lt;br /&gt;
&lt;br /&gt;
Veebiteenus võimaldab:&lt;br /&gt;
*Teenuse pakkumist&lt;br /&gt;
*Teenuse kasutajate tuvastamist ning haldamist&lt;br /&gt;
*Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes (http access log serveri poolt, bearing key requesti headeris identifitseerimiseks)&lt;br /&gt;
*Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist (IIS QoS manageerimine).&lt;br /&gt;
*Teenus toetab mitme kasutaja sisselogimise võimalust.&lt;br /&gt;
&lt;br /&gt;
Teenus on loodud kasutades ASP.NET MVC Web API tehnoloogiat.&lt;br /&gt;
&lt;br /&gt;
Rakenduse testimiseks tuleb käivitada nii WebAPI projekt (serveri pool) kui ka Web projekt (ASP.NET klientrakendus).&lt;br /&gt;
Sisselogimiseks on vaikimisi loodud kaks erinevate õigustega kasutajat:&lt;br /&gt;
*Admin õigustega: 1@eesti.ee (parool: a)&lt;br /&gt;
*Tavakasutaja: 2@eesti.ee (parool: b)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rakendus asub [http://enos.itcollege.ee/~kegipt/VRII/ITK_VR2-ASP.NET.zip SIIN].&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=103881</id>
		<title>Kodutöö aines &quot;Võrgurakendused II: hajussüsteemide ehitamine&quot; 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=103881"/>
		<updated>2016-05-29T22:13:40Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskond: &amp;quot;Skeddl&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Võrgurakendused II: hajussüsteemide ehitamine]]&lt;br /&gt;
__NOINDEX__&lt;br /&gt;
&lt;br /&gt;
=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; 2016=&lt;br /&gt;
==Eesmärk==&lt;br /&gt;
Saada praktiline kogemus hajussüsteemide ehitamisest XML(SOAP) või Rest veebiteenusel ja sellele klientrakenduse loomise abil ning süvendada meeskonnatööoskust. &lt;br /&gt;
*SOAP veebiteenuse puhul eeldatakse WCF tehnoloogia kasutamist. Vanema põlvkonna ASP.NET veebiteenuse loomine ei ole lubatud, kuna seda ei toeta ka Microsoft enam tänasel päeval.&lt;br /&gt;
*REST teenuste loomisel tuleks kasutada ASP.NET Web API võimalusi.&lt;br /&gt;
&lt;br /&gt;
Kaugem eesmärk on loomulikult hinne :).&lt;br /&gt;
&lt;br /&gt;
==Reeglid==&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendused (soovitavalt vähemalt kaks)endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
Ühte projektimeeskonda kuulub 3..4 tudengit ning ühel teemal teostab projekti üks või mitu meeskonda. 1,2 ja viie liikmelised meeskonnad tuleks õppejõuga eraldi kooskõlastada.&lt;br /&gt;
&lt;br /&gt;
Töö käiku kajastatakse  http://wiki.itcollege.ee keskkonnas. Wikilehe täitmise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest.&lt;br /&gt;
&lt;br /&gt;
==Tähtajad==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;XML fail&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#XML_andmefail NB! Täpsem info]&lt;br /&gt;
** XML fail, stiilifail ja skeemifail peavad olema valmis ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;20. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid XML-failide kohta peavad tehtud olema &#039;&#039;&#039;27. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** &#039;&#039;&#039;Meeskonnad on loonud omale enda wiki lehe, kuhu kirjeldavad meeskonna ja panevad nad üles oma tööd. Lisaks hakkavad kogunema ka sinna teiste gruppide poolt kirjutatavad retsensioonid. &amp;lt;ins&amp;gt;Meeskonnalehed lingitakse selle lehe lõppu Meeskonna pealkirja alla.&amp;lt;/ins&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Veebiteenus&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Veebiteenus NB! Täpsem info]&lt;br /&gt;
** Veebiteenuse analüüs peab olema valmis, esitatud ja wikilehel kirjeldatud hiljemalt: &#039;&#039;&#039;17.aprill 2016&#039;&#039;&#039;&lt;br /&gt;
** Veebiteenus peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid veebiteenuste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Veebiteenus tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klientrakendused&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Klientrakendus NB! Täpsem info]&lt;br /&gt;
** Klientrakendused peavad olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid klientrakenduste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Klientrakendused tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--* &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne&#039;&#039;&#039;&lt;br /&gt;
** Meeskonnatöö kokkuvõttev aruanne peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt 8.mai 2011&lt;br /&gt;
** Arvamused Meeskonnatöö kokkuvõtva aruande ja esitluse kohta tuleb esitada hiljemalt päev enne eksamit&lt;br /&gt;
** &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne ja töö lõplik tulemus&#039;&#039;&#039; tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hindamine==&lt;br /&gt;
===Üldised kriteeriumid===&lt;br /&gt;
&lt;br /&gt;
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud.&lt;br /&gt;
&lt;br /&gt;
Maksimumtulemuse saavutamiseks peab projekt olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub  arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Maksimumtulemuse annab (vähemalt 4/6):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Majanduslik mõtlemine (kas loodav teenus ja rakendused oleks kasutatav ka ärilistel eesmärkidel)&lt;br /&gt;
* Mobiilrakendused &lt;br /&gt;
* AngularJS klientrakendus&lt;br /&gt;
* Kogukondade kaasamine&lt;br /&gt;
* Kasutajamugavus&lt;br /&gt;
* Läbimõeldud töökorraldus&lt;br /&gt;
* Lisavõimaluste realiseerimine (vt näidisteemad)&lt;br /&gt;
&lt;br /&gt;
===XML andmefail===&lt;br /&gt;
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning minimaalselt kaks sobivat XSL transformatsiooni faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kasutama vajadusel parameetreid ning kindlasti ka erinevaid tingimuste kontrolle.&lt;br /&gt;
&lt;br /&gt;
XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
 &amp;lt;dim1&amp;gt;&lt;br /&gt;
   &amp;lt;dim2&amp;gt;&lt;br /&gt;
     &amp;lt;dim3&amp;gt;&lt;br /&gt;
       &amp;lt;dim4&amp;gt;&lt;br /&gt;
       &amp;lt;/dim4&amp;gt;&lt;br /&gt;
     &amp;lt;/dim3&amp;gt;&lt;br /&gt;
   &amp;lt;/dim2&amp;gt;&lt;br /&gt;
 &amp;lt;/dim1&amp;gt;&lt;br /&gt;
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.&lt;br /&gt;
&lt;br /&gt;
Käesoleva ülesande käigus peab looma meeskonna ning selle wiki lehekülje&lt;br /&gt;
&lt;br /&gt;
===Veebiteenus===&lt;br /&gt;
Loodav veebiteenus peab võimaldama:&lt;br /&gt;
* Teenuse pakkumist&lt;br /&gt;
* &#039;&#039;&#039;Teenuse kasutajate tuvastamist ning haldamist&#039;&#039;&#039;&lt;br /&gt;
* Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes&lt;br /&gt;
* Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus peab toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus tuleb luua kasutades &#039;&#039;Windows Communication Foundation&#039;&#039; või ASP.NET MVC  Web API tehnoloogiat&lt;br /&gt;
&lt;br /&gt;
Andmebaasis peab olema vähemalt 9 olemit ehk andmebaas on eeldus,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soovitav on luua teenus (FE) ja teenuse seadistamiseks ning kasutajate haldamiseks mõeldud rakendus (BE).&lt;br /&gt;
&lt;br /&gt;
===Klientrakendus===&lt;br /&gt;
Klientrakendus mõnele olemasolevale veebiteenusele, võib olla teostatud veebirakendusena, Silverlight, WPF või vormirakendusena.&lt;br /&gt;
&lt;br /&gt;
Variant1: teha klientrakendus enda loodud veebiteenusele &lt;br /&gt;
&lt;br /&gt;
Variant2: teha klientrakendus mõnele levinud veebiteenusele.&lt;br /&gt;
Näiteks: &lt;br /&gt;
* http://www.bing.com/developer&lt;br /&gt;
* http://www.flickr.com/services/api/response.soap.html&lt;br /&gt;
* http://developer.ebay.com/developercenter/windows/&lt;br /&gt;
* http://apiwiki.twitter.com/Getting-Started&lt;br /&gt;
&lt;br /&gt;
===Retsensioonid===&lt;br /&gt;
Retsensioon on üliõpilase iseseisva teadustöö kriitilise analüüsi põhjal koostatud argumenteeritud hinnang. Retsensioonis tuleb hinnata töö vastavust esitatud tingimustele, programmikoodi loetavust ning kommenteeritust, dokumentatsiooni ja kirjeldada puudusi. Retsensioonide põhjal on meeskondadel õigus oma projekte parandada enne määratud esitamistähtaja kättejõudmist.&lt;br /&gt;
&lt;br /&gt;
Retsensioon peab sisaldama minimaalselt...&lt;br /&gt;
* XML - ...200 sõna.&lt;br /&gt;
* Veebiteenus - ...600 sõna.&lt;br /&gt;
* Klientrakendus - ...600 sõna.&lt;br /&gt;
&lt;br /&gt;
Mõnelauselisest arvamusest ei piisa, kuna tegemist on grupi loodavate arvustustega, mitte individuaalsete arvustustega.&lt;br /&gt;
&lt;br /&gt;
==Konsultatsioonid==&lt;br /&gt;
 Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma&lt;br /&gt;
 töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida&lt;br /&gt;
 õppejõuga kokkuleppeid kontaktidel&lt;br /&gt;
 mait.poska [ät] itcollege.ee või (+372 53 469 734)&lt;br /&gt;
 (teksti originaalautor Priit Raspel)&lt;br /&gt;
&lt;br /&gt;
=Teemad 2016 kevad=&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendus mõnele olemasolevale või endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
NB! XML andmefail ja veebiteenus ei pea olema omavahel seotud.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Näidisteemad==&lt;br /&gt;
&lt;br /&gt;
===Nimede pakkumise teenus===&lt;br /&gt;
Mõte selles, et luua nimede baas, mille abil pakkuda rakenduse loojale sobiva algusega nimesid. Reaalne rakendus: &#039;&#039;autocompleter&#039;&#039; tarvis teenuse pakkumine&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua sobiva alguse järgi nimede pakkumise teenus:&lt;br /&gt;
* alates kahetähelisetest algustest pakkuda sobivad nimesid&lt;br /&gt;
* luua võimalus kasutajatel nimesid lisada&lt;br /&gt;
* luua võimalus administraatoril nimesid muuta/kustutada&lt;br /&gt;
* meeste ja naiste nimed peavad olema süsteemis eristatavad&lt;br /&gt;
* luua võimalus, mis võimaldab kuvada populaarseid nimesid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* luua võimalus, et nimi lisatakse baasi alles siis, kui administraatori õigustega inimene on selleks vastava loa andnud&lt;br /&gt;
&lt;br /&gt;
===Külastusstatistika teenus===&lt;br /&gt;
Mõte selles, et pakkuda teenust, kus kasutajal on võimalik registreerida külastused ning küsida oma külastusstatistikat.&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua külastusstatistika teenus:&lt;br /&gt;
* kasutaja saab teenuses registreerida külastusi&lt;br /&gt;
* kasutaja saab küsida külastusstatistikat päevade/kuude/kogu perioodi lõikes&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
&lt;br /&gt;
Lisavõimalused:&lt;br /&gt;
* luua võimalus registreerida alamlehtede külastusstatistikat&lt;br /&gt;
* luua võimalus külastusstatistikale lisaparameetrite lisamiseks (ip aadress, sirviku versioon jne)&lt;br /&gt;
&lt;br /&gt;
===Telefoniraamatu teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada kontakte ja nende seast otsida&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua telefoniraamatu teenus:&lt;br /&gt;
* kasutaja saab teenuses kontakte lisada ja kustutada&lt;br /&gt;
* kasutaja saab kontaktide nime/telefoninumbri jne abil otsida&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutajaid on võimalik lisada gruppidesse&lt;br /&gt;
* kasutajal on võimalik lisada vajalike kontaktandmete liike&lt;br /&gt;
* kasutajatel on võimalik jagada omavahel kontakte ja kontaktide grupper&lt;br /&gt;
&lt;br /&gt;
===RSS voogude kogumise ja uudiste kuvamise teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada talle huvipakkuvaid RSS vooge ja nendelt voogudelt uudiseid lugeda&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua RSS voogude haldusteenus:&lt;br /&gt;
* kasutaja saab teenuses RSS vooge lisada ja kustudada&lt;br /&gt;
* kasutaja saab pärida talle huvipakkuvate voogude viimaseid uudiseid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutaja saab RSS vooge vaadata eraldi või grupeeritult&lt;br /&gt;
* vooge peab puhverdama, kuna voogude lugemine võtab enamasti üsna palju aega &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
= Meeskonnad 2016=&lt;br /&gt;
&lt;br /&gt;
==Päevaõpe==&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Travo 2.0 ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tarvo Reinpalu&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond: Travo 2.0]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Aloha Snackbar&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Egert Aia&lt;br /&gt;
* Merit Ridaste&lt;br /&gt;
* Ants-Kristjan Rooma&lt;br /&gt;
* Siim Ivask&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Aloha Snackbar]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [[SHOP]] asub [https://wiki.itcollege.ee/index.php/Talk:SHOP siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [[LuckyYou]] asub [https://wiki.itcollege.ee/index.php/Talk:LuckyYou siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Kõnõtraat ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kristjan Tõnismäe&lt;br /&gt;
* Andreas Plado&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Kõnõtraat]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Lebokeiss OÜ Core 1.0&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
Meeskonna koduleht: [[Lebokeiss OÜ]].&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 Travo 2.0] asub [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;LuckyYou&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tanel Vähk&lt;br /&gt;
* Aleks Luik&lt;br /&gt;
* Melissa Eenmaa&lt;br /&gt;
* Taavi Kliss&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LuckyYou]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 TRAVO 2.0] XML retsensioon leiab [https://wiki.itcollege.ee/index.php?title=LuckyYou#XML_retsensioon_TRAVO_2.0 SIIT]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/K%C3%B5n%C3%B5traat Kõnõtraat] XML retsensioon leiab [https://wiki.itcollege.ee/index.php?title=LuckyYou#XML_retsensioon_K.C3.95N.C3.95TRAAT SIIT]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond SHOP ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Johannes Tamm&lt;br /&gt;
* Martin Mägi&lt;br /&gt;
* Martin Betlem&lt;br /&gt;
* Merilyn Renser&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[SHOP]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#SHOPi_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond BurgerAce ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Silver Ohlo&lt;br /&gt;
* Martin Luik&lt;br /&gt;
* Ahto Elken&lt;br /&gt;
* Arvo Bendi&lt;br /&gt;
Meeskonna koduleht: [[BurgerAce]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Netgroup Netgroup] asub [https://wiki.itcollege.ee/index.php/Talk:Netgroup siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Ordering Ordering] asub [https://wiki.itcollege.ee/index.php/Talk:Ordering siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond LinkCode ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Rene Ott&lt;br /&gt;
* Renet Pirso&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LinkCode]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Screaming_Magic_Gnomes Screaming Magic Gnomes] asub [https://wiki.itcollege.ee/index.php/Talk:Screaming_Magic_Gnomes#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/DoubleTrouble Double Trouble] asub [https://wiki.itcollege.ee/index.php/Talk:DoubleTrouble#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Screaming Magic Gnomes ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Märt Häkkinen&lt;br /&gt;
* Taavi Kivimaa&lt;br /&gt;
* Siim Osa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Screaming_Magic_Gnomes]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar#Retsensioon_XML Aloha Snackbar]&lt;br /&gt;
&lt;br /&gt;
retsensioon meeskonnale Ordering [https://wiki.itcollege.ee/index.php/Talk:Ordering]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Givela ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikk Raudsepp&lt;br /&gt;
* Alar Ameerikas&lt;br /&gt;
* Vladimir Rõkovanov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Givela]]&lt;br /&gt;
&lt;br /&gt;
XML Retsensioon meeskonnale [[Kõnõtraat]] asub [https://wiki.itcollege.ee/index.php/Talk:K%C3%B5n%C3%B5traat siin ]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VVA ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleksandr Babõkin&lt;br /&gt;
* Vladislav Kovaltšuk&lt;br /&gt;
* Andrei Tverskoi&lt;br /&gt;
* Vladislav Lahtarin&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VVA]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon XML-failide kohta meeskonnale &amp;quot;Givela&amp;quot; [https://wiki.itcollege.ee/index.php/VVA#Retsensioon_XML-failide_kohta_meeskonnale_.22Givela.22 siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Undress Gaver&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Marko Koiduste&lt;br /&gt;
* Jaanus Türnpuu&lt;br /&gt;
* Sergei Fatejev&lt;br /&gt;
* Kaspar Tilk&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Undress Gaver]] &amp;lt;br /&amp;gt;&lt;br /&gt;
Retsensioon meeskonna [https://wiki.itcollege.ee/index.php/Ordering Ordering] XML-ile asub [https://wiki.itcollege.ee/index.php/Talk:Ordering#Retsensioon_meeskonna_Undress_G.C3.A4ver_poolt siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Double Trouble&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kaido Henrik Elias&lt;br /&gt;
* Jekaterina Jakimets&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[DoubleTrouble]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale VRJ [https://wiki.itcollege.ee/index.php/Talk:VRJ asub siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
XML retsensioon meeskonnale Givela [https://wiki.itcollege.ee/index.php/Talk:Givela asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Team ATW&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleks Tatter&lt;br /&gt;
* Vaiko Vällik&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Team_ATW]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Netgroup&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Indrek Nurja&lt;br /&gt;
* Imre Teras&lt;br /&gt;
* Kristjan Kotto&lt;br /&gt;
* Marek Kivikink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Netgroup]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Ordering&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kelli Lukas&lt;br /&gt;
* Märt Lõhmus&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Ordering]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond KTM Development ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tauno Otti&lt;br /&gt;
* Mart Abel&lt;br /&gt;
* Kristian Laupa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[KTMdev]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#SHOPi_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Status Code 200&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Ilja Andrejev&lt;br /&gt;
* Kristjan Kivisild&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Status_Code_200]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Spendings&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tauri Busch&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Spendings]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Loading ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Laura Teder&lt;br /&gt;
* Martin Saar&lt;br /&gt;
* Roomet Saadi&lt;br /&gt;
* Indrek Tamm&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Loading]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#Meeskond_Loading_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Undress_Gaver Undress Gaver] asub [https://wiki.itcollege.ee/index.php/Talk:Undress_Gaver#Meeskond_Loading_retsensioon_meeskonnale_Undress_Gaver siin]&lt;br /&gt;
&lt;br /&gt;
==Kaugõpe==&lt;br /&gt;
=== Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikhail Reznichenko&lt;br /&gt;
* 10143193&lt;br /&gt;
* 10090107&lt;br /&gt;
* Alisa Dudinova&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioonid meeskonnale [https://wiki.itcollege.ee/index.php/Talk:VRJ &amp;quot;VRJ&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Vrii-team &amp;quot;Vrii-team&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VRii Team ===&lt;br /&gt;
&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Mets&lt;br /&gt;
* Toomas Juhkov&lt;br /&gt;
* Tiit Kuuskmäe&lt;br /&gt;
* Kaire Toom&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Vrii-team]]&lt;br /&gt;
&lt;br /&gt;
XML: [http://enos.itcollege.ee/~amets/VR2/XML/xml-resources.zip] XML olemas ka meeskonna kodulehel.&lt;br /&gt;
&lt;br /&gt;
Retsensioonid XML ülesandele: [https://wiki.itcollege.ee/index.php/Talk:Meeskond_%22Symphony_No._7_in_C-sharp_minor%22 Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Sille Sille].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;VRJ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jevgeni Gavrilov&lt;br /&gt;
* Vladimir Nitsenko&lt;br /&gt;
* Riho Uusjärv&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VRJ]]&lt;br /&gt;
&lt;br /&gt;
Meeskond [https://wiki.itcollege.ee/index.php/Aeg&amp;quot;Aeg&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Enneaegsed&amp;quot;Enneaegsed&amp;quot;] retsentsioonid asuvad [https://wiki.itcollege.ee/index.php/VRJ#Retsensioon &amp;quot;siin&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;freeVariable&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mihkel Viilveer&lt;br /&gt;
* Kristjan Adrat&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[freeVar]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[Aeg]] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_1 asub siin]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 TRAVO 2.0] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_2 asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Enneaegsed&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jaan Elken&lt;br /&gt;
* Margit Ool&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioon meeskonnale Travo 2.0 [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 asub siin].&lt;br /&gt;
XML ülesande retsensioon meeskonnale Aloha Snackbar [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar asub siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Skeddl&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Skeddl]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;19.03.2016&#039;&#039;&#039; XML/XSLT ülesande leiab [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26.03.2016&#039;&#039;&#039; Meeskonna [[Aeg]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_1_retsensioon SIIT]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26.03.2016&#039;&#039;&#039; Meeskonna [[Enneaegsed]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_2 SIIT]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;29.05.2016&#039;&#039;&#039; Veebiteenus &amp;amp; Klientrakendus asuvad [https://wiki.itcollege.ee/index.php/Skeddl SIIN]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Sille&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Trei&lt;br /&gt;
* Lasse Kolkanen&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Sille]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[VRJ]] XML retsensioon asub : [https://wiki.itcollege.ee/index.php/Sille#XML_retsensioon SIIN]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;A$unik&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Hardi Antsov&lt;br /&gt;
* Juhan Trink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[A$unik]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Yksikyritus&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Kaidi Parman&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Yksikyritus]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Aeg&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Maksim Gorb&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Aeg]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;VRFeeds&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Tarmo Sillajõe&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[VRFeeds]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon [[meeskonna &amp;quot;freeVariable&amp;quot; XML&#039;i osale ]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon [[meeskonna &amp;quot;Sille&amp;quot; XML&#039;i osale ]]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=103879</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=103879"/>
		<updated>2016-05-29T22:08:55Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
Projekt realiseeritakse kasutades ASP.NET MVC Web API tehnoloogiat. &lt;br /&gt;
&lt;br /&gt;
Esialgne rakenduse ülesehituse skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Program_architecture.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Korraga saab rakendusse olla sisse logitud mitu kasutajat. &lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
* Serveris tuleb logida olulisemaid kasutajate poolt klientrakenduses tehtud toiminguid (sisse logimine, konto lukustumine, taski lisamine jmt);&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
== Meeskonna Veebiteenus &amp;amp; klientrakendus ==&lt;br /&gt;
29.05.2016&lt;br /&gt;
&lt;br /&gt;
Veebiteenus ja klientrakendus on realiseeritud ühes solutionis. &lt;br /&gt;
Rakenduse valmistamisel on aluseks võetud Mait Poska ja Andres Käveri lahkelt jagatud projektipõhi: [https://github.com/akaver/ASP.NET-BaseApps]&lt;br /&gt;
&lt;br /&gt;
Rakenduse versioonihaldus toimus GitHub&#039;is [https://github.com/Seramis/ITK_VR2/tree/preSwagger]&lt;br /&gt;
&#039;&#039;&#039;NB!&#039;&#039;&#039; Rakenduse loomisel on katsetatud erinevate tehnoloogiatega. Viimaseks ja õigeks branch&#039;iks jäi &#039;preSwagger&#039;.&lt;br /&gt;
&lt;br /&gt;
Veebiteenus võimaldab:&lt;br /&gt;
*Teenuse pakkumist&lt;br /&gt;
*Teenuse kasutajate tuvastamist ning haldamist&lt;br /&gt;
*Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes (http access log serveri poolt)&lt;br /&gt;
*Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist (bearing key on http requesti sees).&lt;br /&gt;
*Teenus toetab mitme kasutaja sisselogimise võimalust.&lt;br /&gt;
&lt;br /&gt;
Teenus on loodud kasutades ASP.NET MVC Web API tehnoloogiat.&lt;br /&gt;
&lt;br /&gt;
Teenuse testimiseks tuleb see käivitada Debuggeri režiimis, mis tõmbab käima nii Web kui ka WebAPI projektid.&lt;br /&gt;
Sisselogimiseks on vaikimisi loodud kaks erinevate õigustega kasutajat:&lt;br /&gt;
*Admin õigustega: 1@eesti.ee (parool: a)&lt;br /&gt;
*Tavakasutaja: 2@eesti.ee (parool: b)&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102639</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102639"/>
		<updated>2016-04-17T16:29:36Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Andmebaasi skeem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
Projekt realiseeritakse kasutades ASP.NET MVC Web API tehnoloogiat. &lt;br /&gt;
&lt;br /&gt;
Esialgne rakenduse ülesehituse skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Program_architecture.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Korraga saab rakendusse olla sisse logitud mitu kasutajat. &lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
* Serveris tuleb logida olulisemaid kasutajate poolt klientrakenduses tehtud toiminguid (sisse logimine, konto lukustumine, taski lisamine jmt);&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|1000px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102638</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102638"/>
		<updated>2016-04-17T16:28:55Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Andmebaasi skeem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
Projekt realiseeritakse kasutades ASP.NET MVC Web API tehnoloogiat. &lt;br /&gt;
&lt;br /&gt;
Esialgne rakenduse ülesehituse skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Program_architecture.PNG]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Korraga saab rakendusse olla sisse logitud mitu kasutajat. &lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
* Serveris tuleb logida olulisemaid kasutajate poolt klientrakenduses tehtud toiminguid (sisse logimine, konto lukustumine, taski lisamine jmt);&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102637</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102637"/>
		<updated>2016-04-17T16:27:41Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102608</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102608"/>
		<updated>2016-04-16T19:26:37Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Analüüs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
*&amp;lt;b&amp;gt;Tegevuste logimine&amp;lt;/b&amp;gt;&lt;br /&gt;
* Serveris tuleb logida kõiki kasutajate poolt klientrakenduses tehtud toiminguid;&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
Kasutajate haldust puudutavad olemid ei ole hetkeseisuga skeemile lisatud.&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102607</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102607"/>
		<updated>2016-04-16T19:25:14Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Andmebaasi skeem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
*&amp;lt;b&amp;gt;Tegevuste logimine&amp;lt;/b&amp;gt;&lt;br /&gt;
* Serveris tuleb logida kõiki kasutajate poolt klientrakenduses tehtud toiminguid;&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
Kasutajate haldust puudutavad olemid ei ole hetkeseisuga skeemile lisatud.&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102606</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102606"/>
		<updated>2016-04-16T19:21:35Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Analüüs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
*&amp;lt;b&amp;gt;Tegevuste logimine&amp;lt;/b&amp;gt;&lt;br /&gt;
* Serveris tuleb logida kõiki kasutajate poolt klientrakenduses tehtud toiminguid;&lt;br /&gt;
* Kasutaja blokeerimine (ajutine), kui kasutaja on ennast püüdnud autentida vale parooliga enam kui X korda.&lt;br /&gt;
* Kasutaja poolt sisestatud e-maili kinnitamine (kinnitava e-maili saatmine) kasutaja loomisel.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102605</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102605"/>
		<updated>2016-04-16T19:11:46Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Analüüs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
*&amp;lt;b&amp;gt;Tegevuste logimine&amp;lt;/b&amp;gt;&lt;br /&gt;
* Serveris tuleb logida kõiki kasutajate poolt klientrakenduses tehtud toiminguid;&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102604</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102604"/>
		<updated>2016-04-16T19:10:57Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Analüüs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral lisada kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
* Kasutajal parooli reset&#039;imise võimalus (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
* Grupiga liitumiseks taotluse esitamine. Taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Grupist lahkumine&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
*&amp;lt;b&amp;gt;Tegevuste logimine&amp;lt;/b&amp;gt;&lt;br /&gt;
* Serveris tuleb logida kõiki kasutajate poolt klientrakenduses tehtud toiminguid;&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
Esimeses faasis ei realiseeri nö &amp;quot;pehmet kustutamist&amp;quot;. Antud lahendus jääb nice-to-have nimekirja.&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102603</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102603"/>
		<updated>2016-04-16T19:02:59Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=102602</id>
		<title>Kodutöö aines &quot;Võrgurakendused II: hajussüsteemide ehitamine&quot; 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=102602"/>
		<updated>2016-04-16T16:30:31Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskond: &amp;quot;Skeddl&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Võrgurakendused II: hajussüsteemide ehitamine]]&lt;br /&gt;
__NOINDEX__&lt;br /&gt;
&lt;br /&gt;
=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; 2016=&lt;br /&gt;
==Eesmärk==&lt;br /&gt;
Saada praktiline kogemus hajussüsteemide ehitamisest XML(SOAP) või Rest veebiteenusel ja sellele klientrakenduse loomise abil ning süvendada meeskonnatööoskust. &lt;br /&gt;
*SOAP veebiteenuse puhul eeldatakse WCF tehnoloogia kasutamist. Vanema põlvkonna ASP.NET veebiteenuse loomine ei ole lubatud, kuna seda ei toeta ka Microsoft enam tänasel päeval.&lt;br /&gt;
*REST teenuste loomisel tuleks kasutada ASP.NET Web API võimalusi.&lt;br /&gt;
&lt;br /&gt;
Kaugem eesmärk on loomulikult hinne :).&lt;br /&gt;
&lt;br /&gt;
==Reeglid==&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendused (soovitavalt vähemalt kaks)endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
Ühte projektimeeskonda kuulub 3..4 tudengit ning ühel teemal teostab projekti üks või mitu meeskonda. 1,2 ja viie liikmelised meeskonnad tuleks õppejõuga eraldi kooskõlastada.&lt;br /&gt;
&lt;br /&gt;
Töö käiku kajastatakse  http://wiki.itcollege.ee keskkonnas. Wikilehe täitmise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest.&lt;br /&gt;
&lt;br /&gt;
==Tähtajad==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;XML fail&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#XML_andmefail NB! Täpsem info]&lt;br /&gt;
** XML fail, stiilifail ja skeemifail peavad olema valmis ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;20. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid XML-failide kohta peavad tehtud olema &#039;&#039;&#039;27. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** &#039;&#039;&#039;Meeskonnad on loonud omale enda wiki lehe, kuhu kirjeldavad meeskonna ja panevad nad üles oma tööd. Lisaks hakkavad kogunema ka sinna teiste gruppide poolt kirjutatavad retsensioonid. &amp;lt;ins&amp;gt;Meeskonnalehed lingitakse selle lehe lõppu Meeskonna pealkirja alla.&amp;lt;/ins&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Veebiteenus&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Veebiteenus NB! Täpsem info]&lt;br /&gt;
** Veebiteenuse analüüs peab olema valmis, esitatud ja wikilehel kirjeldatud hiljemalt: &#039;&#039;&#039;17.aprill 2016&#039;&#039;&#039;&lt;br /&gt;
** Veebiteenus peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid veebiteenuste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Veebiteenus tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klientrakendused&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Klientrakendus NB! Täpsem info]&lt;br /&gt;
** Klientrakendused peavad olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid klientrakenduste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Klientrakendused tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--* &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne&#039;&#039;&#039;&lt;br /&gt;
** Meeskonnatöö kokkuvõttev aruanne peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt 8.mai 2011&lt;br /&gt;
** Arvamused Meeskonnatöö kokkuvõtva aruande ja esitluse kohta tuleb esitada hiljemalt päev enne eksamit&lt;br /&gt;
** &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne ja töö lõplik tulemus&#039;&#039;&#039; tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hindamine==&lt;br /&gt;
===Üldised kriteeriumid===&lt;br /&gt;
&lt;br /&gt;
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud.&lt;br /&gt;
&lt;br /&gt;
Maksimumtulemuse saavutamiseks peab projekt olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub  arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Maksimumtulemuse annab (vähemalt 4/6):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Majanduslik mõtlemine (kas loodav teenus ja rakendused oleks kasutatav ka ärilistel eesmärkidel)&lt;br /&gt;
* Mobiilrakendused &lt;br /&gt;
* AngularJS klientrakendus&lt;br /&gt;
* Kogukondade kaasamine&lt;br /&gt;
* Kasutajamugavus&lt;br /&gt;
* Läbimõeldud töökorraldus&lt;br /&gt;
* Lisavõimaluste realiseerimine (vt näidisteemad)&lt;br /&gt;
&lt;br /&gt;
===XML andmefail===&lt;br /&gt;
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning minimaalselt kaks sobivat XSL transformatsiooni faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kasutama vajadusel parameetreid ning kindlasti ka erinevaid tingimuste kontrolle.&lt;br /&gt;
&lt;br /&gt;
XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
 &amp;lt;dim1&amp;gt;&lt;br /&gt;
   &amp;lt;dim2&amp;gt;&lt;br /&gt;
     &amp;lt;dim3&amp;gt;&lt;br /&gt;
       &amp;lt;dim4&amp;gt;&lt;br /&gt;
       &amp;lt;/dim4&amp;gt;&lt;br /&gt;
     &amp;lt;/dim3&amp;gt;&lt;br /&gt;
   &amp;lt;/dim2&amp;gt;&lt;br /&gt;
 &amp;lt;/dim1&amp;gt;&lt;br /&gt;
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.&lt;br /&gt;
&lt;br /&gt;
Käesoleva ülesande käigus peab looma meeskonna ning selle wiki lehekülje&lt;br /&gt;
&lt;br /&gt;
===Veebiteenus===&lt;br /&gt;
Loodav veebiteenus peab võimaldama:&lt;br /&gt;
* Teenuse pakkumist&lt;br /&gt;
* &#039;&#039;&#039;Teenuse kasutajate tuvastamist ning haldamist&#039;&#039;&#039;&lt;br /&gt;
* Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes&lt;br /&gt;
* Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus peab toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus tuleb luua kasutades &#039;&#039;Windows Communication Foundation&#039;&#039; või ASP.NET MVC  Web API tehnoloogiat&lt;br /&gt;
&lt;br /&gt;
Andmebaasis peab olema vähemalt 9 olemit ehk andmebaas on eeldus,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soovitav on luua teenus (FE) ja teenuse seadistamiseks ning kasutajate haldamiseks mõeldud rakendus (BE).&lt;br /&gt;
&lt;br /&gt;
===Klientrakendus===&lt;br /&gt;
Klientrakendus mõnele olemasolevale veebiteenusele, võib olla teostatud veebirakendusena, Silverlight, WPF või vormirakendusena.&lt;br /&gt;
&lt;br /&gt;
Variant1: teha klientrakendus enda loodud veebiteenusele &lt;br /&gt;
&lt;br /&gt;
Variant2: teha klientrakendus mõnele levinud veebiteenusele.&lt;br /&gt;
Näiteks: &lt;br /&gt;
* http://www.bing.com/developer&lt;br /&gt;
* http://www.flickr.com/services/api/response.soap.html&lt;br /&gt;
* http://developer.ebay.com/developercenter/windows/&lt;br /&gt;
* http://apiwiki.twitter.com/Getting-Started&lt;br /&gt;
&lt;br /&gt;
===Retsensioonid===&lt;br /&gt;
Retsensioon on üliõpilase iseseisva teadustöö kriitilise analüüsi põhjal koostatud argumenteeritud hinnang. Retsensioonis tuleb hinnata töö vastavust esitatud tingimustele, programmikoodi loetavust ning kommenteeritust, dokumentatsiooni ja kirjeldada puudusi. Retsensioonide põhjal on meeskondadel õigus oma projekte parandada enne määratud esitamistähtaja kättejõudmist.&lt;br /&gt;
&lt;br /&gt;
Retsensioon peab sisaldama minimaalselt...&lt;br /&gt;
* XML - ...200 sõna.&lt;br /&gt;
* Veebiteenus - ...600 sõna.&lt;br /&gt;
* Klientrakendus - ...600 sõna.&lt;br /&gt;
&lt;br /&gt;
Mõnelauselisest arvamusest ei piisa, kuna tegemist on grupi loodavate arvustustega, mitte individuaalsete arvustustega.&lt;br /&gt;
&lt;br /&gt;
==Konsultatsioonid==&lt;br /&gt;
 Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma&lt;br /&gt;
 töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida&lt;br /&gt;
 õppejõuga kokkuleppeid kontaktidel&lt;br /&gt;
 mait.poska [ät] itcollege.ee või (+372 53 469 734)&lt;br /&gt;
 (teksti originaalautor Priit Raspel)&lt;br /&gt;
&lt;br /&gt;
=Teemad 2016 kevad=&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendus mõnele olemasolevale või endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
NB! XML andmefail ja veebiteenus ei pea olema omavahel seotud.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Näidisteemad==&lt;br /&gt;
&lt;br /&gt;
===Nimede pakkumise teenus===&lt;br /&gt;
Mõte selles, et luua nimede baas, mille abil pakkuda rakenduse loojale sobiva algusega nimesid. Reaalne rakendus: &#039;&#039;autocompleter&#039;&#039; tarvis teenuse pakkumine&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua sobiva alguse järgi nimede pakkumise teenus:&lt;br /&gt;
* alates kahetähelisetest algustest pakkuda sobivad nimesid&lt;br /&gt;
* luua võimalus kasutajatel nimesid lisada&lt;br /&gt;
* luua võimalus administraatoril nimesid muuta/kustutada&lt;br /&gt;
* meeste ja naiste nimed peavad olema süsteemis eristatavad&lt;br /&gt;
* luua võimalus, mis võimaldab kuvada populaarseid nimesid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* luua võimalus, et nimi lisatakse baasi alles siis, kui administraatori õigustega inimene on selleks vastava loa andnud&lt;br /&gt;
&lt;br /&gt;
===Külastusstatistika teenus===&lt;br /&gt;
Mõte selles, et pakkuda teenust, kus kasutajal on võimalik registreerida külastused ning küsida oma külastusstatistikat.&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua külastusstatistika teenus:&lt;br /&gt;
* kasutaja saab teenuses registreerida külastusi&lt;br /&gt;
* kasutaja saab küsida külastusstatistikat päevade/kuude/kogu perioodi lõikes&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
&lt;br /&gt;
Lisavõimalused:&lt;br /&gt;
* luua võimalus registreerida alamlehtede külastusstatistikat&lt;br /&gt;
* luua võimalus külastusstatistikale lisaparameetrite lisamiseks (ip aadress, sirviku versioon jne)&lt;br /&gt;
&lt;br /&gt;
===Telefoniraamatu teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada kontakte ja nende seast otsida&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua telefoniraamatu teenus:&lt;br /&gt;
* kasutaja saab teenuses kontakte lisada ja kustutada&lt;br /&gt;
* kasutaja saab kontaktide nime/telefoninumbri jne abil otsida&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutajaid on võimalik lisada gruppidesse&lt;br /&gt;
* kasutajal on võimalik lisada vajalike kontaktandmete liike&lt;br /&gt;
* kasutajatel on võimalik jagada omavahel kontakte ja kontaktide grupper&lt;br /&gt;
&lt;br /&gt;
===RSS voogude kogumise ja uudiste kuvamise teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada talle huvipakkuvaid RSS vooge ja nendelt voogudelt uudiseid lugeda&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua RSS voogude haldusteenus:&lt;br /&gt;
* kasutaja saab teenuses RSS vooge lisada ja kustudada&lt;br /&gt;
* kasutaja saab pärida talle huvipakkuvate voogude viimaseid uudiseid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutaja saab RSS vooge vaadata eraldi või grupeeritult&lt;br /&gt;
* vooge peab puhverdama, kuna voogude lugemine võtab enamasti üsna palju aega &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
= Meeskonnad 2016=&lt;br /&gt;
&lt;br /&gt;
==Päevaõpe==&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Travo 2.0 ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tarvo Reinpalu&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond: Travo 2.0]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Aloha Snackbar&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Egert Aia&lt;br /&gt;
* Merit Ridaste&lt;br /&gt;
* Ants-Kristjan Rooma&lt;br /&gt;
* Siim Ivask&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Aloha Snackbar]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [[SHOP]] asub [https://wiki.itcollege.ee/index.php/Talk:SHOP siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [[LuckyYou]] asub [https://wiki.itcollege.ee/index.php/Talk:LuckyYou siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Kõnõtraat ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kristjan Tõnismäe&lt;br /&gt;
* Andreas Plado&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Kõnõtraat]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Lebokeiss OÜ Core 1.0&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
Meeskonna koduleht: [[Lebokeiss OÜ]].&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 Travo 2.0] asub [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;LuckyYou&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tanel Vähk&lt;br /&gt;
* Aleks Luik&lt;br /&gt;
* Melissa Eenmaa&lt;br /&gt;
* Taavi Kliss&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LuckyYou]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 TRAVO 2.0] XML retsensioon leiab [https://wiki.itcollege.ee/index.php?title=LuckyYou#XML_retsensioon_TRAVO_2.0 SIIT]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/K%C3%B5n%C3%B5traat Kõnõtraat] XML retsensioon leiab [https://wiki.itcollege.ee/index.php?title=LuckyYou#XML_retsensioon_K.C3.95N.C3.95TRAAT SIIT]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond SHOP ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Johannes Tamm&lt;br /&gt;
* Martin Mägi&lt;br /&gt;
* Martin Betlem&lt;br /&gt;
* Merilyn Renser&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[SHOP]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#SHOPi_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond BurgerAce ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Silver Ohlo&lt;br /&gt;
* Martin Luik&lt;br /&gt;
* Ahto Elken&lt;br /&gt;
* Arvo Bendi&lt;br /&gt;
Meeskonna koduleht: [[BurgerAce]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Netgroup Netgroup] asub [https://wiki.itcollege.ee/index.php/Talk:Netgroup siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Ordering Ordering] asub [https://wiki.itcollege.ee/index.php/Talk:Ordering siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond LinkCode ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Rene Ott&lt;br /&gt;
* Renet Pirso&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LinkCode]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Screaming_Magic_Gnomes Screaming Magic Gnomes] asub [https://wiki.itcollege.ee/index.php/Talk:Screaming_Magic_Gnomes#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/DoubleTrouble Double Trouble] asub [https://wiki.itcollege.ee/index.php/Talk:DoubleTrouble#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Screaming Magic Gnomes ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Märt Häkkinen&lt;br /&gt;
* Taavi Kivimaa&lt;br /&gt;
* Siim Osa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Screaming_Magic_Gnomes]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar#Retsensioon_XML Aloha Snackbar]&lt;br /&gt;
&lt;br /&gt;
retsensioon meeskonnale Ordering [https://wiki.itcollege.ee/index.php/Talk:Ordering]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Givela ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikk Raudsepp&lt;br /&gt;
* Alar Ameerikas&lt;br /&gt;
* Vladimir Rõkovanov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Givela]]&lt;br /&gt;
&lt;br /&gt;
XML Retsensioon meeskonnale [[Kõnõtraat]] asub [https://wiki.itcollege.ee/index.php/Talk:K%C3%B5n%C3%B5traat siin ]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VVA ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleksandr Babõkin&lt;br /&gt;
* Vladislav Kovaltšuk&lt;br /&gt;
* Andrei Tverskoi&lt;br /&gt;
* Vladislav Lahtarin&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VVA]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon XML-failide kohta meeskonnale &amp;quot;Givela&amp;quot; [https://wiki.itcollege.ee/index.php/VVA#Retsensioon_XML-failide_kohta_meeskonnale_.22Givela.22 siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Undress Gaver&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Marko Koiduste&lt;br /&gt;
* Jaanus Türnpuu&lt;br /&gt;
* Sergei Fatejev&lt;br /&gt;
* Kaspar Tilk&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Undress Gaver]] &amp;lt;br /&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Ordering Ordering] asub [https://wiki.itcollege.ee/index.php/Talk:Ordering#Retsensioon_meeskonna_Undress_G.C3.A4ver_poolt siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Double Trouble&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kaido Henrik Elias&lt;br /&gt;
* Jekaterina Jakimets&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[DoubleTrouble]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale VRJ [https://wiki.itcollege.ee/index.php/Talk:VRJ asub siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
XML retsensioon meeskonnale Givela [https://wiki.itcollege.ee/index.php/Talk:Givela asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Team ATW&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleks Tatter&lt;br /&gt;
* Vaiko Vällik&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Team_ATW]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Netgroup&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Indrek Nurja&lt;br /&gt;
* Imre Teras&lt;br /&gt;
* Kristjan Kotto&lt;br /&gt;
* Marek Kivikink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Netgroup]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Ordering&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kelli Lukas&lt;br /&gt;
* Märt Lõhmus&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Ordering]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond KTM Development ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tauno Otti&lt;br /&gt;
* Mart Abel&lt;br /&gt;
* Kristian Laupa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[KTMdev]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Status Code 200&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Ilja Andrejev&lt;br /&gt;
* Kristjan Kivisild&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Status_Code_200]]&lt;br /&gt;
&lt;br /&gt;
==Kaugõpe==&lt;br /&gt;
=== Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikhail Reznichenko&lt;br /&gt;
* 10143193&lt;br /&gt;
* 10090107&lt;br /&gt;
* Alisa Dudinova&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioonid meeskonnale [https://wiki.itcollege.ee/index.php/Talk:VRJ &amp;quot;VRJ&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Vrii-team &amp;quot;Vrii-team&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VRii Team ===&lt;br /&gt;
&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Mets&lt;br /&gt;
* Toomas Juhkov&lt;br /&gt;
* Tiit Kuuskmäe&lt;br /&gt;
* Kaire Toom&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Vrii-team]]&lt;br /&gt;
&lt;br /&gt;
XML: [http://enos.itcollege.ee/~amets/VR2/XML/xml-resources.zip] XML olemas ka meeskonna kodulehel.&lt;br /&gt;
&lt;br /&gt;
Retsensioonid XML ülesandele: [https://wiki.itcollege.ee/index.php/Talk:Meeskond_%22Symphony_No._7_in_C-sharp_minor%22 Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Sille Sille].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;VRJ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jevgeni Gavrilov&lt;br /&gt;
* Vladimir Nitsenko&lt;br /&gt;
* Riho Uusjärv&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VRJ]]&lt;br /&gt;
&lt;br /&gt;
Meeskond [https://wiki.itcollege.ee/index.php/Aeg&amp;quot;Aeg&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Enneaegsed&amp;quot;Enneaegsed&amp;quot;] retsentsioonid asuvad [https://wiki.itcollege.ee/index.php/VRJ#Retsensioon &amp;quot;siin&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;freeVariable&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mihkel Viilveer&lt;br /&gt;
* Kristjan Adrat&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[freeVar]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[Aeg]] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_1 asub siin]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 TRAVO 2.0] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_2 asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Enneaegsed&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jaan Elken&lt;br /&gt;
* Margit Ool&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioon meeskonnale Travo 2.0 [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 asub siin].&lt;br /&gt;
XML ülesande retsensioon meeskonnale Aloha Snackbar [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar asub siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Skeddl&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Skeddl]]&lt;br /&gt;
&lt;br /&gt;
19.03.2016 XML/XSLT ülesande leiab [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
&lt;br /&gt;
26.03.2016 Meeskonna [[Aeg]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_1_retsensioon SIIT]&lt;br /&gt;
&lt;br /&gt;
26.03.2016 Meeskonna [[Enneaegsed]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_2 SIIT]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Sille&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Trei&lt;br /&gt;
* Lasse Kolkanen&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Sille]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[VRJ]] XML retsensioon asub : [https://wiki.itcollege.ee/index.php/Sille#XML_retsensioon SIIN]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;A$unik&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Hardi Antsov&lt;br /&gt;
* Juhan Trink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[A$unik]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Yksikyritus&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Kaidi Parman&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Yksikyritus]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Aeg&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Maksim Gorb&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Aeg]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;VRFeeds&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Tarmo Sillajõe&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[VRFeeds]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon [[meeskonna &amp;quot;freeVariable&amp;quot; XML&#039;i osale ]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon [[meeskonna &amp;quot;Sille&amp;quot; XML&#039;i osale ]]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102601</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102601"/>
		<updated>2016-04-16T16:28:46Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Tiim */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veebiklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel üritab rakendus kasutajat autentida. Eduka autentimise korral kuvatakse antud kasutaja töölaud ning sünkroniseeritakse andmed serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus teavitab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Üldine&amp;lt;/b&amp;gt;&lt;br /&gt;
** Rakendus peab töötama online  režiimis;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Kasutajate haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Peab olema võimalik kasutajaks registreerida (st kasutajakonto olemasolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
** Kasutaja peab saama sisse logida kasutajanime (st e-maili aadressi) ja parooliga;&lt;br /&gt;
** Paroolile peavad rakenduma keerukusnõuded (nt 8 tähemärki, suurtäht, väiketäht, number, sümbol);&lt;br /&gt;
** Kasutajal peab olema võimalik oma parooli reset&#039;ida (registreerimisel kasutatud e-mailiaadressi abil); &lt;br /&gt;
** Kasutajatel peavad olema erinevad õiguste tasemed (minimaalselt tavakasutaja ja adminkasutaja/poweruser);&lt;br /&gt;
*** Tavakasutaja saab hallata ainult iseenda taske ja gruppe;&lt;br /&gt;
*** Adminkasutaja saab hallata lisaks iseenda taskidele ja gruppidele ka õppeaineid ja õppejõude; &lt;br /&gt;
*** Klientrakenduse adminkasutaja ei saa hallata teiste kasutajate taske; &lt;br /&gt;
** Sisse logitud kasutajale kuvatakse tema taske kalendervaates;&lt;br /&gt;
** Kasutaja peab saama registreerida ennast gruppidesse ja erinevatele õppeainetele/kursustele;&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Taskide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Kasutaja peab saama lisada uut taski;&lt;br /&gt;
** Kasutaja poolt lisatud taskid (ja tema poolt subscribe&#039;itud taskid) peavad kajastuma kasutaja kalendris;&lt;br /&gt;
** Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
*** task&#039;i täitmise tähtaega;&lt;br /&gt;
*** task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam/arvestus, test, muu;&lt;br /&gt;
*** taskiga seotud õppeaine ettantud nimekirjast (drop-down);&lt;br /&gt;
*** taskiga seotud gruppi;&lt;br /&gt;
**** kui taskile on grupp määratud, siis kuvatakse seda taski vaid selle grupi liikmetele;&lt;br /&gt;
*** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
*** aega, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
*** taski staatust, st kas task on alustamata, pooleli või lõpetatud; &lt;br /&gt;
** Kasutaja peab saama vaadata oma taskide sisu. &lt;br /&gt;
** Kasutaja peab saama muuta oma task’ide sisu.&lt;br /&gt;
** Kasutaja peab saama oma task&#039;e kustutada. &lt;br /&gt;
** Kasutaja peab saama taske märksõna alusel otsida&lt;br /&gt;
*** Seejuures peab otsing hõlmama kõiki taskidega seotud tekstilisi välju (st pealkiri, kirjeldus, kommentaar, töö liik, grupp, õppeaine, staatus)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppeainete haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppeaine peab olema lisatav ja muudetav admin kasutaja (kuid mitte tavakasutaja) poolt&lt;br /&gt;
** Õppeained on kasutajale nähtavad&lt;br /&gt;
** Õppeainele on võimalik subscribeda (kirjeldatud kasutaja tegevusena)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Õppejõudude haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
** Õppejõud on admin kasutaja (kuid mitte tavakasutaja) poolt lisatav ja muudetav&lt;br /&gt;
** Õppejõu info (nt kontaktandmed) on kasutajale nähtav&lt;br /&gt;
** Õppejõud on seotud õppeainega&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Gruppide haldus&amp;lt;/b&amp;gt;&lt;br /&gt;
* Uut gruppi saab lisada iga tavakasutaja&lt;br /&gt;
* Sellest kasutajast, kes uue grupi lisab, saab vastava grupi omanik&lt;br /&gt;
* Gruppi saab muuta või kustutada ainult grupi omanik&lt;br /&gt;
* Gruppe saab nime järgi otsida&lt;br /&gt;
* Grupi andmeid saavad näha kõik kasutajad (näiteks otsingutulemustes)&lt;br /&gt;
* Grupi omanik saab gruppi lisada teisi kasutajaid&lt;br /&gt;
* Kasutaja saab esitada taotluse grupiga liitumiseks, taotluse peab kinnitama grupi omanik&lt;br /&gt;
* Kasutaja saab grupist lahkuda, selleks ei ole kinnitust vaja&lt;br /&gt;
* Kui task on seotud mingi grupiga, siis näevad selle taski andmeid ainult vastava grupi liikmed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Klientrakenduse nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Valitud taski liigist lähtuvalt vastava töö nõuete kuvamine (näiteks EIK &amp;quot;Üliõpilaste kirjalike tööde koostamise ja vormistamise juhendi&amp;quot; põhjal)&lt;br /&gt;
* Võimalus sünkroniseerida kalendrit mõne välise kalenderrakendusega (Google Calendar, MS Outlook vm).&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri must-have funktsionaalsus&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Server peab toetama kõiki klientrakenduse must-have nõudeid. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Serveri nice-to-have funktsionaalsus&amp;lt;/b&amp;gt;&lt;br /&gt;
*&amp;lt;b&amp;gt;Tegevuste logimine&amp;lt;/b&amp;gt;&lt;br /&gt;
* Serveris tuleb logida kõiki kasutajate poolt klientrakenduses tehtud toiminguid;&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102450</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102450"/>
		<updated>2016-04-06T19:29:30Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Andmebaasi skeem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veeniklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel kuvatakse antud kasutaja töölaua, ning rakendus üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama online  režiimis;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102449</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102449"/>
		<updated>2016-04-06T19:28:52Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102448</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102448"/>
		<updated>2016-04-06T19:28:30Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102447</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102447"/>
		<updated>2016-04-06T19:28:11Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102446</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102446"/>
		<updated>2016-04-06T19:27:07Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Andmebaasi skeem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veeniklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel kuvatakse antud kasutaja töölaua, ning rakendus üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama online  režiimis;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|800px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102445</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102445"/>
		<updated>2016-04-06T19:26:57Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Andmebaasi skeem */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veeniklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel kuvatakse antud kasutaja töölaua, ning rakendus üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama online  režiimis;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
&lt;br /&gt;
[[File:|800px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102444</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102444"/>
		<updated>2016-04-06T19:25:47Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102443</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102443"/>
		<updated>2016-04-06T18:01:05Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102358</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102358"/>
		<updated>2016-04-01T20:28:26Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Analüüs == &lt;br /&gt;
AVE 3.0 on kodutööde planeerimise rakendus, kuhu registreerutud kasutaja saab lisada õppeaines antud kodutöid, tegevusi lisada neile esitamise tähtaegu ja muud lisainformatsiooni. Sisestatud ülesandeid saab jagada kas kõikide sama ainel osalejatega või siis privaatselt loodud grupis.&lt;br /&gt;
&lt;br /&gt;
AVE 3.0 on edasiarendus eelmisel semestril C# aines loodud rakendusest AVE 2.0. Eelmine ja ühtlasi esimene versioon sisaldas vaid kohaliku kalendri rakenduse funktsionaalsust ning ei võimaldanud ülesandeid kaastudengitega jagada. AVE 3.0 puhul on keskendume registreeritud kasutajate poolt ligipääsetavale online lahendusele. Samuti oleme õppinud vigadest ning muutnud andmebaasi mudelit.&lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Subject&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Group&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (tähtaeg, kirjeldus, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab õppeainele subscribe&#039;ida ja seda tehes saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus kuvab kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutaja võib teiste lisatud taskile kommentaare lisada.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: veebiklient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja neile lisatud kommentaare.&lt;br /&gt;
&lt;br /&gt;
Veeniklient suhtleb serveriga üle API.&lt;br /&gt;
&lt;br /&gt;
Sisselogimisel küsitakse kasutajalt kasutajanime ja parooli, seejärel kuvatakse antud kasutaja töölaua, ning rakendus üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot (kirjeldus, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama online  režiimis;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
&lt;br /&gt;
=== Andmebaasi skeem ===&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|800px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
===XML retsensioon 1===&lt;br /&gt;
Retsensioon meeskonna [[Aeg]] [https://wiki.itcollege.ee/index.php/Aeg#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Aeg XML faili eesmärk on edastada andmeid määratlemata ülesannete lahendamiseks kulunud aja kohta. XML faili struktuur ületab 4 loogilise dimensiooni nõude, sisaldades 5 loogilist dimensioon. Kolmel dimensioonil on kasutatud attribuute, kus ei ole piirdutud ainult id attribuudiga, jaotades ajaraportid id alusel nädalasteks arendusperioodideks, mida administraator saab kinnitada või tagasi lükata. Olemas on sobivad XSL transformatsioonid XML faili andmete muutmiseks HTML formaati (Activities) ja XML faili formaadi muutmiseks (Summary) XML formaati kui ka XML skeemifail. Summary transformatsioon sisaldab küll ainult ühte for-loopi, kuid meie hinnangul on see piisav antud lahendusele ja kunstlik kompleksuse juurde lisamine ülevaate puhul lisaväärtust ei tekitaks, kui just ei eraldata paremini kasutajate rolle. Activities transformatsioon on keerulisem, sisaldades for-each tsüklit teise for-each tsükli sees, koos konstruktsioonidega andmete loogiliseks ja terviklikuks esitamiseks. Iga ajaraporti juures on raporti tegija eesnimi, perekonnanimi, osakonnaline kuuluvus ja roll ja tema poolt lisatud sündmuste logid. XML fail valideerus vigadeta w3schools.com XML validaatoris. Kuna arenduskontekst ei ole veel üheselt selge wikilehel leitud info põhjal, siis võib-olla on mõistlik kasutaja roll muuta osakonna alamdimensiooniks ja lisada näiteks projekti juhtimise õiguse jaoks eraldi dimensioon, toetamaks võimaliku mugavusliidese arendamist lisana. Aja ühiku valik võiks olla paindlikum, praegu on tegevuse ühikuks ainult tunnid. Skeemifailis xs:string pikkus võiks olla piiratud andmete esitamise ja raportide kokkuvõtlikusele suunamise eesmärgil maksimaalse väärtusega. Miinusena tooksime välja XML koodi saatva dokumentatsioonilise poole puudulikust: paar selgitavat lauset wikis ja koodi visuaalse väljundi lisamine oleksid meeldivad.  Üldiselt kood näeb välja puhas ja elementide nimede valik on hästi läbi mõeldud ja stiil pidev. Meie hinnangul vastab meeskonna Aeg projekti XML osa kõigile esitatud tingimustele.&lt;br /&gt;
&lt;br /&gt;
===XML retsensioon 2===&lt;br /&gt;
Retsensioon meeskonna [[Enneaegsed]] [https://wiki.itcollege.ee/index.php/Enneaegsed#XML XML] failile.&lt;br /&gt;
&lt;br /&gt;
Meeskonna Enneaegsed XML faili ülesanne on individuaalsete arvete kuvamine, XML transformatsioonidel aga nende kokkuvõtlik kuvamine nimekirjana ja sobivasse formaati genereerimine, eesmärgiga saada arved trükivormi. XML fail ületab 4 loogilise dimensiooni nõude, sisaldades 6 loogilist dimensioon. Ainult ühes dimensioonis on kasutatud rohkem kui kahte attribuuti korraga. Alamdimensioonides on kasutatud eristamiseks üksikuna esinevaid attribuute, mis on arvete või muu kaudselt seotud andmekogumite kuvamisel ka mõistlik. Olemas on nii XML skeemifail kui ka arvete nimekirja genereerimise transformatsioon andmete muutmiseks HTML formaati ja arvete üldnimekirja kuvamiseks mõeldud arvete genereerimise transformatsioon HTML formaati, mis muudab algset XML faili formaati. Arvete nimekirja kuvamise transformatsioon sisaldab ühte for-each tsüklit struktuuri loova xsl:choose valikuga. Teine, kõik arved genereeriv transformatsioon, on keeleliste konstruktsioonide poolest palju rikkalikum, sisaldades nii mitmetasemelist for-each tsüklit, hargemist ja väljundi kujundamist. Iga arve juures on välja toodud suur valik informatsiooni, seal hulgas arve number, tellimuse number, saaja informatsioon, tähtajainfo, märkused jne. XML faili struktuur on lihtne arvete kogum, mis on terviklik s.t võiks olla reaalses süsteemis kasutamiseks ja on loodud suure põhjalikkusega. Plussina tooksime välja XML koodiga kaasnevate näidiste olemasolu ja selgitavat informatsioon, mis täidab piisava, kuid mitte koormava, dokumentatsiooni rolli. Kood on puhas ja elementide nimetamisel on kasutatud läbivalt samat stiili, mis teeb koodi hästi loetavaks ja arusaadavaks. Meie hinnangul vastab meeskonna Enneaegsed projekti XML osa kõigile esitatud tingimustele.&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102341</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102341"/>
		<updated>2016-03-29T20:49:18Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Kegipt uploaded a new version of File:AVE 3.0.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102166</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102166"/>
		<updated>2016-03-26T09:13:34Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Idee */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Andmebaasi skeem&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[File:AVE_3.0.jpg|800px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102165</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102165"/>
		<updated>2016-03-26T09:12:43Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Idee */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Andmebaasi skeem&#039;&#039;&lt;br /&gt;
[[File:AVE_3.0.jpg|900px]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102164</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=102164"/>
		<updated>2016-03-26T09:12:08Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Andmebaasi skeem&#039;&#039;&lt;br /&gt;
[[File:AVE_3.0.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102163</id>
		<title>File:AVE 3.0.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=File:AVE_3.0.jpg&amp;diff=102163"/>
		<updated>2016-03-26T09:11:13Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Andmebaasi skeem 26.03.2016&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Andmebaasi skeem 26.03.2016&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=101988</id>
		<title>Kodutöö aines &quot;Võrgurakendused II: hajussüsteemide ehitamine&quot; 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=101988"/>
		<updated>2016-03-19T21:22:49Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskond: &amp;quot;Skeddl&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Võrgurakendused II: hajussüsteemide ehitamine]]&lt;br /&gt;
&lt;br /&gt;
=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; 2016=&lt;br /&gt;
==Eesmärk==&lt;br /&gt;
Saada praktiline kogemus hajussüsteemide ehitamisest XML(SOAP) või Rest veebiteenusel ja sellele klientrakenduse loomise abil ning süvendada meeskonnatööoskust. &lt;br /&gt;
*SOAP veebiteenuse puhul eeldatakse WCF tehnoloogia kasutamist. Vanema põlvkonna ASP.NET veebiteenuse loomine ei ole lubatud, kuna seda ei toeta ka Microsoft enam tänasel päeval.&lt;br /&gt;
*REST teenuste loomisel tuleks kasutada ASP.NET Web API võimalusi.&lt;br /&gt;
&lt;br /&gt;
Kaugem eesmärk on loomulikult hinne :).&lt;br /&gt;
&lt;br /&gt;
==Reeglid==&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendused (soovitavalt vähemalt kaks)endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
Ühte projektimeeskonda kuulub 3..4 tudengit ning ühel teemal teostab projekti üks või mitu meeskonda. 1,2 ja viie liikmelised meeskonnad tuleks õppejõuga eraldi kooskõlastada.&lt;br /&gt;
&lt;br /&gt;
Töö käiku kajastatakse  http://wiki.itcollege.ee keskkonnas. Wikilehe täitmise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest.&lt;br /&gt;
&lt;br /&gt;
==Tähtajad==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;XML fail&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#XML_andmefail NB! Täpsem info]&lt;br /&gt;
** XML fail, stiilifail ja skeemifail peavad olema valmis ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;20. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid XML-failide kohta peavad tehtud olema &#039;&#039;&#039;27. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** &#039;&#039;&#039;Meeskonnad on loonud omale enda wiki lehe, kuhu kirjeldavad meeskonna ja panevad nad üles oma tööd. Lisaks hakkavad kogunema ka sinna teiste gruppide poolt kirjutatavad retsensioonid. &amp;lt;ins&amp;gt;Meeskonnalehed lingitakse selle lehe lõppu Meeskonna pealkirja alla.&amp;lt;/ins&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Veebiteenus&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Veebiteenus NB! Täpsem info]&lt;br /&gt;
** Veebiteenuse analüüs peab olema valmis, esitatud ja wikilehel kirjeldatud hiljemalt: &#039;&#039;&#039;17.aprill 2016&#039;&#039;&#039;&lt;br /&gt;
** Veebiteenus peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid veebiteenuste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Veebiteenus tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klientrakendused&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Klientrakendus NB! Täpsem info]&lt;br /&gt;
** Klientrakendused peavad olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid klientrakenduste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Klientrakendused tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--* &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne&#039;&#039;&#039;&lt;br /&gt;
** Meeskonnatöö kokkuvõttev aruanne peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt 8.mai 2011&lt;br /&gt;
** Arvamused Meeskonnatöö kokkuvõtva aruande ja esitluse kohta tuleb esitada hiljemalt päev enne eksamit&lt;br /&gt;
** &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne ja töö lõplik tulemus&#039;&#039;&#039; tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hindamine==&lt;br /&gt;
===Üldised kriteeriumid===&lt;br /&gt;
&lt;br /&gt;
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud.&lt;br /&gt;
&lt;br /&gt;
Maksimumtulemuse saavutamiseks peab projekt olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub  arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Maksimumtulemuse annab (vähemalt 4/6):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Majanduslik mõtlemine (kas loodav teenus ja rakendused oleks kasutatav ka ärilistel eesmärkidel)&lt;br /&gt;
* Mobiilrakendused &lt;br /&gt;
* AngularJS klientrakendus&lt;br /&gt;
* Kogukondade kaasamine&lt;br /&gt;
* Kasutajamugavus&lt;br /&gt;
* Läbimõeldud töökorraldus&lt;br /&gt;
* Lisavõimaluste realiseerimine (vt näidisteemad)&lt;br /&gt;
&lt;br /&gt;
===XML andmefail===&lt;br /&gt;
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning minimaalselt kaks sobivat XSL transformatsiooni faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kasutama vajadusel parameetreid ning kindlasti ka erinevaid tingimuste kontrolle.&lt;br /&gt;
&lt;br /&gt;
XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
 &amp;lt;dim1&amp;gt;&lt;br /&gt;
   &amp;lt;dim2&amp;gt;&lt;br /&gt;
     &amp;lt;dim3&amp;gt;&lt;br /&gt;
       &amp;lt;dim4&amp;gt;&lt;br /&gt;
       &amp;lt;/dim4&amp;gt;&lt;br /&gt;
     &amp;lt;/dim3&amp;gt;&lt;br /&gt;
   &amp;lt;/dim2&amp;gt;&lt;br /&gt;
 &amp;lt;/dim1&amp;gt;&lt;br /&gt;
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.&lt;br /&gt;
&lt;br /&gt;
Käesoleva ülesande käigus peab looma meeskonna ning selle wiki lehekülje&lt;br /&gt;
&lt;br /&gt;
===Veebiteenus===&lt;br /&gt;
Loodav veebiteenus peab võimaldama:&lt;br /&gt;
* Teenuse pakkumist&lt;br /&gt;
* &#039;&#039;&#039;Teenuse kasutajate tuvastamist ning haldamist&#039;&#039;&#039;&lt;br /&gt;
* Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes&lt;br /&gt;
* Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus peab toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus tuleb luua kasutades &#039;&#039;Windows Communication Foundation&#039;&#039; või ASP.NET MVC  Web API tehnoloogiat&lt;br /&gt;
&lt;br /&gt;
Andmebaasis peab olema vähemalt 9 olemit ehk andmebaas on eeldus,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soovitav on luua teenus (FE) ja teenuse seadistamiseks ning kasutajate haldamiseks mõeldud rakendus (BE).&lt;br /&gt;
&lt;br /&gt;
===Klientrakendus===&lt;br /&gt;
Klientrakendus mõnele olemasolevale veebiteenusele, võib olla teostatud veebirakendusena, Silverlight, WPF või vormirakendusena.&lt;br /&gt;
&lt;br /&gt;
Variant1: teha klientrakendus enda loodud veebiteenusele &lt;br /&gt;
&lt;br /&gt;
Variant2: teha klientrakendus mõnele levinud veebiteenusele.&lt;br /&gt;
Näiteks: &lt;br /&gt;
* http://www.bing.com/developer&lt;br /&gt;
* http://www.flickr.com/services/api/response.soap.html&lt;br /&gt;
* http://developer.ebay.com/developercenter/windows/&lt;br /&gt;
* http://apiwiki.twitter.com/Getting-Started&lt;br /&gt;
&lt;br /&gt;
===Retsensioonid===&lt;br /&gt;
Retsensioon on üliõpilase iseseisva teadustöö kriitilise analüüsi põhjal koostatud argumenteeritud hinnang. Retsensioonis tuleb hinnata töö vastavust esitatud tingimustele, programmikoodi loetavust ning kommenteeritust, dokumentatsiooni ja kirjeldada puudusi. Retsensioonide põhjal on meeskondadel õigus oma projekte parandada enne määratud esitamistähtaja kättejõudmist.&lt;br /&gt;
&lt;br /&gt;
Retsensioon peab sisaldama minimaalselt...&lt;br /&gt;
* XML - ...200 sõna.&lt;br /&gt;
* Veebiteenus - ...600 sõna.&lt;br /&gt;
* Klientrakendus - ...600 sõna.&lt;br /&gt;
&lt;br /&gt;
Mõnelauselisest arvamusest ei piisa, kuna tegemist on grupi loodavate arvustustega, mitte individuaalsete arvustustega.&lt;br /&gt;
&lt;br /&gt;
==Konsultatsioonid==&lt;br /&gt;
 Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma&lt;br /&gt;
 töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida&lt;br /&gt;
 õppejõuga kokkuleppeid kontaktidel&lt;br /&gt;
 mait.poska [ät] itcollege.ee või (+372 53 469 734)&lt;br /&gt;
 (teksti originaalautor Priit Raspel)&lt;br /&gt;
&lt;br /&gt;
=Teemad 2016 kevad=&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendus mõnele olemasolevale või endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
NB! XML andmefail ja veebiteenus ei pea olema omavahel seotud.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Näidisteemad==&lt;br /&gt;
&lt;br /&gt;
===Nimede pakkumise teenus===&lt;br /&gt;
Mõte selles, et luua nimede baas, mille abil pakkuda rakenduse loojale sobiva algusega nimesid. Reaalne rakendus: &#039;&#039;autocompleter&#039;&#039; tarvis teenuse pakkumine&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua sobiva alguse järgi nimede pakkumise teenus:&lt;br /&gt;
* alates kahetähelisetest algustest pakkuda sobivad nimesid&lt;br /&gt;
* luua võimalus kasutajatel nimesid lisada&lt;br /&gt;
* luua võimalus administraatoril nimesid muuta/kustutada&lt;br /&gt;
* meeste ja naiste nimed peavad olema süsteemis eristatavad&lt;br /&gt;
* luua võimalus, mis võimaldab kuvada populaarseid nimesid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* luua võimalus, et nimi lisatakse baasi alles siis, kui administraatori õigustega inimene on selleks vastava loa andnud&lt;br /&gt;
&lt;br /&gt;
===Külastusstatistika teenus===&lt;br /&gt;
Mõte selles, et pakkuda teenust, kus kasutajal on võimalik registreerida külastused ning küsida oma külastusstatistikat.&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua külastusstatistika teenus:&lt;br /&gt;
* kasutaja saab teenuses registreerida külastusi&lt;br /&gt;
* kasutaja saab küsida külastusstatistikat päevade/kuude/kogu perioodi lõikes&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
&lt;br /&gt;
Lisavõimalused:&lt;br /&gt;
* luua võimalus registreerida alamlehtede külastusstatistikat&lt;br /&gt;
* luua võimalus külastusstatistikale lisaparameetrite lisamiseks (ip aadress, sirviku versioon jne)&lt;br /&gt;
&lt;br /&gt;
===Telefoniraamatu teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada kontakte ja nende seast otsida&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua telefoniraamatu teenus:&lt;br /&gt;
* kasutaja saab teenuses kontakte lisada ja kustutada&lt;br /&gt;
* kasutaja saab kontaktide nime/telefoninumbri jne abil otsida&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutajaid on võimalik lisada gruppidesse&lt;br /&gt;
* kasutajal on võimalik lisada vajalike kontaktandmete liike&lt;br /&gt;
* kasutajatel on võimalik jagada omavahel kontakte ja kontaktide grupper&lt;br /&gt;
&lt;br /&gt;
===RSS voogude kogumise ja uudiste kuvamise teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada talle huvipakkuvaid RSS vooge ja nendelt voogudelt uudiseid lugeda&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua RSS voogude haldusteenus:&lt;br /&gt;
* kasutaja saab teenuses RSS vooge lisada ja kustudada&lt;br /&gt;
* kasutaja saab pärida talle huvipakkuvate voogude viimaseid uudiseid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutaja saab RSS vooge vaadata eraldi või grupeeritult&lt;br /&gt;
* vooge peab puhverdama, kuna voogude lugemine võtab enamasti üsna palju aega &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
= Meeskonnad 2016=&lt;br /&gt;
&lt;br /&gt;
==Päevaõpe==&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Travo 2.0 ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tarvo Reinpalu&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond: Travo 2.0]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Aloha Snackbar&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Egert Aia&lt;br /&gt;
* Merit Ridaste&lt;br /&gt;
* Ants-Kristjan Rooma&lt;br /&gt;
* Siim Ivask&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Aloha Snackbar]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Kõnõtraat ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kristjan Tõnismäe&lt;br /&gt;
* Andreas Plado&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Kõnõtraat]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Lebokeiss OÜ Core 1.0&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
Meeskonna koduleht: [[Lebokeiss OÜ]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;LuckyYou&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tanel Vähk&lt;br /&gt;
* Aleks Luik&lt;br /&gt;
* Melissa Eenmaa&lt;br /&gt;
* Taavi Kliss&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LuckyYou]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond SHOP ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Johannes Tamm&lt;br /&gt;
* Martin Mägi&lt;br /&gt;
* Martin Betlem&lt;br /&gt;
* Merilyn Renser&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[SHOP]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond BurgerAce ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Silver Ohlo&lt;br /&gt;
* Martin Luik&lt;br /&gt;
* Ahto Elken&lt;br /&gt;
* Arvo Bendi&lt;br /&gt;
Meeskonna koduleht: [[BurgerAce]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond LinkCode ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Rene Ott&lt;br /&gt;
* Renet Pirso&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LinkCode]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Screaming Magic Gnomes ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Märt Häkkinen&lt;br /&gt;
* Taavi Kivimaa&lt;br /&gt;
* Siim Osa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Screaming_Magic_Gnomes]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Givela ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikk Raudsepp&lt;br /&gt;
* Alar Ameerikas&lt;br /&gt;
* Vladimir Rõkovanov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Givela]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VVA ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleksandr Babõkin&lt;br /&gt;
* Vladislav Kovaltšuk&lt;br /&gt;
* Andrei Tverskoi&lt;br /&gt;
* Vladislav Lahtarin&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VVA]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Undress Gaver&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Marko Koiduste&lt;br /&gt;
* Jaanus Türnpuu&lt;br /&gt;
* Sergei Fatejev&lt;br /&gt;
* Kaspar Tilk&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Undress Gaver]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Double Trouble&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kaido Henrik Elias&lt;br /&gt;
* Jekaterina Jakimets&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[DoubleTrouble]]&lt;br /&gt;
&lt;br /&gt;
==Kaugõpe==&lt;br /&gt;
=== Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikhail Reznichenko&lt;br /&gt;
* 10143193&lt;br /&gt;
* Oleg Berezin&lt;br /&gt;
* Alisa Dudinova&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VRii Team ===&lt;br /&gt;
&lt;br /&gt;
Liikemd:&lt;br /&gt;
* Andres Mets&lt;br /&gt;
* Toomas Juhkov&lt;br /&gt;
* Tiit Kuuskmäe&lt;br /&gt;
* Kaire Toom&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Vrii-team]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;VRJ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jevgeni Gavrilov&lt;br /&gt;
* Vladimir Nitsenko&lt;br /&gt;
* Riho Uusjärv&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VRJ]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;freeVariable&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mihkel Viilveer&lt;br /&gt;
* Kristjan Adrat&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[freeVar]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Enneaegsed&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jaan Elken&lt;br /&gt;
* Margit Ool&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Skeddl&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Skeddl]]&lt;br /&gt;
&lt;br /&gt;
19.03.2016 XML/XSLT ülesande leiab [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Sille&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Trei&lt;br /&gt;
* Lasse Kolkanen&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Sille]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;A$unik&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Hardi Antsov&lt;br /&gt;
* Juhan Trink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[A$unik]]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101987</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101987"/>
		<updated>2016-03-19T21:22:01Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskonna XML/XSLT ülesande postitus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
19.03.2016&lt;br /&gt;
&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101958</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101958"/>
		<updated>2016-03-19T10:21:58Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskonna XML/XSLT ülesande postitus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkeddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101957</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101957"/>
		<updated>2016-03-19T10:21:34Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Meeskonna XML/XSLT ülesande postitus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;br /&gt;
Kirjeldus:&lt;br /&gt;
* XML fail Taskide andmete edastamiseks (4 loogilist dimensiooni);&lt;br /&gt;
* XML faili skeemifail;&lt;br /&gt;
* XSL transformatsiooni faili loodud XML failis olevate Taski andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. &lt;br /&gt;
** SkddlTasksByStatus.xslt - Toob välja kõik etteantud grupi taskid taski staatuse järgi (alustamata, pooleli ja valmis);&lt;br /&gt;
** ShowPublicTasks.xslt - Tagastab kõik public Taskid koos kuupäevaga.&lt;br /&gt;
&lt;br /&gt;
.zip fail on kättesaadav [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101953</id>
		<title>Skeddl</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Skeddl&amp;diff=101953"/>
		<updated>2016-03-19T09:52:59Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: Created page with &amp;quot;__TOC__  == Tiim == * Karina Egipt * Kärt Palm * Joonatan Uusväli * Siim Veskilt * Aleksei Suvorov  == Idee ==   To-do ja ülesannete/tegumite halduse rakendus kooli õppeai...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Tiim ==&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
== Idee == &lt;br /&gt;
&lt;br /&gt;
To-do ja ülesannete/tegumite halduse rakendus kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot (eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Keskne online andmebaas - kogu info on hallatav ja nähtav rakenduse kasutajatele. Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
[https://wiki.itcollege.ee/index.php/Meeskond:_Spooky_Scary_Skeletons Esialgne projekt C# aines]&lt;br /&gt;
&lt;br /&gt;
== Meeskonna XML/XSLT ülesande postitus ==&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=101952</id>
		<title>Kodutöö aines &quot;Võrgurakendused II: hajussüsteemide ehitamine&quot; 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=101952"/>
		<updated>2016-03-19T09:52:12Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Võrgurakendused II: hajussüsteemide ehitamine]]&lt;br /&gt;
&lt;br /&gt;
=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; 2016=&lt;br /&gt;
==Eesmärk==&lt;br /&gt;
Saada praktiline kogemus hajussüsteemide ehitamisest XML(SOAP) või Rest veebiteenusel ja sellele klientrakenduse loomise abil ning süvendada meeskonnatööoskust. &lt;br /&gt;
*SOAP veebiteenuse puhul eeldatakse WCF tehnoloogia kasutamist. Vanema põlvkonna ASP.NET veebiteenuse loomine ei ole lubatud, kuna seda ei toeta ka Microsoft enam tänasel päeval.&lt;br /&gt;
*REST teenuste loomisel tuleks kasutada ASP.NET Web API võimalusi.&lt;br /&gt;
&lt;br /&gt;
Kaugem eesmärk on loomulikult hinne :).&lt;br /&gt;
&lt;br /&gt;
==Reeglid==&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendused (soovitavalt vähemalt kaks)endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
Ühte projektimeeskonda kuulub 3..4 tudengit ning ühel teemal teostab projekti üks või mitu meeskonda. 1,2 ja viie liikmelised meeskonnad tuleks õppejõuga eraldi kooskõlastada.&lt;br /&gt;
&lt;br /&gt;
Töö käiku kajastatakse  http://wiki.itcollege.ee keskkonnas. Wikilehe täitmise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest.&lt;br /&gt;
&lt;br /&gt;
==Tähtajad==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;XML fail&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#XML_andmefail NB! Täpsem info]&lt;br /&gt;
** XML fail, stiilifail ja skeemifail peavad olema valmis ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;20. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid XML-failide kohta peavad tehtud olema &#039;&#039;&#039;27. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** &#039;&#039;&#039;Meeskonnad on loonud omale enda wiki lehe, kuhu kirjeldavad meeskonna ja panevad nad üles oma tööd. Lisaks hakkavad kogunema ka sinna teiste gruppide poolt kirjutatavad retsensioonid. &amp;lt;ins&amp;gt;Meeskonnalehed lingitakse selle lehe lõppu Meeskonna pealkirja alla.&amp;lt;/ins&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Veebiteenus&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Veebiteenus NB! Täpsem info]&lt;br /&gt;
** Veebiteenuse analüüs peab olema valmis, esitatud ja wikilehel kirjeldatud hiljemalt: &#039;&#039;&#039;17.aprill 2016&#039;&#039;&#039;&lt;br /&gt;
** Veebiteenus peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid veebiteenuste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Veebiteenus tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klientrakendused&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Klientrakendus NB! Täpsem info]&lt;br /&gt;
** Klientrakendused peavad olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid klientrakenduste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Klientrakendused tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--* &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne&#039;&#039;&#039;&lt;br /&gt;
** Meeskonnatöö kokkuvõttev aruanne peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt 8.mai 2011&lt;br /&gt;
** Arvamused Meeskonnatöö kokkuvõtva aruande ja esitluse kohta tuleb esitada hiljemalt päev enne eksamit&lt;br /&gt;
** &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne ja töö lõplik tulemus&#039;&#039;&#039; tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hindamine==&lt;br /&gt;
===Üldised kriteeriumid===&lt;br /&gt;
&lt;br /&gt;
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud.&lt;br /&gt;
&lt;br /&gt;
Maksimumtulemuse saavutamiseks peab projekt olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub  arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Maksimumtulemuse annab (vähemalt 4/6):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Majanduslik mõtlemine (kas loodav teenus ja rakendused oleks kasutatav ka ärilistel eesmärkidel)&lt;br /&gt;
* Mobiilrakendused &lt;br /&gt;
* AngularJS klientrakendus&lt;br /&gt;
* Kogukondade kaasamine&lt;br /&gt;
* Kasutajamugavus&lt;br /&gt;
* Läbimõeldud töökorraldus&lt;br /&gt;
* Lisavõimaluste realiseerimine (vt näidisteemad)&lt;br /&gt;
&lt;br /&gt;
===XML andmefail===&lt;br /&gt;
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning minimaalselt kaks sobivat XSL transformatsiooni faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kasutama vajadusel parameetreid ning kindlasti ka erinevaid tingimuste kontrolle.&lt;br /&gt;
&lt;br /&gt;
XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
 &amp;lt;dim1&amp;gt;&lt;br /&gt;
   &amp;lt;dim2&amp;gt;&lt;br /&gt;
     &amp;lt;dim3&amp;gt;&lt;br /&gt;
       &amp;lt;dim4&amp;gt;&lt;br /&gt;
       &amp;lt;/dim4&amp;gt;&lt;br /&gt;
     &amp;lt;/dim3&amp;gt;&lt;br /&gt;
   &amp;lt;/dim2&amp;gt;&lt;br /&gt;
 &amp;lt;/dim1&amp;gt;&lt;br /&gt;
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.&lt;br /&gt;
&lt;br /&gt;
Käesoleva ülesande käigus peab looma meeskonna ning selle wiki lehekülje&lt;br /&gt;
&lt;br /&gt;
===Veebiteenus===&lt;br /&gt;
Loodav veebiteenus peab võimaldama:&lt;br /&gt;
* Teenuse pakkumist&lt;br /&gt;
* &#039;&#039;&#039;Teenuse kasutajate tuvastamist ning haldamist&#039;&#039;&#039;&lt;br /&gt;
* Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes&lt;br /&gt;
* Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus peab toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus tuleb luua kasutades &#039;&#039;Windows Communication Foundation&#039;&#039; või ASP.NET MVC  Web API tehnoloogiat&lt;br /&gt;
&lt;br /&gt;
Andmebaasis peab olema vähemalt 9 olemit ehk andmebaas on eeldus,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soovitav on luua teenus (FE) ja teenuse seadistamiseks ning kasutajate haldamiseks mõeldud rakendus (BE).&lt;br /&gt;
&lt;br /&gt;
===Klientrakendus===&lt;br /&gt;
Klientrakendus mõnele olemasolevale veebiteenusele, võib olla teostatud veebirakendusena, Silverlight, WPF või vormirakendusena.&lt;br /&gt;
&lt;br /&gt;
Variant1: teha klientrakendus enda loodud veebiteenusele &lt;br /&gt;
&lt;br /&gt;
Variant2: teha klientrakendus mõnele levinud veebiteenusele.&lt;br /&gt;
Näiteks: &lt;br /&gt;
* http://www.bing.com/developer&lt;br /&gt;
* http://www.flickr.com/services/api/response.soap.html&lt;br /&gt;
* http://developer.ebay.com/developercenter/windows/&lt;br /&gt;
* http://apiwiki.twitter.com/Getting-Started&lt;br /&gt;
&lt;br /&gt;
===Retsensioonid===&lt;br /&gt;
Retsensioon on üliõpilase iseseisva teadustöö kriitilise analüüsi põhjal koostatud argumenteeritud hinnang. Retsensioonis tuleb hinnata töö vastavust esitatud tingimustele, programmikoodi loetavust ning kommenteeritust, dokumentatsiooni ja kirjeldada puudusi. Retsensioonide põhjal on meeskondadel õigus oma projekte parandada enne määratud esitamistähtaja kättejõudmist.&lt;br /&gt;
&lt;br /&gt;
Retsensioon peab sisaldama minimaalselt...&lt;br /&gt;
* XML - ...200 sõna.&lt;br /&gt;
* Veebiteenus - ...600 sõna.&lt;br /&gt;
* Klientrakendus - ...600 sõna.&lt;br /&gt;
&lt;br /&gt;
Mõnelauselisest arvamusest ei piisa, kuna tegemist on grupi loodavate arvustustega, mitte individuaalsete arvustustega.&lt;br /&gt;
&lt;br /&gt;
==Konsultatsioonid==&lt;br /&gt;
 Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma&lt;br /&gt;
 töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida&lt;br /&gt;
 õppejõuga kokkuleppeid kontaktidel&lt;br /&gt;
 mait.poska [ät] itcollege.ee või (+372 53 469 734)&lt;br /&gt;
 (teksti originaalautor Priit Raspel)&lt;br /&gt;
&lt;br /&gt;
=Teemad 2016 kevad=&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendus mõnele olemasolevale või endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
NB! XML andmefail ja veebiteenus ei pea olema omavahel seotud.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Näidisteemad==&lt;br /&gt;
&lt;br /&gt;
===Nimede pakkumise teenus===&lt;br /&gt;
Mõte selles, et luua nimede baas, mille abil pakkuda rakenduse loojale sobiva algusega nimesid. Reaalne rakendus: &#039;&#039;autocompleter&#039;&#039; tarvis teenuse pakkumine&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua sobiva alguse järgi nimede pakkumise teenus:&lt;br /&gt;
* alates kahetähelisetest algustest pakkuda sobivad nimesid&lt;br /&gt;
* luua võimalus kasutajatel nimesid lisada&lt;br /&gt;
* luua võimalus administraatoril nimesid muuta/kustutada&lt;br /&gt;
* meeste ja naiste nimed peavad olema süsteemis eristatavad&lt;br /&gt;
* luua võimalus, mis võimaldab kuvada populaarseid nimesid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* luua võimalus, et nimi lisatakse baasi alles siis, kui administraatori õigustega inimene on selleks vastava loa andnud&lt;br /&gt;
&lt;br /&gt;
===Külastusstatistika teenus===&lt;br /&gt;
Mõte selles, et pakkuda teenust, kus kasutajal on võimalik registreerida külastused ning küsida oma külastusstatistikat.&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua külastusstatistika teenus:&lt;br /&gt;
* kasutaja saab teenuses registreerida külastusi&lt;br /&gt;
* kasutaja saab küsida külastusstatistikat päevade/kuude/kogu perioodi lõikes&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
&lt;br /&gt;
Lisavõimalused:&lt;br /&gt;
* luua võimalus registreerida alamlehtede külastusstatistikat&lt;br /&gt;
* luua võimalus külastusstatistikale lisaparameetrite lisamiseks (ip aadress, sirviku versioon jne)&lt;br /&gt;
&lt;br /&gt;
===Telefoniraamatu teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada kontakte ja nende seast otsida&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua telefoniraamatu teenus:&lt;br /&gt;
* kasutaja saab teenuses kontakte lisada ja kustutada&lt;br /&gt;
* kasutaja saab kontaktide nime/telefoninumbri jne abil otsida&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutajaid on võimalik lisada gruppidesse&lt;br /&gt;
* kasutajal on võimalik lisada vajalike kontaktandmete liike&lt;br /&gt;
* kasutajatel on võimalik jagada omavahel kontakte ja kontaktide grupper&lt;br /&gt;
&lt;br /&gt;
===RSS voogude kogumise ja uudiste kuvamise teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada talle huvipakkuvaid RSS vooge ja nendelt voogudelt uudiseid lugeda&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua RSS voogude haldusteenus:&lt;br /&gt;
* kasutaja saab teenuses RSS vooge lisada ja kustudada&lt;br /&gt;
* kasutaja saab pärida talle huvipakkuvate voogude viimaseid uudiseid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutaja saab RSS vooge vaadata eraldi või grupeeritult&lt;br /&gt;
* vooge peab puhverdama, kuna voogude lugemine võtab enamasti üsna palju aega &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
= Meeskonnad 2016=&lt;br /&gt;
&lt;br /&gt;
==Päevaõpe==&lt;br /&gt;
=== Meeskond Kõnõtraat ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kristjan Tõnismäe&lt;br /&gt;
* Andreas Plado&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Kõnõtraat]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Lebokeiss OÜ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
Meeskonna koduleht: [[Lebokeiss OÜ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;LuckyYou&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tanel Vähk&lt;br /&gt;
* Aleks Luik&lt;br /&gt;
* Melissa Eenmaa&lt;br /&gt;
* Taavi Kliss&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LuckyYou]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond SHOP ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Johannes Tamm&lt;br /&gt;
* Martin Mägi&lt;br /&gt;
* Martin Betlem&lt;br /&gt;
* Merilyn Renser&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[SHOP]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond BurgerAce ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Silver Ohlo&lt;br /&gt;
* Martin Luik&lt;br /&gt;
* Ahto Elken&lt;br /&gt;
* Arvo Bendi&lt;br /&gt;
Meeskonna koduleht: [[BurgerAce]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond LinkCode ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Rene Ott&lt;br /&gt;
* Renet Pirso&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LinkCode]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Screaming Magic Gnomes ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Märt Häkkinen&lt;br /&gt;
* Taavi Kivimaa&lt;br /&gt;
* Siim Osa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Screaming_Magic_Gnomes]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Givela ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikk Raudsepp&lt;br /&gt;
* Alar Ameerikas&lt;br /&gt;
* Vladimir Rõkovanov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Givela]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VVA ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleksandr Babõkin&lt;br /&gt;
* Vladislav Kovaltšuk&lt;br /&gt;
* Andrei Tverskoi&lt;br /&gt;
* Vladislav Lahtarin&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VVA]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Undress Gaver&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Marko Koiduste&lt;br /&gt;
* Jaanus Türnpuu&lt;br /&gt;
* Sergei Fatejev&lt;br /&gt;
* Kaspar Tilk&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Undress Gaver]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Double Trouble&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kaido Henrik Elias&lt;br /&gt;
* Jekaterina Jakimets&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[DoubleTrouble]]&lt;br /&gt;
&lt;br /&gt;
==Kaugõpe==&lt;br /&gt;
=== Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikhail Reznichenko&lt;br /&gt;
* 10143193&lt;br /&gt;
* Oleg Berezin&lt;br /&gt;
* Alisa Dudinova&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VRii Team ===&lt;br /&gt;
&lt;br /&gt;
Liikemd:&lt;br /&gt;
* Andres Mets&lt;br /&gt;
* Toomas Juhkov&lt;br /&gt;
* Tiit Kuuskmäe&lt;br /&gt;
* Kaire Toom&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Vrii-team]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;VRJ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jevgeni Gavrilov&lt;br /&gt;
* Vladimir Nitsenko&lt;br /&gt;
* Riho Uusjärv&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VRJ]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;freeVariable&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mihkel Viilveer&lt;br /&gt;
* Kristjan Adrat&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[freeVar]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Enneaegsed&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jaan Elken&lt;br /&gt;
* Margit Ool&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Skeddl&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Skeddl]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Sille&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Trei&lt;br /&gt;
* Lasse Kolkanen&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Sille]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;A$unik&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Hardi Antsov&lt;br /&gt;
* Juhan Trink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[A$unik]]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=100990</id>
		<title>Meeskond: Spooky Scary Skeletons</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=100990"/>
		<updated>2016-01-27T20:22:13Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Arendusprotsess */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
== Meeskond ja rollid ==&lt;br /&gt;
*&#039;&#039;&#039;Kärt Palm&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Karina Egipt&#039;&#039;&#039; - Projektijuht&lt;br /&gt;
*&#039;&#039;&#039;Erika Ehmann&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Silver Saks&#039;&#039;&#039; - Wiki pidaja&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
TODO list kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot(eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Offline funktsionaalsus kohaliku andmebaasiga, mis replikeeritakse serverisse(kasutaja soovil). Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
== Analüüs ==&lt;br /&gt;
AVE 2.0 on kodutööde planeerimise rakendus, kuhu iga kasutaja saab lisada õppeaines antud kodutöid, lisada neile esitamise tähtaegu ja muud lisainformatsiooni. &lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Alamtask&#039;&#039;&#039;  - task, mis on osa suuremast tööst (kuulub mingi taski alla) ning millele saab määrata omaette atribuute;&lt;br /&gt;
*&#039;&#039;&#039;Atribuut&#039;&#039;&#039; - task&#039;i omadused (näiteks: tähtaeg, kirjeldus, kommentaarid, viited jne);&lt;br /&gt;
*&#039;&#039;&#039;Õppeaine&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Grupp&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (alamtähtajad, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset offline kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab ära märkida oma kooli(d) ja deklareeritud õppeained. Õppeainetele subscribe&#039;ides saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud või mitteseotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus pakub kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutajale pakutakse automaatselt see versioon taskist, mis hetkel on  kasutajate hulgas kõige populaarsem. Kasutaja võib selle tagasi lükata, kui task teda ei huvita, või võtta vastu mõne muu versiooni taskist. Kasutaja võib teiste lisatud taskile ka ise atribuute lisada, mis juhul neid muudatusi pakutakse ka teistele kasutajatele.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: klient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja nende atribuute.&lt;br /&gt;
&lt;br /&gt;
Klient suhtleb serveriga üle REST API.&lt;br /&gt;
&lt;br /&gt;
Klient hoiab lokaalselt andmeid SQLite andmebaasis, sinna replikeeritakse ka teiste kasutajate poolt lisatud muutused juhul kui kasutaja need aktsepteerib.&lt;br /&gt;
&lt;br /&gt;
Klient peab oskama API kaudu küsida serverist teda huvitavaid värskendusi ehk klient peab pidama arvet selle üle milline osa infost tal on kohalikus andmebaasis olemas.&lt;br /&gt;
&lt;br /&gt;
Rakendust käivitades küsitakse kasutajalt kasutajanime ja parooli, seejärel rakendus käivitub, kuvab antud kasutaja töölaua, ning üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot sisaldavaid atribuute (vahetähtajad, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama nii online kui offline režiimis. Vaikimisi režiimiks on online, offline saab olla eelkõige ainult siis, kui arvuti ei ole internetiga ühendatud. Kui rakendus on offline, siis kajastub kasutajaliideses vastav teade;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Lokaalse andmebaasi krüpteerimine kasutaja parooli baasil&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
Serveris toimub kasutajate haldus ja kõikide kasutajate poolt sisestatud info talletamine. Serveri põhiline ülesanne on vastavalt API käskudele andmebaasist andmete esitamine.&lt;br /&gt;
&lt;br /&gt;
Serveris asub tsentraalne andmebaas kogu rakenduse infoga(kõik task&#039;id, nende atribuudid, jne). Kasutame PostgreSQL andmebaasi.&lt;br /&gt;
&lt;br /&gt;
Suhtlus kliendi ja serveri vahel toimub üle REST api.&lt;br /&gt;
&lt;br /&gt;
Andmebaasi skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Database AVE.png|900px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab võimaldama suhtlust kliendi ja andmebaasi vahel&lt;br /&gt;
* Registreerumisel saadetakse kasutajale e-mail registreerumist kinnitava lingiga.&lt;br /&gt;
* Peab kliendi päringu peale suutma saata kõik kasutajat huvitavad andmed mida kasutaja klientprogrammi kohalikus andmebaasis veel ei ole.&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
* Õppeainega/grupiga seotud taski lisamisel kalendrisse peab see ilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel lisatakse task’i kasutaja kalendrisse;&lt;br /&gt;
* Server peab logisid kõigi tehtud toimingute kohta. Administraator saab määrata logimistaseme.&lt;br /&gt;
* API on kättesaadav ainult üle turvalise ühenduse&lt;br /&gt;
* Paroolid salvestatakse kasutades juhuslikult genereeritud salt-i ning PBKDF2 algorithmi (SHA256, 100 000 iteratsiooni)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* API rate limiting&lt;br /&gt;
* Bayesian spam filter&lt;br /&gt;
* Iga kasutaja kohta iCal faili automaatne koostamine.&lt;br /&gt;
* Push notifications&lt;br /&gt;
&lt;br /&gt;
== Projekti kirjeldus ==&lt;br /&gt;
=== Tehnoloogiad  ===&lt;br /&gt;
&#039;&#039;&#039;DAL - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://www.sqlite.org/ SQLite]&lt;br /&gt;
*[https://github.com/StackExchange/dapper-dot-net Dapper]&lt;br /&gt;
&lt;br /&gt;
Kliendi DAL sai otsustatud ehitada Dapperi baasil, Entity frameworki asemel. Entity framework 6-l puudub täielik SQLite tugi(näiteks tabeleid ei saa luua). Ühtlasi häirib õppimise seisukohalt EF üleliigne abstraktsioonitase - äärmiselt keeruline on aru saada, mida su programm tegelikult teeb.&lt;br /&gt;
&lt;br /&gt;
Alguses sai Dapperi jaoks koostatud SQL päringuid, kuid kuna väga suur osa päringutest olid äärmiselt sarnased, siis sai kasutusele võetud Dapper.SimpleCRUD. Keerulisemad päringud saab vajadusel käsitsi juurde teha, kuid lokaalse andmebaasi puhul ei tohiks selleks vajadust olla.&lt;br /&gt;
&lt;br /&gt;
By default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
[[File:Ave localdb.png]]&lt;br /&gt;
&lt;br /&gt;
Kliendi kohalik sqlite andmebaas on mõeldud kasutamiseks ainult serveri andmebaasi cachena. See tähendab, et kliendi ja serveri vahelise suhtlusega on paar keerulist probleemi tarvis lahendada:&lt;br /&gt;
* Server peab omama vaadet tsentraalsele andmebaasile iga kasutaja perspektiivist&lt;br /&gt;
* Klient peab oskama küsida serverilt ainult neid uuendusi mida tal cachetud ei ole&lt;br /&gt;
* Klient peab suutma kontrollida oma cache vastavust serveri andembaasile&lt;br /&gt;
* Kui klient saadab API päringu serverisse, peab kasutajamugavuse nimel koheselt kirjutama muudatused cache-i, ning hiljem asünkroonselt serverilt negatiivse vastuse korral peab olema võimalik tehtud transaktsioon tagasi võtta, et cache ja server sünkroonist välja ei läheks. &lt;br /&gt;
* Mida teha juhul kui klient ei saa üldse serveriga ühendust?&lt;br /&gt;
&lt;br /&gt;
Hetkel on meie strateegia võetud järgmine: andmebaaside vastavust kontrollitakse checksumi abil. Klient hoiab andmeid mälus, ning otse cache ei kirjutata kliendi muudatusi, cache kirjutatakse ainult serveri poolt tulevad muudatused. Serveriga ühenduse puudumisel on rakendus read-only reziimis.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/aa970268%28v=vs.110%29.aspx WPF]&lt;br /&gt;
AVE e View sisaldab vaid kujunduselemente ning nendevahelisi seoses. Kogu view&#039;de vahetamise ja muu UI jaoks vajalik loogika on ehitaud ViewModel&#039;isse.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Client&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kliendi kohalik autentikatsioon on mõeldud serveriga suhtlemise toetamiseks. Kohalikku andmebaasi salvestatakse kas kasutaja krüpteeritud parool või parooli räsi. Juhul kui salvestatud on parool, tähendab see, et kasutaja on valinud linnukese &amp;quot;jäta mind meelde&amp;quot;, ning rakendusse sisselogimine toimub automaatselt. Vastasel juhul küsitakse kasutaja käest rakendust avades parooli, ning kohaliku räsi vastu võrreldakse seda juhul kui serveriga ühendust ei saa(rakendus on offline). Parooli hoidmise turvalisuse tõstmiseks kasutame [https://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata%28v=vs.110%29.aspx Windows Data Protection API-t], mis kaitseb kohalikult säilitatavat parooli Windowsi kasutajahalduse vahenditega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039;&lt;br /&gt;
*[https://azure.microsoft.com/en-us/services/app-service/web/ Azure Web App]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx WCF]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd203052.aspx REST]&lt;br /&gt;
&lt;br /&gt;
Server kasutab klientidega suhtluseks RESTful apit ja JSON andmeformaati.&lt;br /&gt;
&lt;br /&gt;
Algne plaan oli kasutada PostgreSQL andmebaasi, kuna see omab mitmeid eeliseid MySQL-ga võrreldes, kuid uurides hostinguvõimalusi selgus, et Microsoft pakub Dreamsparki kaudu tasuta WebAPP+MySQL hostingut õpilastele.&lt;br /&gt;
&lt;br /&gt;
Selle aktiveerimiseks minna [https://azure.microsoft.com/en-us/pricing/member-offers/dreamspark-students/ https://azure.microsoft.com/en-us/pricing/member-offers/dreamspark-students/] lehele. Sisse logida oma MITTE-ITK Microsoft kontoga. Kinnitada ITK maili kaudu oma õpilase staatus, ning seejärel sisse logida Azure portaali sama kontoga. Portaalist valida Virtual Machines -&amp;gt; WebAPP+MySQL (ClearDB otsingusse, et leida), ning peale pisut ootamist ongi VM olemas.&lt;br /&gt;
&lt;br /&gt;
Kahjuks ei toeta Dreamsparki kaudu Azure ei SSL sertifikaate, ega ka custom domeene, et oleks võimalik SSL proxy luua.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Server&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentikatsioon toimub stateless auth mustrit kasutades.&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentimiseks saadab kasutaja oma kasutajanime ja parooli POST meetodit kasutades https://&amp;lt;server&amp;gt;/login ressursile. Server kontrollib kasutaja parooli andmebaasi salvestatud hashi vastu, ning positiivse vastuse puhul lisab expiration timestampi ning keyed HMAC_SHA256 autentikatsioonikoodi, kasutades ainult serverile teadaolevat võtit. Transpordi käigus andmete turvalisuse eest hoolitseb TLS. TLS sertifikaadi kinnitamiseks kasutame kas StartCom või Let&#039;s Encrypt tasuta teenust (tasuta Azure ei luba...welcome to 2016, Microsoft).&lt;br /&gt;
&lt;br /&gt;
Arenduse käigus selgus, et C# sisseehitatud System.Security.Cryptography teek toetab PBKDF2 algoritmi (rfc2898derivebytes meetod) puhul ainult SHA-1 räsifunktsiooni, mis on vananenud. Samuti ei tundu seal olevat timing attackide kindlat baidivektorite võrdlusmeetodit. Hetkel kuna turvanõuded rakendusele on suhteliselt madalad, on tegu aktsepteeritava riskiga, kuid mingi tegeliku programmi loomisel tuleks kindlasti kasutada alternatiive, näiteks libsodium-net.&lt;br /&gt;
&lt;br /&gt;
Vastuseks saadud tokeni salvestab klientprogramm endale mällu, ning lisab hiljem igale API requestile. Konkreetne meetod pole oluline, aga kasutame X-Authentication headerit ja serialiseerime JSON objekti Base64 kodeeringuga.&lt;br /&gt;
&lt;br /&gt;
Antud skeemi eelis on, et server ei pea arvet pidama aktiivsete sessioonide üle, vaid kontrollib lihtsalt HMAC vastavust ning kasutab tokenis olevat infot. Kriitiline on serveri võtit turvaliselt säilitada. Ideaalne oleks serveri võtme salvestamiseks kasutada TPM moodulit, kuid kasutades odavaid hostinguteenuseid ei ole see võimalik - võtit tuleb hoida failisüsteemis, ning võtmefailile peavad olema minimaalsed ligipääsuõigused.&lt;br /&gt;
&lt;br /&gt;
Skeem on sarnane JSON Web Token skeemile ([https://tools.ietf.org/html/rfc7519 RFC 7519])&lt;br /&gt;
&lt;br /&gt;
Kasutaja loomisel saadab server kasutaja sisestatud mailiaadressile kinnituskirja, kus kasutaja peab klikkima lingil, et oma kasutaja kinnitada. Antud lingi jaoks kasutatakse samuti stateless auth mustrit, serialiseeritud ja serveri poolt allkirjastatud andmed on URL-i parameeter.&lt;br /&gt;
&lt;br /&gt;
E-kirja saatmiseks kasutab server Mailgun teenust, kuna ise oma serverist kirju saates on äärmiselt suur tõenäosus, et need jäävad spämmifiltritesse kinni(SenderScore, jne).&lt;br /&gt;
&lt;br /&gt;
=== Arendusmustrid  ===&lt;br /&gt;
*[http://social.technet.microsoft.com/wiki/contents/articles/13536.easy-mvvm-examples-in-extreme-detail.aspx MVVM][https://msdn.microsoft.com/en-us/library/gg405484(v=pandp.40).aspx]&lt;br /&gt;
&lt;br /&gt;
=== Versioonikontroll ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms181237.aspx Team Foundation]&lt;br /&gt;
&lt;br /&gt;
Versioonikontrolli kasutuse käigus ilmnes Visual Studio viga/tegemata töö: NuGet packageid solutionisse lisades pidid teised kasutajad pakettide tööle saamiseks endal kohalikult (solution)\packages\ kataloogi enne buildi ära kustutama. Selle vea paranduseks on tarvis lisada solutioni kataloogi .tfignore fail sisuga&lt;br /&gt;
 \packages&lt;br /&gt;
ja .nuget\NuGet.config fail sisuga:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;configuration&amp;gt;&lt;br /&gt;
   &amp;lt;solution&amp;gt;&lt;br /&gt;
     &amp;lt;add key=&amp;quot;disableSourceControlIntegration&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;/solution&amp;gt;&lt;br /&gt;
 &amp;lt;/configuration&amp;gt;&lt;br /&gt;
Seejärel Source code explorer aknast serveri versioon packages kataloogist ära kustutada. Edaspidi ei laeta packages kataloogi versioonikontrolli, ning NuGet automatic restore saab automaatselt vajalikud paketid buildides taastatud.&lt;br /&gt;
&lt;br /&gt;
=== API kirjeldus ja dokumentatsioon ===&lt;br /&gt;
*[https://apiblueprint.org/ Api Blueprint]&lt;br /&gt;
*[https://apiary.io/ Apiary]&lt;br /&gt;
*[https://github.com/apiaryio/dredd/ Dredd]&lt;br /&gt;
&lt;br /&gt;
Api kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
WCF genereerib ilusti ka ise koodi põhjal API dokumentatsiooni. See on plaanis kasutusele võtta hiljem, kui serveri kood on valmis, ning server on avalikult online.&lt;br /&gt;
&lt;br /&gt;
=== Koodi stiilireeglid ===&lt;br /&gt;
*[https://visualstudiogallery.msdn.microsoft.com/cac2a05b-6eb6-4fa2-95b9-1f8d011e6cae StyleCop]&lt;br /&gt;
Otsustasime, et kogu programmi kood, muutujanimed ja koodi kommentaarid on ingliskeelsed.&lt;br /&gt;
Muutujanimedel kasutame järgmiseid reegleid:&lt;br /&gt;
* Klassi privaatmuutujad algavad _ prefiksiga;&lt;br /&gt;
* Klassi avalikud meetodid ja muutujad algavad suurtähega;&lt;br /&gt;
* Kõik muud muutujad algavad väiketähega;&lt;br /&gt;
&lt;br /&gt;
Kõik muutujanimed peavad sisaldama ainult US-ASCII tähti või numbreid ( ^[a-zA-Z0-9]+$ ). Liigendamiseks on suurtähed.&lt;br /&gt;
&lt;br /&gt;
Muutujad peavad võimalikult täpselt kirjeldama oma sisu abstraktsel tasemel. Erandiks on meetodi- ja funktsioonisisesed muutujad millede sisu on kontekstist lihtsalt tuletatav. Näiteks &amp;quot;i&amp;quot; tsükliloendurina jne.&lt;br /&gt;
&lt;br /&gt;
Muutujanimed ei tohi sisaldada tüübiviidet.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Maagilised&amp;quot; muutujad peavad olema deklareeritud konstantidena, ning omama kommentaari. Kõiki selliseid muutujaid peab olema võimalik programmi konfiguratsioonifailist muuta.&lt;br /&gt;
&lt;br /&gt;
=== Litsents ===&lt;br /&gt;
Kogu rakendus avaldatakse GNU General Public License v3.0 all. [http://www.gnu.org/licenses/gpl-3.0.en.html (GPL)]&lt;br /&gt;
Rakenduse dokumentatsioon avaldatakse ITK Wikis, järgides ITK Wiki litsentsitingimusi.&lt;br /&gt;
&lt;br /&gt;
== Avaldatud failid ==&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=edaa0cf40fb840ba7a620d4c0252b49e Andmebaasi Skeem (DBDesigner) ]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=0e79ef0570f39b8743f046c70f724404 Rakenduse esimene prototüüp (13.12.2015)]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=00ce781b71759d6f66017ad40dc81901 Rakenduse Server (20.01.2016)]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=dd72ab32e4900f3970d484317c94a94c Rakenduse Klient (20.01.2016)]&lt;br /&gt;
&lt;br /&gt;
== Arendusprotsess ==&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;08.10.2015&#039;&#039;&#039;    - Loodud wiki leht ja lepitud kokku esimene kohtumine idee leidmiseks ja algseks analüüsiks.&lt;br /&gt;
*&#039;&#039;&#039;19.10.2015&#039;&#039;&#039;    - Esimene kohtumine. Leitud idee rakenduse loomiseks, määratud rollid esimeseks analüüsietapiks.&lt;br /&gt;
*&#039;&#039;&#039;01.11.2015&#039;&#039;&#039;    - Teine kohtumine. Valmis analüüs.&lt;br /&gt;
*&#039;&#039;&#039;06.11.2015&#039;&#039;&#039;    - Lisatud retsensioon meeskonnale Premium.&lt;br /&gt;
*&#039;&#039;&#039;11.11.2015&#039;&#039;&#039;    - Esimene tõmmis kasutajaliidesest TFS-is&lt;br /&gt;
*&#039;&#039;&#039;12.11.2015&#039;&#039;&#039;    - Loodud esialgne API kirjeldus, vajab veel täiendamist arenduse käigus&lt;br /&gt;
*&#039;&#039;&#039;15.11.2015&#039;&#039;&#039;    - Loodud kliendi kohaliku andmebaasi skeem&lt;br /&gt;
*&#039;&#039;&#039;17.11.2015&#039;&#039;&#039;    - Kolmas kohtumine, lepitud kokku ajad mil koos koodi kirjutada. Ühtlasi loodud rakenduse kihtide skeem.&lt;br /&gt;
*&#039;&#039;&#039;21.11.2015&#039;&#039;&#039;    - Koos koodi kirjutatud pisut. Kasutajaliides hakkas asju tegema, API server vastab käskudele.&lt;br /&gt;
*&#039;&#039;&#039;28.11.2015&#039;&#039;&#039;    - Algselt MSSQL+EF kliendi DAL migreeritud SQLite+Dapper lahendusele.&lt;br /&gt;
*&#039;&#039;&#039;30.11.2015&#039;&#039;&#039;    - Rakendust esitletud C# praktikumis.&lt;br /&gt;
*&#039;&#039;&#039;31.11.2015&#039;&#039;&#039;    - Neljas kohtumine, lepitud kokku ülesannete jaotus ja arenduskava järgmiseks nädalaks.&lt;br /&gt;
*&#039;&#039;&#039;04.12.2015&#039;&#039;&#039;    - Konsultatsioon õppejõuga.&lt;br /&gt;
*&#039;&#039;&#039;10-13.12.2015&#039;&#039;&#039; - Viies kohtumine ja rakenduse arendamine.&lt;br /&gt;
*&#039;&#039;&#039;11.12.2015&#039;&#039;&#039;    - Prototüübi esimese versiooni lisamine Wiki lehele.&lt;br /&gt;
*&#039;&#039;&#039;13.12.2015&#039;&#039;&#039;    - Prototüübi teise versiooni lisamine Wiki lehele.&lt;br /&gt;
*&#039;&#039;&#039;20.12.2015&#039;&#039;&#039;    - Lisatud prototüübi retsensioon meeskonnale Fontastic&lt;br /&gt;
*&#039;&#039;&#039;19-21.01.2016&#039;&#039;&#039;    - Viimane arendussprint.&lt;br /&gt;
*&#039;&#039;&#039;21.01.2016&#039;&#039;&#039;    - Lisatud lõpptoote kirjeldus ja ülevaade tehtud tööst.&lt;br /&gt;
&lt;br /&gt;
== Lisad ==&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=XTgFtxHhCQ0]&lt;br /&gt;
&lt;br /&gt;
== Prototüüp ==&lt;br /&gt;
Prototüüp peab võimaldama kasutajal sisestada taski, siduda see ainega ja vajadusel grupiga ning lisada lubatud atribuudid. Lisatud taske kuvatakse detailvaates (selleks tuleb vajutada taski nimetusele).&lt;br /&gt;
Aplikatsiooni prototüüp .zip faili saab alla laadida siit[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE_proto20151213.zip&amp;amp;download]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi prototüübi funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Kasutaja saab sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja saab taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaja;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi;&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne.&lt;br /&gt;
* Kalendrivaates kuvatakse kuupäeva järgi sorteeritud taskid. Taskile vajutades avaneb taski detailvaade;&lt;br /&gt;
* Vajutades taski nimetusele tehakse päring lokaalsesse baasi ning kuvatakse taski detailandmed koos võimalusega taski muuta või kustutada;&lt;br /&gt;
*Kasutaja saab sisestatud taski andmeid muuta ja taski kustutada;&lt;br /&gt;
* Rakendus töötab offline režiimis. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Andmebaas&#039;&#039;&#039;&lt;br /&gt;
- by default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri&#039;&#039;&#039; poolelt ei ole hetkel veel midagi tehtud(töötab API Hello World tasemel). Prototüüp on hetkel ainult kohaliku kasutusega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Senine tööjaotus&#039;&#039;&#039;&lt;br /&gt;
* Kärt Palm - BLL (BO ja Service) ja praeguseks oluliselt muudetud DAL (esialgu realiseeritud DAL Entity frameworki&#039;l sai muudetud, et tagada SQlite tugi);&lt;br /&gt;
* Karina Egipt - View, ViewModel;&lt;br /&gt;
* Silver Saks - Lokaalne andmebaas, Server;&lt;br /&gt;
&lt;br /&gt;
== Lõpptoode ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kommentaarid&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Arenduse käigus selgus, et olime endale seadnud pisut liiga ambitsioonika eesmärgi. Lõpptoode täidab umbes pooled meie seatud funktsionaalsetest nõuetest, kuid kindlasti ei ole tegu sellise rakendusega nagu me oma analüüsi tulemusena ette kujutasime. Leiame, et tegu on aine seisukohalt õnnestunud tööga, kuna kasutasime kõiki aine omandamiseks vajalikke tehnoloogiad ning arendusmustreid. Töö tulemusena õppisime kõik väga palju nii C#, OOP programmeerimise, kui ka meeskonnatööna valmivate programmeerimisprojektide kohta.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lõpptoote kirjeldus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Juhul kui soovitakse rakenduse serverit testida Visual Studios, siis täieliku funktsionaalsuse saavutamiseks tuleb web.config failis asendada andmebaasi connectionstring mingi muuga. Kasutusel on MySQL andmebaas, kuid ka muud andmebaasid peaks töötama, selleks tuleb ainult vahetada SimpleCRUD.Dialect väärtus koodis. Connectionstringi kustutasin, kuna server on publishitud ja töötab Azure pilveteenuses, ning connectionstringis olid minu isiklikud paroolid.&lt;br /&gt;
&lt;br /&gt;
Klient peaks töötama kohalikus arvutis täielikult ja automaatselt. Esimese sammuna tuleb endale kasutaja luua, ning seejärel loodud kasutajaga sisse logida. Passwordi kastides ei saa kasutada backspace ega delete nuppe, kuna need on lahendatud aja puuduse tõttu pisut ebakorrektselt. Ainus info mis hetkel serverist tuleb on õppeainete nimekiri. Programmi kasutamist on kirjeldatud ka kasutusjuhendis.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NB! Serveriga suhtlus registreerimisel/sisse logimisel võib aeglane olla, kuna Azure teeb automaatse shutdowni tasuta virtuaalmasinatele kui x aega pole kasutatud.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Arenduse käigus tekkinud probleemid&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
WPF ja MVVM olid ise õppimiseks väga keerulised, kindlasti tuleks koolis praktikatundides nende õpetamisele rohkem rõhku panna.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mida oleks võinud teistmoodi teha&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*Antud rakenduse realiseerimiseks oleks täielikult veebirakenduse tegemine olnud parem lahendus.&lt;br /&gt;
*WPF rakendamiseks oleks võinud kasutada mingit valmis raamistikku, näiteks [http://caliburnmicro.com/ Caliburn Micro] või [http://www.mvvmlight.net/ MVVM Light Toolkit]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Tööjaotus&#039;&#039;&#039;&lt;br /&gt;
* Kärt Palm - Rakenduse kliendi äriloogika&lt;br /&gt;
* Karina Egipt - Rakenduse kliendi kasutajaliides&lt;br /&gt;
* Silver Saks - Andmebaasidega suhtlus, server ja serveriga ühenduvus&lt;br /&gt;
* Erika Ehmann - Rakenduse kliendi kasutajaliides sisselogimiseks ja registreerimiseks, ning ainete otsing&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Failid&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=00ce781b71759d6f66017ad40dc81901 Rakenduse Server (20.01.2016)]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=dd72ab32e4900f3970d484317c94a94c Rakenduse Klient (20.01.2016)]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=a4d3d913c6a56037e71688be767d8800 Rakenduse Kasutusjuhend]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=99006</id>
		<title>Meeskond: Spooky Scary Skeletons</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=99006"/>
		<updated>2015-12-13T21:11:00Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Arendusprotsess */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
== Meeskond ja rollid ==&lt;br /&gt;
*&#039;&#039;&#039;Kärt Palm&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Karina Egipt&#039;&#039;&#039; - Projektijuht&lt;br /&gt;
*&#039;&#039;&#039;Erika Ehmann&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Silver Saks&#039;&#039;&#039; - Wiki pidaja&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
TODO list kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot(eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Offline funktsionaalsus kohaliku andmebaasiga, mis replikeeritakse serverisse(kasutaja soovil). Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
== Analüüs ==&lt;br /&gt;
AVE 2.0 on kodutööde planeerimise rakendus, kuhu iga kasutaja saab lisada õppeaines antud kodutöid, lisada neile esitamise tähtaegu ja muud lisainformatsiooni. &lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Alamtask&#039;&#039;&#039;  - task, mis on osa suuremast tööst (kuulub mingi taski alla) ning millele saab määrata omaette atribuute;&lt;br /&gt;
*&#039;&#039;&#039;Atribuut&#039;&#039;&#039; - task&#039;i omadused (näiteks: tähtaeg, kirjeldus, kommentaarid, viited jne);&lt;br /&gt;
*&#039;&#039;&#039;Õppeaine&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Grupp&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (alamtähtajad, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset offline kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab ära märkida oma kooli(d) ja deklareeritud õppeained. Õppeainetele subscribe&#039;ides saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud või mitteseotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus pakub kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutajale pakutakse automaatselt see versioon taskist, mis hetkel on  kasutajate hulgas kõige populaarsem. Kasutaja võib selle tagasi lükata, kui task teda ei huvita, või võtta vastu mõne muu versiooni taskist. Kasutaja võib teiste lisatud taskile ka ise atribuute lisada, mis juhul neid muudatusi pakutakse ka teistele kasutajatele.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: klient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja nende atribuute.&lt;br /&gt;
&lt;br /&gt;
Klient suhtleb serveriga üle REST API.&lt;br /&gt;
&lt;br /&gt;
Klient hoiab lokaalselt andmeid SQLite andmebaasis, sinna replikeeritakse ka teiste kasutajate poolt lisatud muutused juhul kui kasutaja need aktsepteerib.&lt;br /&gt;
&lt;br /&gt;
Klient peab oskama API kaudu küsida serverist teda huvitavaid värskendusi ehk klient peab pidama arvet selle üle milline osa infost tal on kohalikus andmebaasis olemas.&lt;br /&gt;
&lt;br /&gt;
Rakendust käivitades küsitakse kasutajalt kasutajanime ja parooli, seejärel rakendus käivitub, kuvab antud kasutaja töölaua, ning üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot sisaldavaid atribuute (vahetähtajad, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama nii online kui offline režiimis. Vaikimisi režiimiks on online, offline saab olla eelkõige ainult siis, kui arvuti ei ole internetiga ühendatud. Kui rakendus on offline, siis kajastub kasutajaliideses vastav teade;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Lokaalse andmebaasi krüpteerimine kasutaja parooli baasil&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
Serveris toimub kasutajate haldus ja kõikide kasutajate poolt sisestatud info talletamine. Serveri põhiline ülesanne on vastavalt API käskudele andmebaasist andmete esitamine.&lt;br /&gt;
&lt;br /&gt;
Serveris asub tsentraalne andmebaas kogu rakenduse infoga(kõik task&#039;id, nende atribuudid, jne). Kasutame PostgreSQL andmebaasi.&lt;br /&gt;
&lt;br /&gt;
Suhtlus kliendi ja serveri vahel toimub üle REST api.&lt;br /&gt;
&lt;br /&gt;
Andmebaasi skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Database AVE.png|900px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab võimaldama suhtlust kliendi ja andmebaasi vahel&lt;br /&gt;
* Registreerumisel saadetakse kasutajale e-mail registreerumist kinnitava lingiga.&lt;br /&gt;
* Peab kliendi päringu peale suutma saata kõik kasutajat huvitavad andmed mida kasutaja klientprogrammi kohalikus andmebaasis veel ei ole.&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
* Õppeainega/grupiga seotud taski lisamisel kalendrisse peab see ilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel lisatakse task’i kasutaja kalendrisse;&lt;br /&gt;
* Server peab logisid kõigi tehtud toimingute kohta. Administraator saab määrata logimistaseme.&lt;br /&gt;
* API on kättesaadav ainult üle turvalise ühenduse&lt;br /&gt;
* Paroolid salvestatakse kasutades juhuslikult genereeritud salt-i ning PBKDF2 algorithmi (SHA256, 100 000 iteratsiooni)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* API rate limiting&lt;br /&gt;
* Bayesian spam filter&lt;br /&gt;
* Iga kasutaja kohta iCal faili automaatne koostamine.&lt;br /&gt;
* Push notifications&lt;br /&gt;
&lt;br /&gt;
== Projekti kirjeldus ==&lt;br /&gt;
=== Tehnoloogiad  ===&lt;br /&gt;
&#039;&#039;&#039;DAL - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://www.sqlite.org/ SQLite]&lt;br /&gt;
*[https://github.com/StackExchange/dapper-dot-net Dapper]&lt;br /&gt;
&lt;br /&gt;
Kliendi DAL sai otsustatud ehitada Dapperi baasil, Entity frameworki asemel. Entity framework 6-l puudub täielik SQLite tugi(näiteks tabeleid ei saa luua). Ühtlasi häirib õppimise seisukohalt EF üleliigne abstraktsioonitase - äärmiselt keeruline on aru saada, mida su programm tegelikult teeb.&lt;br /&gt;
&lt;br /&gt;
Alguses sai Dapperi jaoks koostatud SQL päringuid, kuid kuna väga suur osa päringutest olid äärmiselt sarnased, siis sai kasutusele võetud Dapper.SimpleCRUD. Keerulisemad päringud saab vajadusel käsitsi juurde teha, kuid lokaalse andmebaasi puhul ei tohiks selleks vajadust olla.&lt;br /&gt;
&lt;br /&gt;
By default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
[[File:Ave localdb.png]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/aa970268%28v=vs.110%29.aspx WPF]&lt;br /&gt;
AVE e View sisaldab vaid kujunduselemente ning nendevahelisi seoses. Kogu view&#039;de vahetamise ja muu UI jaoks vajalik loogika on ehitaud ViewModel&#039;isse.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Client&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kliendi kohalik autentikatsioon on mõeldud serveriga suhtlemise toetamiseks. Kohalikku andmebaasi salvestatakse kas kasutaja krüpteeritud parool või parooli räsi. Juhul kui salvestatud on parool, tähendab see, et kasutaja on valinud linnukese &amp;quot;jäta mind meelde&amp;quot;, ning rakendusse sisselogimine toimub automaatselt. Vastasel juhul küsitakse kasutaja käest rakendust avades parooli, ning kohaliku räsi vastu võrreldakse seda juhul kui serveriga ühendust ei saa(rakendus on offline). Parooli hoidmise turvalisuse tõstmiseks kasutame [https://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata%28v=vs.110%29.aspx Windows Data Protection API-t], mis kaitseb kohalikult säilitatavat parooli Windowsi kasutajahalduse vahenditega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd537609%28v=vs.110%29.aspx Task Parallel Library]&lt;br /&gt;
*[http://www.postgresql.org/ PostgreSQL]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx WCF]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd203052.aspx REST]&lt;br /&gt;
&lt;br /&gt;
Server kasutab klientidega suhtluseks RESTful apit ja JSON andmeformaati.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Server&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentikatsioon toimub stateless auth mustrit kasutades.&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentimiseks saadab kasutaja oma kasutajanime, parooli ja juhuslikult genereeritud stringi POST meetodit kasutades https://&amp;lt;server&amp;gt;/login ressursile. Server kontrollib kasutaja parooli andmebaasi salvestatud hashi vastu, ning positiivse vastuse puhul lisab expiration timestampi ning keyed HMAC_SHA256 autentikatsioonikoodi, kasutades ainult serverile teadaolevat võtit. Transpordi käigus andmete turvalisuse eest hoolitseb TLS. TLS sertifikaadi kinnitamiseks kasutame kas StartCom või Let&#039;s Encrypt tasuta teenust.&lt;br /&gt;
&lt;br /&gt;
Vastuseks saadud tokeni salvestab klientprogramm endale mällu, ning lisab hiljem igale API requestile. Konkreetne meetod pole oluline, aga kasutame vist Authentication headerit ja serialiseerime JSON objekti Base64 kodeeringuga.&lt;br /&gt;
&lt;br /&gt;
Antud skeemi eelis on, et server ei pea arvet pidama aktiivsete sessioonide üle, vaid kontrollib lihtsalt HMAC vastavust ning kasutab tokenis olevat infot. Kriitiline on serveri võtit turvaliselt säilitada. Ideaalne oleks serveri võtme salvestamiseks kasutada TPM moodulit, kuid kasutades odavaid hostinguteenuseid ei ole see võimalik - võtit tuleb hoida failisüsteemis, ning võtmefailile peavad olema minimaalsed ligipääsuõigused.&lt;br /&gt;
&lt;br /&gt;
Skeem on sarnane JSON Web Token skeemile ([https://tools.ietf.org/html/rfc7519 RFC 7519])&lt;br /&gt;
&lt;br /&gt;
Kasutaja loomisel saadab server kasutaja sisestatud mailiaadressile kinnituskirja, kus kasutaja peab klikkima lingil, et oma kasutaja kinnitada. Antud lingi jaoks kasutatakse samuti stateless auth mustrit, serialiseeritud ja serveri poolt allkirjastatud andmed on URL-i parameeter.&lt;br /&gt;
&lt;br /&gt;
E-kirja saatmiseks kasutab server Mailgun teenust, kuna ise oma serverist kirju saates on äärmiselt suur tõenäosus, et need jäävad spämmifiltritesse kinni(SenderScore, jne).&lt;br /&gt;
&lt;br /&gt;
=== Arendusmustrid  ===&lt;br /&gt;
*[http://social.technet.microsoft.com/wiki/contents/articles/13536.easy-mvvm-examples-in-extreme-detail.aspx MVVM][https://msdn.microsoft.com/en-us/library/gg405484(v=pandp.40).aspx]&lt;br /&gt;
&lt;br /&gt;
=== Versioonikontroll ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms181237.aspx Team Foundation]&lt;br /&gt;
&lt;br /&gt;
Versioonikontrolli kasutuse käigus ilmnes Visual Studio viga/tegemata töö: NuGet packageid solutionisse lisades pidid teised kasutajad pakettide tööle saamiseks endal kohalikult (solution)\packages\ kataloogi enne buildi ära kustutama. Selle vea paranduseks on tarvis lisada solutioni kataloogi .tfignore fail sisuga&lt;br /&gt;
 \packages&lt;br /&gt;
ja .nuget\NuGet.config fail sisuga:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;configuration&amp;gt;&lt;br /&gt;
   &amp;lt;solution&amp;gt;&lt;br /&gt;
     &amp;lt;add key=&amp;quot;disableSourceControlIntegration&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;/solution&amp;gt;&lt;br /&gt;
 &amp;lt;/configuration&amp;gt;&lt;br /&gt;
Seejärel Source code explorer aknast serveri versioon packages kataloogist ära kustutada. Edaspidi ei laeta packages kataloogi versioonikontrolli, ning NuGet automatic restore saab automaatselt vajalikud paketid buildides taastatud.&lt;br /&gt;
&lt;br /&gt;
=== API kirjeldus ja dokumentatsioon ===&lt;br /&gt;
*[https://apiblueprint.org/ Api Blueprint]&lt;br /&gt;
*[https://apiary.io/ Apiary]&lt;br /&gt;
*[https://github.com/apiaryio/dredd/ Dredd]&lt;br /&gt;
&lt;br /&gt;
Api kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
WCF genereerib ilusti ka ise koodi põhjal API dokumentatsiooni. See on plaanis kasutusele võtta hiljem, kui serveri kood on valmis, ning server on avalikult online.&lt;br /&gt;
&lt;br /&gt;
=== Koodi stiilireeglid ===&lt;br /&gt;
*[https://visualstudiogallery.msdn.microsoft.com/cac2a05b-6eb6-4fa2-95b9-1f8d011e6cae StyleCop]&lt;br /&gt;
Otsustasime, et kogu programmi kood, muutujanimed ja koodi kommentaarid on ingliskeelsed.&lt;br /&gt;
Muutujanimedel kasutame järgmiseid reegleid:&lt;br /&gt;
* Klassi privaatmuutujad algavad _ prefiksiga;&lt;br /&gt;
* Klassi avalikud meetodid ja muutujad algavad suurtähega;&lt;br /&gt;
* Kõik muud muutujad algavad väiketähega;&lt;br /&gt;
&lt;br /&gt;
Kõik muutujanimed peavad sisaldama ainult US-ASCII tähti või numbreid ( ^[a-zA-Z0-9]+$ ). Liigendamiseks on suurtähed.&lt;br /&gt;
&lt;br /&gt;
Muutujad peavad võimalikult täpselt kirjeldama oma sisu abstraktsel tasemel. Erandiks on meetodi- ja funktsioonisisesed muutujad millede sisu on kontekstist lihtsalt tuletatav. Näiteks &amp;quot;i&amp;quot; tsükliloendurina jne.&lt;br /&gt;
&lt;br /&gt;
Muutujanimed ei tohi sisaldada tüübiviidet.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Maagilised&amp;quot; muutujad peavad olema deklareeritud konstantidena, ning omama kommentaari. Kõiki selliseid muutujaid peab olema võimalik programmi konfiguratsioonifailist muuta.&lt;br /&gt;
&lt;br /&gt;
=== Litsents ===&lt;br /&gt;
Kogu rakendus avaldatakse GNU General Public License v3.0 all. [http://www.gnu.org/licenses/gpl-3.0.en.html (GPL)]&lt;br /&gt;
Rakenduse dokumentatsioon avaldatakse ITK Wikis, järgides ITK Wiki litsentsitingimusi.&lt;br /&gt;
&lt;br /&gt;
== Avaldatud failid ==&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=edaa0cf40fb840ba7a620d4c0252b49e Andmebaasi Skeem (DBDesigner) ]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE%20App%20Proto%2020151213.zip&amp;amp;download Rakenduse esimene prototüüp (13.12.2015)]&lt;br /&gt;
&lt;br /&gt;
== Arendusprotsess ==&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;08.10.2015&#039;&#039;&#039;    - Loodud wiki leht ja lepitud kokku esimene kohtumine idee leidmiseks ja algseks analüüsiks.&lt;br /&gt;
*&#039;&#039;&#039;19.10.2015&#039;&#039;&#039;    - Esimene kohtumine. Leitud idee rakenduse loomiseks, määratud rollid esimeseks analüüsietapiks.&lt;br /&gt;
*&#039;&#039;&#039;01.11.2015&#039;&#039;&#039;    - Teine kohtumine. Valmis analüüs.&lt;br /&gt;
*&#039;&#039;&#039;06.11.2015&#039;&#039;&#039;    - Lisatud retsensioon meeskonnale Premium.&lt;br /&gt;
*&#039;&#039;&#039;11.11.2015&#039;&#039;&#039;    - Esimene tõmmis kasutajaliidesest TFS-is&lt;br /&gt;
*&#039;&#039;&#039;12.11.2015&#039;&#039;&#039;    - Loodud esialgne API kirjeldus, vajab veel täiendamist arenduse käigus&lt;br /&gt;
*&#039;&#039;&#039;15.11.2015&#039;&#039;&#039;    - Loodud kliendi kohaliku andmebaasi skeem&lt;br /&gt;
*&#039;&#039;&#039;17.11.2015&#039;&#039;&#039;    - Kolmas kohtumine, lepitud kokku ajad mil koos koodi kirjutada. Ühtlasi loodud rakenduse kihtide skeem.&lt;br /&gt;
*&#039;&#039;&#039;21.11.2015&#039;&#039;&#039;    - Koos koodi kirjutatud pisut. Kasutajaliides hakkas asju tegema, API server vastab käskudele.&lt;br /&gt;
*&#039;&#039;&#039;28.11.2015&#039;&#039;&#039;    - Algselt MSSQL+EF kliendi DAL migreeritud SQLite+Dapper lahendusele.&lt;br /&gt;
*&#039;&#039;&#039;30.11.2015&#039;&#039;&#039;    - Rakendust esitletud C# praktikumis.&lt;br /&gt;
*&#039;&#039;&#039;31.11.2015&#039;&#039;&#039;    - Neljas kohtumine, lepitud kokku ülesannete jaotus ja arenduskava järgmiseks nädalaks.&lt;br /&gt;
*&#039;&#039;&#039;04.12.2015&#039;&#039;&#039;    - Konsultatsioon õppejõuga.&lt;br /&gt;
*&#039;&#039;&#039;10-13.12.2015&#039;&#039;&#039; - Viies kohtumine ja rakenduse arendamine.&lt;br /&gt;
*&#039;&#039;&#039;11.12.2015&#039;&#039;&#039;    - Prototüübi esimese versiooni lisamine Wiki lehele.&lt;br /&gt;
*&#039;&#039;&#039;13.12.2015&#039;&#039;&#039;    - Prototüübi teise versiooni lisamine Wiki lehele.&lt;br /&gt;
&lt;br /&gt;
== Lisad ==&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=XTgFtxHhCQ0]&lt;br /&gt;
&lt;br /&gt;
== Prototüüp ==&lt;br /&gt;
Prototüüp peab võimaldama kasutajal sisestada taski, siduda see ainega ja vajadusel grupiga ning lisada lubatud atribuudid. Lisatud taske kuvatakse detailvaates (selleks tuleb vajutada taski nimetusele).&lt;br /&gt;
Aplikatsiooni prototüüp .zip faili saab alla laadida siit[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE_proto20151213.zip&amp;amp;download]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi prototüübi funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Kasutaja saab sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja saab taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaja;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi;&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne.&lt;br /&gt;
* Kalendrivaates kuvatakse kuupäeva järgi sorteeritud taskid. Taskile vajutades avaneb taski detailvaade;&lt;br /&gt;
* Vajutades taski nimetusele tehakse päring lokaalsesse baasi ning kuvatakse taski detailandmed koos võimalusega taski muuta või kustutada;&lt;br /&gt;
*Kasutaja saab sisestatud taski andmeid muuta ja taski kustutada;&lt;br /&gt;
* Rakendus töötab offline režiimis. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Andmebaas&#039;&#039;&#039;&lt;br /&gt;
- by default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri&#039;&#039;&#039; poolelt ei ole hetkel veel midagi tehtud(töötab API Hello World tasemel). Prototüüp on hetkel ainult kohaliku kasutusega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Senine tööjaotus&#039;&#039;&#039;&lt;br /&gt;
* Kärt Palm - BLL (BO ja Service) ja praeguseks oluliselt muudetud DAL (esialgu realiseeritud DAL Entity frameworki&#039;l sai muudetud, et tagada SQlite tugi);&lt;br /&gt;
* Karina Egipt - View, ViewModel;&lt;br /&gt;
* Silver Saks - Lokaalne andmebaas, Server;&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=99005</id>
		<title>Meeskond: Spooky Scary Skeletons</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=99005"/>
		<updated>2015-12-13T21:10:18Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Prototüüp */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
== Meeskond ja rollid ==&lt;br /&gt;
*&#039;&#039;&#039;Kärt Palm&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Karina Egipt&#039;&#039;&#039; - Projektijuht&lt;br /&gt;
*&#039;&#039;&#039;Erika Ehmann&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Silver Saks&#039;&#039;&#039; - Wiki pidaja&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
TODO list kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot(eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Offline funktsionaalsus kohaliku andmebaasiga, mis replikeeritakse serverisse(kasutaja soovil). Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
== Analüüs ==&lt;br /&gt;
AVE 2.0 on kodutööde planeerimise rakendus, kuhu iga kasutaja saab lisada õppeaines antud kodutöid, lisada neile esitamise tähtaegu ja muud lisainformatsiooni. &lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Alamtask&#039;&#039;&#039;  - task, mis on osa suuremast tööst (kuulub mingi taski alla) ning millele saab määrata omaette atribuute;&lt;br /&gt;
*&#039;&#039;&#039;Atribuut&#039;&#039;&#039; - task&#039;i omadused (näiteks: tähtaeg, kirjeldus, kommentaarid, viited jne);&lt;br /&gt;
*&#039;&#039;&#039;Õppeaine&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Grupp&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (alamtähtajad, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset offline kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab ära märkida oma kooli(d) ja deklareeritud õppeained. Õppeainetele subscribe&#039;ides saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud või mitteseotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus pakub kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutajale pakutakse automaatselt see versioon taskist, mis hetkel on  kasutajate hulgas kõige populaarsem. Kasutaja võib selle tagasi lükata, kui task teda ei huvita, või võtta vastu mõne muu versiooni taskist. Kasutaja võib teiste lisatud taskile ka ise atribuute lisada, mis juhul neid muudatusi pakutakse ka teistele kasutajatele.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: klient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja nende atribuute.&lt;br /&gt;
&lt;br /&gt;
Klient suhtleb serveriga üle REST API.&lt;br /&gt;
&lt;br /&gt;
Klient hoiab lokaalselt andmeid SQLite andmebaasis, sinna replikeeritakse ka teiste kasutajate poolt lisatud muutused juhul kui kasutaja need aktsepteerib.&lt;br /&gt;
&lt;br /&gt;
Klient peab oskama API kaudu küsida serverist teda huvitavaid värskendusi ehk klient peab pidama arvet selle üle milline osa infost tal on kohalikus andmebaasis olemas.&lt;br /&gt;
&lt;br /&gt;
Rakendust käivitades küsitakse kasutajalt kasutajanime ja parooli, seejärel rakendus käivitub, kuvab antud kasutaja töölaua, ning üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot sisaldavaid atribuute (vahetähtajad, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama nii online kui offline režiimis. Vaikimisi režiimiks on online, offline saab olla eelkõige ainult siis, kui arvuti ei ole internetiga ühendatud. Kui rakendus on offline, siis kajastub kasutajaliideses vastav teade;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Lokaalse andmebaasi krüpteerimine kasutaja parooli baasil&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
Serveris toimub kasutajate haldus ja kõikide kasutajate poolt sisestatud info talletamine. Serveri põhiline ülesanne on vastavalt API käskudele andmebaasist andmete esitamine.&lt;br /&gt;
&lt;br /&gt;
Serveris asub tsentraalne andmebaas kogu rakenduse infoga(kõik task&#039;id, nende atribuudid, jne). Kasutame PostgreSQL andmebaasi.&lt;br /&gt;
&lt;br /&gt;
Suhtlus kliendi ja serveri vahel toimub üle REST api.&lt;br /&gt;
&lt;br /&gt;
Andmebaasi skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Database AVE.png|900px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab võimaldama suhtlust kliendi ja andmebaasi vahel&lt;br /&gt;
* Registreerumisel saadetakse kasutajale e-mail registreerumist kinnitava lingiga.&lt;br /&gt;
* Peab kliendi päringu peale suutma saata kõik kasutajat huvitavad andmed mida kasutaja klientprogrammi kohalikus andmebaasis veel ei ole.&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
* Õppeainega/grupiga seotud taski lisamisel kalendrisse peab see ilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel lisatakse task’i kasutaja kalendrisse;&lt;br /&gt;
* Server peab logisid kõigi tehtud toimingute kohta. Administraator saab määrata logimistaseme.&lt;br /&gt;
* API on kättesaadav ainult üle turvalise ühenduse&lt;br /&gt;
* Paroolid salvestatakse kasutades juhuslikult genereeritud salt-i ning PBKDF2 algorithmi (SHA256, 100 000 iteratsiooni)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* API rate limiting&lt;br /&gt;
* Bayesian spam filter&lt;br /&gt;
* Iga kasutaja kohta iCal faili automaatne koostamine.&lt;br /&gt;
* Push notifications&lt;br /&gt;
&lt;br /&gt;
== Projekti kirjeldus ==&lt;br /&gt;
=== Tehnoloogiad  ===&lt;br /&gt;
&#039;&#039;&#039;DAL - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://www.sqlite.org/ SQLite]&lt;br /&gt;
*[https://github.com/StackExchange/dapper-dot-net Dapper]&lt;br /&gt;
&lt;br /&gt;
Kliendi DAL sai otsustatud ehitada Dapperi baasil, Entity frameworki asemel. Entity framework 6-l puudub täielik SQLite tugi(näiteks tabeleid ei saa luua). Ühtlasi häirib õppimise seisukohalt EF üleliigne abstraktsioonitase - äärmiselt keeruline on aru saada, mida su programm tegelikult teeb.&lt;br /&gt;
&lt;br /&gt;
Alguses sai Dapperi jaoks koostatud SQL päringuid, kuid kuna väga suur osa päringutest olid äärmiselt sarnased, siis sai kasutusele võetud Dapper.SimpleCRUD. Keerulisemad päringud saab vajadusel käsitsi juurde teha, kuid lokaalse andmebaasi puhul ei tohiks selleks vajadust olla.&lt;br /&gt;
&lt;br /&gt;
By default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
[[File:Ave localdb.png]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/aa970268%28v=vs.110%29.aspx WPF]&lt;br /&gt;
AVE e View sisaldab vaid kujunduselemente ning nendevahelisi seoses. Kogu view&#039;de vahetamise ja muu UI jaoks vajalik loogika on ehitaud ViewModel&#039;isse.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Client&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kliendi kohalik autentikatsioon on mõeldud serveriga suhtlemise toetamiseks. Kohalikku andmebaasi salvestatakse kas kasutaja krüpteeritud parool või parooli räsi. Juhul kui salvestatud on parool, tähendab see, et kasutaja on valinud linnukese &amp;quot;jäta mind meelde&amp;quot;, ning rakendusse sisselogimine toimub automaatselt. Vastasel juhul küsitakse kasutaja käest rakendust avades parooli, ning kohaliku räsi vastu võrreldakse seda juhul kui serveriga ühendust ei saa(rakendus on offline). Parooli hoidmise turvalisuse tõstmiseks kasutame [https://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata%28v=vs.110%29.aspx Windows Data Protection API-t], mis kaitseb kohalikult säilitatavat parooli Windowsi kasutajahalduse vahenditega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd537609%28v=vs.110%29.aspx Task Parallel Library]&lt;br /&gt;
*[http://www.postgresql.org/ PostgreSQL]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx WCF]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd203052.aspx REST]&lt;br /&gt;
&lt;br /&gt;
Server kasutab klientidega suhtluseks RESTful apit ja JSON andmeformaati.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Server&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentikatsioon toimub stateless auth mustrit kasutades.&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentimiseks saadab kasutaja oma kasutajanime, parooli ja juhuslikult genereeritud stringi POST meetodit kasutades https://&amp;lt;server&amp;gt;/login ressursile. Server kontrollib kasutaja parooli andmebaasi salvestatud hashi vastu, ning positiivse vastuse puhul lisab expiration timestampi ning keyed HMAC_SHA256 autentikatsioonikoodi, kasutades ainult serverile teadaolevat võtit. Transpordi käigus andmete turvalisuse eest hoolitseb TLS. TLS sertifikaadi kinnitamiseks kasutame kas StartCom või Let&#039;s Encrypt tasuta teenust.&lt;br /&gt;
&lt;br /&gt;
Vastuseks saadud tokeni salvestab klientprogramm endale mällu, ning lisab hiljem igale API requestile. Konkreetne meetod pole oluline, aga kasutame vist Authentication headerit ja serialiseerime JSON objekti Base64 kodeeringuga.&lt;br /&gt;
&lt;br /&gt;
Antud skeemi eelis on, et server ei pea arvet pidama aktiivsete sessioonide üle, vaid kontrollib lihtsalt HMAC vastavust ning kasutab tokenis olevat infot. Kriitiline on serveri võtit turvaliselt säilitada. Ideaalne oleks serveri võtme salvestamiseks kasutada TPM moodulit, kuid kasutades odavaid hostinguteenuseid ei ole see võimalik - võtit tuleb hoida failisüsteemis, ning võtmefailile peavad olema minimaalsed ligipääsuõigused.&lt;br /&gt;
&lt;br /&gt;
Skeem on sarnane JSON Web Token skeemile ([https://tools.ietf.org/html/rfc7519 RFC 7519])&lt;br /&gt;
&lt;br /&gt;
Kasutaja loomisel saadab server kasutaja sisestatud mailiaadressile kinnituskirja, kus kasutaja peab klikkima lingil, et oma kasutaja kinnitada. Antud lingi jaoks kasutatakse samuti stateless auth mustrit, serialiseeritud ja serveri poolt allkirjastatud andmed on URL-i parameeter.&lt;br /&gt;
&lt;br /&gt;
E-kirja saatmiseks kasutab server Mailgun teenust, kuna ise oma serverist kirju saates on äärmiselt suur tõenäosus, et need jäävad spämmifiltritesse kinni(SenderScore, jne).&lt;br /&gt;
&lt;br /&gt;
=== Arendusmustrid  ===&lt;br /&gt;
*[http://social.technet.microsoft.com/wiki/contents/articles/13536.easy-mvvm-examples-in-extreme-detail.aspx MVVM][https://msdn.microsoft.com/en-us/library/gg405484(v=pandp.40).aspx]&lt;br /&gt;
&lt;br /&gt;
=== Versioonikontroll ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms181237.aspx Team Foundation]&lt;br /&gt;
&lt;br /&gt;
Versioonikontrolli kasutuse käigus ilmnes Visual Studio viga/tegemata töö: NuGet packageid solutionisse lisades pidid teised kasutajad pakettide tööle saamiseks endal kohalikult (solution)\packages\ kataloogi enne buildi ära kustutama. Selle vea paranduseks on tarvis lisada solutioni kataloogi .tfignore fail sisuga&lt;br /&gt;
 \packages&lt;br /&gt;
ja .nuget\NuGet.config fail sisuga:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;configuration&amp;gt;&lt;br /&gt;
   &amp;lt;solution&amp;gt;&lt;br /&gt;
     &amp;lt;add key=&amp;quot;disableSourceControlIntegration&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;/solution&amp;gt;&lt;br /&gt;
 &amp;lt;/configuration&amp;gt;&lt;br /&gt;
Seejärel Source code explorer aknast serveri versioon packages kataloogist ära kustutada. Edaspidi ei laeta packages kataloogi versioonikontrolli, ning NuGet automatic restore saab automaatselt vajalikud paketid buildides taastatud.&lt;br /&gt;
&lt;br /&gt;
=== API kirjeldus ja dokumentatsioon ===&lt;br /&gt;
*[https://apiblueprint.org/ Api Blueprint]&lt;br /&gt;
*[https://apiary.io/ Apiary]&lt;br /&gt;
*[https://github.com/apiaryio/dredd/ Dredd]&lt;br /&gt;
&lt;br /&gt;
Api kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
WCF genereerib ilusti ka ise koodi põhjal API dokumentatsiooni. See on plaanis kasutusele võtta hiljem, kui serveri kood on valmis, ning server on avalikult online.&lt;br /&gt;
&lt;br /&gt;
=== Koodi stiilireeglid ===&lt;br /&gt;
*[https://visualstudiogallery.msdn.microsoft.com/cac2a05b-6eb6-4fa2-95b9-1f8d011e6cae StyleCop]&lt;br /&gt;
Otsustasime, et kogu programmi kood, muutujanimed ja koodi kommentaarid on ingliskeelsed.&lt;br /&gt;
Muutujanimedel kasutame järgmiseid reegleid:&lt;br /&gt;
* Klassi privaatmuutujad algavad _ prefiksiga;&lt;br /&gt;
* Klassi avalikud meetodid ja muutujad algavad suurtähega;&lt;br /&gt;
* Kõik muud muutujad algavad väiketähega;&lt;br /&gt;
&lt;br /&gt;
Kõik muutujanimed peavad sisaldama ainult US-ASCII tähti või numbreid ( ^[a-zA-Z0-9]+$ ). Liigendamiseks on suurtähed.&lt;br /&gt;
&lt;br /&gt;
Muutujad peavad võimalikult täpselt kirjeldama oma sisu abstraktsel tasemel. Erandiks on meetodi- ja funktsioonisisesed muutujad millede sisu on kontekstist lihtsalt tuletatav. Näiteks &amp;quot;i&amp;quot; tsükliloendurina jne.&lt;br /&gt;
&lt;br /&gt;
Muutujanimed ei tohi sisaldada tüübiviidet.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Maagilised&amp;quot; muutujad peavad olema deklareeritud konstantidena, ning omama kommentaari. Kõiki selliseid muutujaid peab olema võimalik programmi konfiguratsioonifailist muuta.&lt;br /&gt;
&lt;br /&gt;
=== Litsents ===&lt;br /&gt;
Kogu rakendus avaldatakse GNU General Public License v3.0 all. [http://www.gnu.org/licenses/gpl-3.0.en.html (GPL)]&lt;br /&gt;
Rakenduse dokumentatsioon avaldatakse ITK Wikis, järgides ITK Wiki litsentsitingimusi.&lt;br /&gt;
&lt;br /&gt;
== Avaldatud failid ==&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=edaa0cf40fb840ba7a620d4c0252b49e Andmebaasi Skeem (DBDesigner) ]&lt;br /&gt;
*[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE%20App%20Proto%2020151213.zip&amp;amp;download Rakenduse esimene prototüüp (13.12.2015)]&lt;br /&gt;
&lt;br /&gt;
== Arendusprotsess ==&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;08.10.2015&#039;&#039;&#039;    - Loodud wiki leht ja lepitud kokku esimene kohtumine idee leidmiseks ja algseks analüüsiks.&lt;br /&gt;
*&#039;&#039;&#039;19.10.2015&#039;&#039;&#039;    - Esimene kohtumine. Leitud idee rakenduse loomiseks, määratud rollid esimeseks analüüsietapiks.&lt;br /&gt;
*&#039;&#039;&#039;01.11.2015&#039;&#039;&#039;    - Teine kohtumine. Valmis analüüs.&lt;br /&gt;
*&#039;&#039;&#039;06.11.2015&#039;&#039;&#039;    - Lisatud retsensioon meeskonnale Premium.&lt;br /&gt;
*&#039;&#039;&#039;11.11.2015&#039;&#039;&#039;    - Esimene tõmmis kasutajaliidesest TFS-is&lt;br /&gt;
*&#039;&#039;&#039;12.11.2015&#039;&#039;&#039;    - Loodud esialgne API kirjeldus, vajab veel täiendamist arenduse käigus&lt;br /&gt;
*&#039;&#039;&#039;15.11.2015&#039;&#039;&#039;    - Loodud kliendi kohaliku andmebaasi skeem&lt;br /&gt;
*&#039;&#039;&#039;17.11.2015&#039;&#039;&#039;    - Kolmas kohtumine, lepitud kokku ajad mil koos koodi kirjutada. Ühtlasi loodud rakenduse kihtide skeem.&lt;br /&gt;
*&#039;&#039;&#039;21.11.2015&#039;&#039;&#039;    - Koos koodi kirjutatud pisut. Kasutajaliides hakkas asju tegema, API server vastab käskudele.&lt;br /&gt;
*&#039;&#039;&#039;28.11.2015&#039;&#039;&#039;    - Algselt MSSQL+EF kliendi DAL migreeritud SQLite+Dapper lahendusele.&lt;br /&gt;
*&#039;&#039;&#039;30.11.2015&#039;&#039;&#039;    - Rakendust esitletud C# praktikumis.&lt;br /&gt;
*&#039;&#039;&#039;31.11.2015&#039;&#039;&#039;    - Neljas kohtumine, lepitud kokku ülesannete jaotus ja arenduskava järgmiseks nädalaks.&lt;br /&gt;
*&#039;&#039;&#039;04.12.2015&#039;&#039;&#039;    - Konsultatsioon õppejõuga.&lt;br /&gt;
*&#039;&#039;&#039;10-13.12.2015&#039;&#039;&#039; - Viies kohtumine ja rakenduse arendamine.&lt;br /&gt;
*&#039;&#039;&#039;13.12.2015&#039;&#039;&#039;    - Prototüübi lisamine Wiki lehele.&lt;br /&gt;
&lt;br /&gt;
== Lisad ==&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=XTgFtxHhCQ0]&lt;br /&gt;
&lt;br /&gt;
== Prototüüp ==&lt;br /&gt;
Prototüüp peab võimaldama kasutajal sisestada taski, siduda see ainega ja vajadusel grupiga ning lisada lubatud atribuudid. Lisatud taske kuvatakse detailvaates (selleks tuleb vajutada taski nimetusele).&lt;br /&gt;
Aplikatsiooni prototüüp .zip faili saab alla laadida siit[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE_proto20151213.zip&amp;amp;download]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi prototüübi funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Kasutaja saab sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja saab taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaja;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi;&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne.&lt;br /&gt;
* Kalendrivaates kuvatakse kuupäeva järgi sorteeritud taskid. Taskile vajutades avaneb taski detailvaade;&lt;br /&gt;
* Vajutades taski nimetusele tehakse päring lokaalsesse baasi ning kuvatakse taski detailandmed koos võimalusega taski muuta või kustutada;&lt;br /&gt;
*Kasutaja saab sisestatud taski andmeid muuta ja taski kustutada;&lt;br /&gt;
* Rakendus töötab offline režiimis. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Andmebaas&#039;&#039;&#039;&lt;br /&gt;
- by default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri&#039;&#039;&#039; poolelt ei ole hetkel veel midagi tehtud(töötab API Hello World tasemel). Prototüüp on hetkel ainult kohaliku kasutusega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Senine tööjaotus&#039;&#039;&#039;&lt;br /&gt;
* Kärt Palm - BLL (BO ja Service) ja praeguseks oluliselt muudetud DAL (esialgu realiseeritud DAL Entity frameworki&#039;l sai muudetud, et tagada SQlite tugi);&lt;br /&gt;
* Karina Egipt - View, ViewModel;&lt;br /&gt;
* Silver Saks - Lokaalne andmebaas, Server;&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=98889</id>
		<title>Meeskond: Spooky Scary Skeletons</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=98889"/>
		<updated>2015-12-13T08:40:50Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Arendusprotsess */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
== Meeskond ja rollid ==&lt;br /&gt;
*&#039;&#039;&#039;Kärt Palm&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Karina Egipt&#039;&#039;&#039; - Projektijuht&lt;br /&gt;
*&#039;&#039;&#039;Erika Ehmann&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Silver Saks&#039;&#039;&#039; - Wiki pidaja&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
TODO list kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot(eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Offline funktsionaalsus kohaliku andmebaasiga, mis replikeeritakse serverisse(kasutaja soovil). Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
== Analüüs ==&lt;br /&gt;
AVE 2.0 on kodutööde planeerimise rakendus, kuhu iga kasutaja saab lisada õppeaines antud kodutöid, lisada neile esitamise tähtaegu ja muud lisainformatsiooni. &lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Alamtask&#039;&#039;&#039;  - task, mis on osa suuremast tööst (kuulub mingi taski alla) ning millele saab määrata omaette atribuute;&lt;br /&gt;
*&#039;&#039;&#039;Atribuut&#039;&#039;&#039; - task&#039;i omadused (näiteks: tähtaeg, kirjeldus, kommentaarid, viited jne);&lt;br /&gt;
*&#039;&#039;&#039;Õppeaine&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Grupp&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (alamtähtajad, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset offline kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab ära märkida oma kooli(d) ja deklareeritud õppeained. Õppeainetele subscribe&#039;ides saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud või mitteseotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus pakub kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutajale pakutakse automaatselt see versioon taskist, mis hetkel on  kasutajate hulgas kõige populaarsem. Kasutaja võib selle tagasi lükata, kui task teda ei huvita, või võtta vastu mõne muu versiooni taskist. Kasutaja võib teiste lisatud taskile ka ise atribuute lisada, mis juhul neid muudatusi pakutakse ka teistele kasutajatele.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: klient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja nende atribuute.&lt;br /&gt;
&lt;br /&gt;
Klient suhtleb serveriga üle REST API.&lt;br /&gt;
&lt;br /&gt;
Klient hoiab lokaalselt andmeid SQLite andmebaasis, sinna replikeeritakse ka teiste kasutajate poolt lisatud muutused juhul kui kasutaja need aktsepteerib.&lt;br /&gt;
&lt;br /&gt;
Klient peab oskama API kaudu küsida serverist teda huvitavaid värskendusi ehk klient peab pidama arvet selle üle milline osa infost tal on kohalikus andmebaasis olemas.&lt;br /&gt;
&lt;br /&gt;
Rakendust käivitades küsitakse kasutajalt kasutajanime ja parooli, seejärel rakendus käivitub, kuvab antud kasutaja töölaua, ning üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot sisaldavaid atribuute (vahetähtajad, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama nii online kui offline režiimis. Vaikimisi režiimiks on online, offline saab olla eelkõige ainult siis, kui arvuti ei ole internetiga ühendatud. Kui rakendus on offline, siis kajastub kasutajaliideses vastav teade;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Lokaalse andmebaasi krüpteerimine kasutaja parooli baasil&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
Serveris toimub kasutajate haldus ja kõikide kasutajate poolt sisestatud info talletamine. Serveri põhiline ülesanne on vastavalt API käskudele andmebaasist andmete esitamine.&lt;br /&gt;
&lt;br /&gt;
Serveris asub tsentraalne andmebaas kogu rakenduse infoga(kõik task&#039;id, nende atribuudid, jne). Kasutame PostgreSQL andmebaasi.&lt;br /&gt;
&lt;br /&gt;
Suhtlus kliendi ja serveri vahel toimub üle REST api.&lt;br /&gt;
&lt;br /&gt;
Andmebaasi skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Database AVE.png|900px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab võimaldama suhtlust kliendi ja andmebaasi vahel&lt;br /&gt;
* Registreerumisel saadetakse kasutajale e-mail registreerumist kinnitava lingiga.&lt;br /&gt;
* Peab kliendi päringu peale suutma saata kõik kasutajat huvitavad andmed mida kasutaja klientprogrammi kohalikus andmebaasis veel ei ole.&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
* Õppeainega/grupiga seotud taski lisamisel kalendrisse peab see ilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel lisatakse task’i kasutaja kalendrisse;&lt;br /&gt;
* Server peab logisid kõigi tehtud toimingute kohta. Administraator saab määrata logimistaseme.&lt;br /&gt;
* API on kättesaadav ainult üle turvalise ühenduse&lt;br /&gt;
* Paroolid salvestatakse kasutades juhuslikult genereeritud salt-i ning PBKDF2 algorithmi (SHA256, 100 000 iteratsiooni)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* API rate limiting&lt;br /&gt;
* Bayesian spam filter&lt;br /&gt;
* Iga kasutaja kohta iCal faili automaatne koostamine.&lt;br /&gt;
* Push notifications&lt;br /&gt;
&lt;br /&gt;
== Projekti kirjeldus ==&lt;br /&gt;
=== Tehnoloogiad  ===&lt;br /&gt;
&#039;&#039;&#039;DAL - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://www.sqlite.org/ SQLite]&lt;br /&gt;
*[https://github.com/StackExchange/dapper-dot-net Dapper]&lt;br /&gt;
&lt;br /&gt;
Kliendi DAL sai otsustatud ehitada Dapperi baasil, Entity frameworki asemel. Entity framework 6-l puudub täielik SQLite tugi(näiteks tabeleid ei saa luua). Ühtlasi häirib õppimise seisukohalt EF üleliigne abstraktsioonitase - äärmiselt keeruline on aru saada, mida su programm tegelikult teeb.&lt;br /&gt;
&lt;br /&gt;
Alguses sai Dapperi jaoks koostatud SQL päringuid, kuid kuna väga suur osa päringutest olid äärmiselt sarnased, siis sai kasutusele võetud Dapper.SimpleCRUD. Keerulisemad päringud saab vajadusel käsitsi juurde teha, kuid lokaalse andmebaasi puhul ei tohiks selleks vajadust olla.&lt;br /&gt;
&lt;br /&gt;
By default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
[[File:Ave localdb.png]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/aa970268%28v=vs.110%29.aspx WPF]&lt;br /&gt;
AVE e View sisaldab vaid kujunduselemente ning nendevahelisi seoses. Kogu view&#039;de vahetamise ja muu UI jaoks vajalik loogika on ehitaud ViewModel&#039;isse.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Client&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kliendi kohalik autentikatsioon on mõeldud serveriga suhtlemise toetamiseks. Kohalikku andmebaasi salvestatakse kas kasutaja krüpteeritud parool või parooli räsi. Juhul kui salvestatud on parool, tähendab see, et kasutaja on valinud linnukese &amp;quot;jäta mind meelde&amp;quot;, ning rakendusse sisselogimine toimub automaatselt. Vastasel juhul küsitakse kasutaja käest rakendust avades parooli, ning kohaliku räsi vastu võrreldakse seda juhul kui serveriga ühendust ei saa(rakendus on offline). Parooli hoidmise turvalisuse tõstmiseks kasutame [https://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata%28v=vs.110%29.aspx Windows Data Protection API-t], mis kaitseb kohalikult säilitatavat parooli Windowsi kasutajahalduse vahenditega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd537609%28v=vs.110%29.aspx Task Parallel Library]&lt;br /&gt;
*[http://www.postgresql.org/ PostgreSQL]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx WCF]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd203052.aspx REST]&lt;br /&gt;
&lt;br /&gt;
Server kasutab klientidega suhtluseks RESTful apit ja JSON andmeformaati.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Server&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentikatsioon toimub stateless auth mustrit kasutades.&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentimiseks saadab kasutaja oma kasutajanime, parooli ja juhuslikult genereeritud stringi POST meetodit kasutades https://&amp;lt;server&amp;gt;/login ressursile. Server kontrollib kasutaja parooli andmebaasi salvestatud hashi vastu, ning positiivse vastuse puhul lisab expiration timestampi ning keyed HMAC_SHA256 autentikatsioonikoodi, kasutades ainult serverile teadaolevat võtit. Transpordi käigus andmete turvalisuse eest hoolitseb TLS. TLS sertifikaadi kinnitamiseks kasutame kas StartCom või Let&#039;s Encrypt tasuta teenust.&lt;br /&gt;
&lt;br /&gt;
Vastuseks saadud tokeni salvestab klientprogramm endale mällu, ning lisab hiljem igale API requestile. Konkreetne meetod pole oluline, aga kasutame vist Authentication headerit ja serialiseerime JSON objekti Base64 kodeeringuga.&lt;br /&gt;
&lt;br /&gt;
Antud skeemi eelis on, et server ei pea arvet pidama aktiivsete sessioonide üle, vaid kontrollib lihtsalt HMAC vastavust ning kasutab tokenis olevat infot. Kriitiline on serveri võtit turvaliselt säilitada. Ideaalne oleks serveri võtme salvestamiseks kasutada TPM moodulit, kuid kasutades odavaid hostinguteenuseid ei ole see võimalik - võtit tuleb hoida failisüsteemis, ning võtmefailile peavad olema minimaalsed ligipääsuõigused.&lt;br /&gt;
&lt;br /&gt;
Skeem on sarnane JSON Web Token skeemile ([https://tools.ietf.org/html/rfc7519 RFC 7519])&lt;br /&gt;
&lt;br /&gt;
Kasutaja loomisel saadab server kasutaja sisestatud mailiaadressile kinnituskirja, kus kasutaja peab klikkima lingil, et oma kasutaja kinnitada. Antud lingi jaoks kasutatakse samuti stateless auth mustrit, serialiseeritud ja serveri poolt allkirjastatud andmed on URL-i parameeter.&lt;br /&gt;
&lt;br /&gt;
E-kirja saatmiseks kasutab server Mailgun teenust, kuna ise oma serverist kirju saates on äärmiselt suur tõenäosus, et need jäävad spämmifiltritesse kinni(SenderScore, jne).&lt;br /&gt;
&lt;br /&gt;
=== Arendusmustrid  ===&lt;br /&gt;
*[http://social.technet.microsoft.com/wiki/contents/articles/13536.easy-mvvm-examples-in-extreme-detail.aspx MVVM][https://msdn.microsoft.com/en-us/library/gg405484(v=pandp.40).aspx]&lt;br /&gt;
&lt;br /&gt;
=== Versioonikontroll ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms181237.aspx Team Foundation]&lt;br /&gt;
&lt;br /&gt;
Versioonikontrolli kasutuse käigus ilmnes Visual Studio viga/tegemata töö: NuGet packageid solutionisse lisades pidid teised kasutajad pakettide tööle saamiseks endal kohalikult (solution)\packages\ kataloogi enne buildi ära kustutama. Selle vea paranduseks on tarvis lisada solutioni kataloogi .tfignore fail sisuga&lt;br /&gt;
 \packages&lt;br /&gt;
ja .nuget\NuGet.config fail sisuga:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;configuration&amp;gt;&lt;br /&gt;
   &amp;lt;solution&amp;gt;&lt;br /&gt;
     &amp;lt;add key=&amp;quot;disableSourceControlIntegration&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;/solution&amp;gt;&lt;br /&gt;
 &amp;lt;/configuration&amp;gt;&lt;br /&gt;
Seejärel Source code explorer aknast serveri versioon packages kataloogist ära kustutada. Edaspidi ei laeta packages kataloogi versioonikontrolli, ning NuGet automatic restore saab automaatselt vajalikud paketid buildides taastatud.&lt;br /&gt;
&lt;br /&gt;
=== API kirjeldus ja dokumentatsioon ===&lt;br /&gt;
*[https://apiblueprint.org/ Api Blueprint]&lt;br /&gt;
*[https://apiary.io/ Apiary]&lt;br /&gt;
*[https://github.com/apiaryio/dredd/ Dredd]&lt;br /&gt;
&lt;br /&gt;
Api kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
WCF genereerib ilusti ka ise koodi põhjal API dokumentatsiooni. See on plaanis kasutusele võtta hiljem, kui serveri kood on valmis, ning server on avalikult online.&lt;br /&gt;
&lt;br /&gt;
=== Koodi stiilireeglid ===&lt;br /&gt;
*[https://visualstudiogallery.msdn.microsoft.com/cac2a05b-6eb6-4fa2-95b9-1f8d011e6cae StyleCop]&lt;br /&gt;
Otsustasime, et kogu programmi kood, muutujanimed ja koodi kommentaarid on ingliskeelsed.&lt;br /&gt;
Muutujanimedel kasutame järgmiseid reegleid:&lt;br /&gt;
* Klassi privaatmuutujad algavad _ prefiksiga;&lt;br /&gt;
* Klassi avalikud meetodid ja muutujad algavad suurtähega;&lt;br /&gt;
* Kõik muud muutujad algavad väiketähega;&lt;br /&gt;
&lt;br /&gt;
Kõik muutujanimed peavad sisaldama ainult US-ASCII tähti või numbreid ( ^[a-zA-Z0-9]+$ ). Liigendamiseks on suurtähed.&lt;br /&gt;
&lt;br /&gt;
Muutujad peavad võimalikult täpselt kirjeldama oma sisu abstraktsel tasemel. Erandiks on meetodi- ja funktsioonisisesed muutujad millede sisu on kontekstist lihtsalt tuletatav. Näiteks &amp;quot;i&amp;quot; tsükliloendurina jne.&lt;br /&gt;
&lt;br /&gt;
Muutujanimed ei tohi sisaldada tüübiviidet.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Maagilised&amp;quot; muutujad peavad olema deklareeritud konstantidena, ning omama kommentaari. Kõiki selliseid muutujaid peab olema võimalik programmi konfiguratsioonifailist muuta.&lt;br /&gt;
&lt;br /&gt;
=== Litsents ===&lt;br /&gt;
Kogu rakendus avaldatakse GNU General Public License v3.0 all. [http://www.gnu.org/licenses/gpl-3.0.en.html (GPL)]&lt;br /&gt;
Rakenduse dokumentatsioon avaldatakse ITK Wikis, järgides ITK Wiki litsentsitingimusi.&lt;br /&gt;
&lt;br /&gt;
== Avaldatud failid ==&lt;br /&gt;
[https://pilv.mana.ee/public.php?service=files&amp;amp;t=edaa0cf40fb840ba7a620d4c0252b49e Andmebaasi Skeem (DBDesigner) ]&lt;br /&gt;
&lt;br /&gt;
== Arendusprotsess ==&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;08.10.2015&#039;&#039;&#039;    - Loodud wiki leht ja lepitud kokku esimene kohtumine idee leidmiseks ja algseks analüüsiks.&lt;br /&gt;
*&#039;&#039;&#039;19.10.2015&#039;&#039;&#039;    - Esimene kohtumine. Leitud idee rakenduse loomiseks, määratud rollid esimeseks analüüsietapiks.&lt;br /&gt;
*&#039;&#039;&#039;01.11.2015&#039;&#039;&#039;    - Teine kohtumine. Valmis analüüs.&lt;br /&gt;
*&#039;&#039;&#039;06.11.2015&#039;&#039;&#039;    - Lisatud retsensioon meeskonnale Premium.&lt;br /&gt;
*&#039;&#039;&#039;11.11.2015&#039;&#039;&#039;    - Esimene tõmmis kasutajaliidesest TFS-is&lt;br /&gt;
*&#039;&#039;&#039;12.11.2015&#039;&#039;&#039;    - Loodud esialgne API kirjeldus, vajab veel täiendamist arenduse käigus&lt;br /&gt;
*&#039;&#039;&#039;15.11.2015&#039;&#039;&#039;    - Loodud kliendi kohaliku andmebaasi skeem&lt;br /&gt;
*&#039;&#039;&#039;17.11.2015&#039;&#039;&#039;    - Kolmas kohtumine, lepitud kokku ajad mil koos koodi kirjutada. Ühtlasi loodud rakenduse kihtide skeem.&lt;br /&gt;
*&#039;&#039;&#039;21.11.2015&#039;&#039;&#039;    - Koos koodi kirjutatud pisut. Kasutajaliides hakkas asju tegema, API server vastab käskudele.&lt;br /&gt;
*&#039;&#039;&#039;28.11.2015&#039;&#039;&#039;    - Algselt MSSQL+EF kliendi DAL migreeritud SQLite+Dapper lahendusele.&lt;br /&gt;
*&#039;&#039;&#039;30.11.2015&#039;&#039;&#039;    - Rakendust esitletud C# praktikumis.&lt;br /&gt;
*&#039;&#039;&#039;31.11.2015&#039;&#039;&#039;    - Neljas kohtumine, lepitud kokku ülesannete jaotus ja arenduskava järgmiseks nädalaks.&lt;br /&gt;
*&#039;&#039;&#039;04.12.2015&#039;&#039;&#039;    - Konsultatsioon õppejõuga.&lt;br /&gt;
*&#039;&#039;&#039;10-11.12.2015&#039;&#039;&#039; - Viies kohtumine ja rakenduse arendamine.&lt;br /&gt;
*&#039;&#039;&#039;11.12.2015&#039;&#039;&#039;    - Prototüübi lisamine Wiki lehele.&lt;br /&gt;
&lt;br /&gt;
== Lisad ==&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=XTgFtxHhCQ0]&lt;br /&gt;
&lt;br /&gt;
== Prototüüp ==&lt;br /&gt;
Prototüüp peab võimaldama kasutajal sisestada taski, siduda see ainega ja vajadusel grupiga ning lisada lubatud atribuudid. Lisatud taske kuvatakse detailvaates (selleks tuleb vajutada taski nimetusele).&lt;br /&gt;
Aplikatsiooni prototüüp .zip faili saab alla laadida siit[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE_Application_proto20151211.zip&amp;amp;download]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi prototüübi funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Kasutaja saab sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja saab taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaja;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi;&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne.&lt;br /&gt;
* Kalendrivaates kuvatakse kuupäeva järgi sorteeritud taskid, kuid nende kuvamine etteantud vormidesse veel realiseerimisel - antud funktsionaalsus ei ole prototüübi jaoks vajalik;&lt;br /&gt;
* Vajutades taski nimetusele tehakse päring lokaalsesse baasi ning kuvatakse taski detailandmed (andmete muutmise funktsioon .DAL tasandil veel tealiseerimata).&lt;br /&gt;
* Rakendus töötab offline režiimis. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Andmebaas&#039;&#039;&#039;&lt;br /&gt;
- by default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri&#039;&#039;&#039; poolelt on realiseeritud API, mille kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Senine tööjaotus&#039;&#039;&#039;&lt;br /&gt;
* Kärt Palm - BLL (BO ja Service) ja praeguseks oluliselt muudetud DAL (esialgu realiseeritud DAL Entity frameworki&#039;l sai muudetud, et tagada SQlite tugi);&lt;br /&gt;
* Karina Egipt - View, ViewModel;&lt;br /&gt;
* Silver Saks - Lokaalne andmebaas, Server;&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=98868</id>
		<title>Meeskond: Spooky Scary Skeletons</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=98868"/>
		<updated>2015-12-12T00:05:56Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
== Meeskond ja rollid ==&lt;br /&gt;
*&#039;&#039;&#039;Kärt Palm&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Karina Egipt&#039;&#039;&#039; - Projektijuht&lt;br /&gt;
*&#039;&#039;&#039;Erika Ehmann&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Silver Saks&#039;&#039;&#039; - Wiki pidaja&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
TODO list kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot(eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Offline funktsionaalsus kohaliku andmebaasiga, mis replikeeritakse serverisse(kasutaja soovil). Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
== Analüüs ==&lt;br /&gt;
AVE 2.0 on kodutööde planeerimise rakendus, kuhu iga kasutaja saab lisada õppeaines antud kodutöid, lisada neile esitamise tähtaegu ja muud lisainformatsiooni. &lt;br /&gt;
&lt;br /&gt;
=== Mõisted ===&lt;br /&gt;
*&#039;&#039;&#039;Task&#039;&#039;&#039; - ülesanne, test, eksam, mille kasutaja kannab kalendrisse ja määrab vähemalt kohustuslikud atribuudid. Task&#039;il saab olla vaid üks tähtaeg;&lt;br /&gt;
*&#039;&#039;&#039;Alamtask&#039;&#039;&#039;  - task, mis on osa suuremast tööst (kuulub mingi taski alla) ning millele saab määrata omaette atribuute;&lt;br /&gt;
*&#039;&#039;&#039;Atribuut&#039;&#039;&#039; - task&#039;i omadused (näiteks: tähtaeg, kirjeldus, kommentaarid, viited jne);&lt;br /&gt;
*&#039;&#039;&#039;Õppeaine&#039;&#039;&#039; - Taske grupeeriv atribuut;&lt;br /&gt;
*&#039;&#039;&#039;Grupp&#039;&#039;&#039; - Taske grupeeriv atribuut, mis on ülem õppeainest (ehk kui grupp on määratud, siis pakutakse antud taski ainult selle grupi liikmetele). Grupp võib eksisteerida ka ilma õppeaineta;&lt;br /&gt;
*&#039;&#039;&#039;Subscribe&#039;&#039;&#039; - õppeainega, grupiga või task&#039;iga liitumine, mille tulemusena ilmub vastava aine/grupi task&#039;id kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (alamtähtajad, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest.&lt;br /&gt;
&lt;br /&gt;
Rakenduse kasutamiseks on kohustuslik serveris konto loomine. Anonüümset offline kasutust ei ole. &lt;br /&gt;
&lt;br /&gt;
Kasutaja saab ära märkida oma kooli(d) ja deklareeritud õppeained. Õppeainetele subscribe&#039;ides saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud või mitteseotud gruppe.&lt;br /&gt;
&lt;br /&gt;
Rakendus pakub kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutajale pakutakse automaatselt see versioon taskist, mis hetkel on  kasutajate hulgas kõige populaarsem. Kasutaja võib selle tagasi lükata, kui task teda ei huvita, või võtta vastu mõne muu versiooni taskist. Kasutaja võib teiste lisatud taskile ka ise atribuute lisada, mis juhul neid muudatusi pakutakse ka teistele kasutajatele.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: klient ja server.&lt;br /&gt;
&lt;br /&gt;
==== Klient ====&lt;br /&gt;
Klientprogramm võimaldab kasutajal lisada taske, hallata oma kasutajaprofiili ja vaadata ning lisada endale teiste poolt lisatud taske ja nende atribuute.&lt;br /&gt;
&lt;br /&gt;
Klient suhtleb serveriga üle REST API.&lt;br /&gt;
&lt;br /&gt;
Klient hoiab lokaalselt andmeid SQLite andmebaasis, sinna replikeeritakse ka teiste kasutajate poolt lisatud muutused juhul kui kasutaja need aktsepteerib.&lt;br /&gt;
&lt;br /&gt;
Klient peab oskama API kaudu küsida serverist teda huvitavaid värskendusi ehk klient peab pidama arvet selle üle milline osa infost tal on kohalikus andmebaasis olemas.&lt;br /&gt;
&lt;br /&gt;
Rakendust käivitades küsitakse kasutajalt kasutajanime ja parooli, seejärel rakendus käivitub, kuvab antud kasutaja töölaua, ning üritab autentida ja sünkroniseerida serveriga.&lt;br /&gt;
&lt;br /&gt;
Task&#039;i lisamisel kalendrisse saab sellele lisada erinevat lisainfot sisaldavaid atribuute (vahetähtajad, töö detailsed nõuded, progress jmt). Rakendus hoiatab kasutajat, kui task&#039;i täitmise tähtaeg on lähenemas.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab olema võimalik kasutajaks registreerida (kasutajakonto olemsolu on kohustuslik programmi kasutamiseks);&lt;br /&gt;
*  Kasutaja peab saama sisse logida kasutajanime ja parooliga;&lt;br /&gt;
* Kasutaja peab saama registreerida ennast gruppidesse ja/või erinevate õppeainetele/kursustele;&lt;br /&gt;
* Kasutaja peab saama sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja peab saama taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaega;&lt;br /&gt;
** Task&#039;i liiki : ainetöö, essee, kursusetöö, lõputöö, referaat, praktika aruanne, eksam, test, muu;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi. Kui grupp on valitud, siis edastatakse task vaid grupi liikmetele&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne;&lt;br /&gt;
** aja, millal rakendus teavitab kasutajat tähtaja lähenemisest (vabatahtlik, vaikimisi 3 päeva enne);&lt;br /&gt;
** kas task on alustamata, pooleli või lõpetatud (st taski staatust)&lt;br /&gt;
* Rakendus peab töötama nii online kui offline režiimis. Vaikimisi režiimiks on online, offline saab olla eelkõige ainult siis, kui arvuti ei ole internetiga ühendatud. Kui rakendus on offline, siis kajastub kasutajaliideses vastav teade;&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Statistika tehtud ülesannete kohta.&lt;br /&gt;
* Kasutajakonto loomisel CAPTCHA kasutamine&lt;br /&gt;
* Lokaalse andmebaasi krüpteerimine kasutaja parooli baasil&lt;br /&gt;
&lt;br /&gt;
==== Server ====&lt;br /&gt;
Serveris toimub kasutajate haldus ja kõikide kasutajate poolt sisestatud info talletamine. Serveri põhiline ülesanne on vastavalt API käskudele andmebaasist andmete esitamine.&lt;br /&gt;
&lt;br /&gt;
Serveris asub tsentraalne andmebaas kogu rakenduse infoga(kõik task&#039;id, nende atribuudid, jne). Kasutame PostgreSQL andmebaasi.&lt;br /&gt;
&lt;br /&gt;
Suhtlus kliendi ja serveri vahel toimub üle REST api.&lt;br /&gt;
&lt;br /&gt;
Andmebaasi skeem:&lt;br /&gt;
&lt;br /&gt;
[[File:Database AVE.png|900px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri must-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Peab võimaldama suhtlust kliendi ja andmebaasi vahel&lt;br /&gt;
* Registreerumisel saadetakse kasutajale e-mail registreerumist kinnitava lingiga.&lt;br /&gt;
* Peab kliendi päringu peale suutma saata kõik kasutajat huvitavad andmed mida kasutaja klientprogrammi kohalikus andmebaasis veel ei ole.&lt;br /&gt;
* Kasutaja peab saama muuta kalendrisse lisatud task’e. Muudatused peavadilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel viiakse task’i muudatused kasutaja kalendrisse;&lt;br /&gt;
* Õppeainega/grupiga seotud taski lisamisel kalendrisse peab see ilmuma teavitusena kõikide kasutajate privaatkalendritesse, kes on ennast sellele ainele/gruppi registreerinud, ning igal kasutajal on siis võimalus teavitust aktsepteerida või tagasi lükata. Teavituse aktsepteerimisel lisatakse task’i kasutaja kalendrisse;&lt;br /&gt;
* Server peab logisid kõigi tehtud toimingute kohta. Administraator saab määrata logimistaseme.&lt;br /&gt;
* API on kättesaadav ainult üle turvalise ühenduse&lt;br /&gt;
* Paroolid salvestatakse kasutades juhuslikult genereeritud salt-i ning PBKDF2 algorithmi (SHA256, 100 000 iteratsiooni)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri nice-to-have funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* API rate limiting&lt;br /&gt;
* Bayesian spam filter&lt;br /&gt;
* Iga kasutaja kohta iCal faili automaatne koostamine.&lt;br /&gt;
* Push notifications&lt;br /&gt;
&lt;br /&gt;
== Projekti kirjeldus ==&lt;br /&gt;
=== Tehnoloogiad  ===&lt;br /&gt;
&#039;&#039;&#039;DAL - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://www.sqlite.org/ SQLite]&lt;br /&gt;
*[https://github.com/StackExchange/dapper-dot-net Dapper]&lt;br /&gt;
&lt;br /&gt;
Kliendi DAL sai otsustatud ehitada Dapperi baasil, Entity frameworki asemel. Entity framework 6-l puudub täielik SQLite tugi(näiteks tabeleid ei saa luua). Ühtlasi häirib õppimise seisukohalt EF üleliigne abstraktsioonitase - äärmiselt keeruline on aru saada, mida su programm tegelikult teeb.&lt;br /&gt;
&lt;br /&gt;
Alguses sai Dapperi jaoks koostatud SQL päringuid, kuid kuna väga suur osa päringutest olid äärmiselt sarnased, siis sai kasutusele võetud Dapper.SimpleCRUD. Keerulisemad päringud saab vajadusel käsitsi juurde teha, kuid lokaalse andmebaasi puhul ei tohiks selleks vajadust olla.&lt;br /&gt;
&lt;br /&gt;
By default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
[[File:Ave localdb.png]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;UI - Client&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/aa970268%28v=vs.110%29.aspx WPF]&lt;br /&gt;
AVE e View sisaldab vaid kujunduselemente ning nendevahelisi seoses. Kogu view&#039;de vahetamise ja muu UI jaoks vajalik loogika on ehitaud ViewModel&#039;isse.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Client&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kliendi kohalik autentikatsioon on mõeldud serveriga suhtlemise toetamiseks. Kohalikku andmebaasi salvestatakse kas kasutaja krüpteeritud parool või parooli räsi. Juhul kui salvestatud on parool, tähendab see, et kasutaja on valinud linnukese &amp;quot;jäta mind meelde&amp;quot;, ning rakendusse sisselogimine toimub automaatselt. Vastasel juhul küsitakse kasutaja käest rakendust avades parooli, ning kohaliku räsi vastu võrreldakse seda juhul kui serveriga ühendust ei saa(rakendus on offline). Parooli hoidmise turvalisuse tõstmiseks kasutame [https://msdn.microsoft.com/en-us/library/system.security.cryptography.protecteddata%28v=vs.110%29.aspx Windows Data Protection API-t], mis kaitseb kohalikult säilitatavat parooli Windowsi kasutajahalduse vahenditega.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039;&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd537609%28v=vs.110%29.aspx Task Parallel Library]&lt;br /&gt;
*[http://www.postgresql.org/ PostgreSQL]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx WCF]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd203052.aspx REST]&lt;br /&gt;
&lt;br /&gt;
Server kasutab klientidega suhtluseks RESTful apit ja JSON andmeformaati.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autentikatsioon - Server&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentikatsioon toimub stateless auth mustrit kasutades.&lt;br /&gt;
&lt;br /&gt;
Kasutaja autentimiseks saadab kasutaja oma kasutajanime, parooli ja juhuslikult genereeritud stringi POST meetodit kasutades https://&amp;lt;server&amp;gt;/login ressursile. Server kontrollib kasutaja parooli andmebaasi salvestatud hashi vastu, ning positiivse vastuse puhul lisab expiration timestampi ning keyed HMAC_SHA256 autentikatsioonikoodi, kasutades ainult serverile teadaolevat võtit. Transpordi käigus andmete turvalisuse eest hoolitseb TLS. TLS sertifikaadi kinnitamiseks kasutame kas StartCom või Let&#039;s Encrypt tasuta teenust.&lt;br /&gt;
&lt;br /&gt;
Vastuseks saadud tokeni salvestab klientprogramm endale mällu, ning lisab hiljem igale API requestile. Konkreetne meetod pole oluline, aga kasutame vist Authentication headerit ja serialiseerime JSON objekti Base64 kodeeringuga.&lt;br /&gt;
&lt;br /&gt;
Antud skeemi eelis on, et server ei pea arvet pidama aktiivsete sessioonide üle, vaid kontrollib lihtsalt HMAC vastavust ning kasutab tokenis olevat infot. Kriitiline on serveri võtit turvaliselt säilitada. Ideaalne oleks serveri võtme salvestamiseks kasutada TPM moodulit, kuid kasutades odavaid hostinguteenuseid ei ole see võimalik - võtit tuleb hoida failisüsteemis, ning võtmefailile peavad olema minimaalsed ligipääsuõigused.&lt;br /&gt;
&lt;br /&gt;
Skeem on sarnane JSON Web Token skeemile ([https://tools.ietf.org/html/rfc7519 RFC 7519])&lt;br /&gt;
&lt;br /&gt;
Kasutaja loomisel saadab server kasutaja sisestatud mailiaadressile kinnituskirja, kus kasutaja peab klikkima lingil, et oma kasutaja kinnitada. Antud lingi jaoks kasutatakse samuti stateless auth mustrit, serialiseeritud ja serveri poolt allkirjastatud andmed on URL-i parameeter.&lt;br /&gt;
&lt;br /&gt;
E-kirja saatmiseks kasutab server Mailgun teenust, kuna ise oma serverist kirju saates on äärmiselt suur tõenäosus, et need jäävad spämmifiltritesse kinni(SenderScore, jne).&lt;br /&gt;
&lt;br /&gt;
=== Arendusmustrid  ===&lt;br /&gt;
*[http://social.technet.microsoft.com/wiki/contents/articles/13536.easy-mvvm-examples-in-extreme-detail.aspx MVVM][https://msdn.microsoft.com/en-us/library/gg405484(v=pandp.40).aspx]&lt;br /&gt;
&lt;br /&gt;
=== Versioonikontroll ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms181237.aspx Team Foundation]&lt;br /&gt;
&lt;br /&gt;
Versioonikontrolli kasutuse käigus ilmnes Visual Studio viga/tegemata töö: NuGet packageid solutionisse lisades pidid teised kasutajad pakettide tööle saamiseks endal kohalikult (solution)\packages\ kataloogi enne buildi ära kustutama. Selle vea paranduseks on tarvis lisada solutioni kataloogi .tfignore fail sisuga&lt;br /&gt;
 \packages&lt;br /&gt;
ja .nuget\NuGet.config fail sisuga:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;configuration&amp;gt;&lt;br /&gt;
   &amp;lt;solution&amp;gt;&lt;br /&gt;
     &amp;lt;add key=&amp;quot;disableSourceControlIntegration&amp;quot; value=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;/solution&amp;gt;&lt;br /&gt;
 &amp;lt;/configuration&amp;gt;&lt;br /&gt;
Seejärel Source code explorer aknast serveri versioon packages kataloogist ära kustutada. Edaspidi ei laeta packages kataloogi versioonikontrolli, ning NuGet automatic restore saab automaatselt vajalikud paketid buildides taastatud.&lt;br /&gt;
&lt;br /&gt;
=== API kirjeldus ja dokumentatsioon ===&lt;br /&gt;
*[https://apiblueprint.org/ Api Blueprint]&lt;br /&gt;
*[https://apiary.io/ Apiary]&lt;br /&gt;
*[https://github.com/apiaryio/dredd/ Dredd]&lt;br /&gt;
&lt;br /&gt;
Api kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
WCF genereerib ilusti ka ise koodi põhjal API dokumentatsiooni. See on plaanis kasutusele võtta hiljem, kui serveri kood on valmis, ning server on avalikult online.&lt;br /&gt;
&lt;br /&gt;
=== Koodi stiilireeglid ===&lt;br /&gt;
*[https://visualstudiogallery.msdn.microsoft.com/cac2a05b-6eb6-4fa2-95b9-1f8d011e6cae StyleCop]&lt;br /&gt;
Otsustasime, et kogu programmi kood, muutujanimed ja koodi kommentaarid on ingliskeelsed.&lt;br /&gt;
Muutujanimedel kasutame järgmiseid reegleid:&lt;br /&gt;
* Klassi privaatmuutujad algavad _ prefiksiga;&lt;br /&gt;
* Klassi avalikud meetodid ja muutujad algavad suurtähega;&lt;br /&gt;
* Kõik muud muutujad algavad väiketähega;&lt;br /&gt;
&lt;br /&gt;
Kõik muutujanimed peavad sisaldama ainult US-ASCII tähti või numbreid ( ^[a-zA-Z0-9]+$ ). Liigendamiseks on suurtähed.&lt;br /&gt;
&lt;br /&gt;
Muutujad peavad võimalikult täpselt kirjeldama oma sisu abstraktsel tasemel. Erandiks on meetodi- ja funktsioonisisesed muutujad millede sisu on kontekstist lihtsalt tuletatav. Näiteks &amp;quot;i&amp;quot; tsükliloendurina jne.&lt;br /&gt;
&lt;br /&gt;
Muutujanimed ei tohi sisaldada tüübiviidet.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Maagilised&amp;quot; muutujad peavad olema deklareeritud konstantidena, ning omama kommentaari. Kõiki selliseid muutujaid peab olema võimalik programmi konfiguratsioonifailist muuta.&lt;br /&gt;
&lt;br /&gt;
=== Litsents ===&lt;br /&gt;
Kogu rakendus avaldatakse GNU General Public License v3.0 all. [http://www.gnu.org/licenses/gpl-3.0.en.html (GPL)]&lt;br /&gt;
Rakenduse dokumentatsioon avaldatakse ITK Wikis, järgides ITK Wiki litsentsitingimusi.&lt;br /&gt;
&lt;br /&gt;
== Avaldatud failid ==&lt;br /&gt;
[https://pilv.mana.ee/public.php?service=files&amp;amp;t=edaa0cf40fb840ba7a620d4c0252b49e Andmebaasi Skeem (DBDesigner) ]&lt;br /&gt;
&lt;br /&gt;
== Arendusprotsess ==&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;8.10.2015&#039;&#039;&#039; - Loodud wiki leht ja lepitud kokku esimene kohtumine idee leidmiseks ja algseks analüüsiks.&lt;br /&gt;
*&#039;&#039;&#039;19.10.2015&#039;&#039;&#039; - Esimene kohtumine. Leitud idee rakenduse loomiseks, määratud rollid esimeseks analüüsietapiks.&lt;br /&gt;
*&#039;&#039;&#039;1.11.2015&#039;&#039;&#039; - Teine kohtumine. Valmis analüüs.&lt;br /&gt;
*&#039;&#039;&#039;6.11.2015&#039;&#039;&#039; - Lisatud retsensioon meeskonnale Premium.&lt;br /&gt;
*&#039;&#039;&#039;11.11.2015&#039;&#039;&#039; - Esimene tõmmis kasutajaliidesest TFS-is&lt;br /&gt;
*&#039;&#039;&#039;12.11.2015&#039;&#039;&#039; - Loodud esialgne API kirjeldus, vajab veel täiendamist arenduse käigus&lt;br /&gt;
*&#039;&#039;&#039;15.11.2015&#039;&#039;&#039; - Loodud kliendi kohaliku andmebaasi skeem&lt;br /&gt;
*&#039;&#039;&#039;17.11.2015&#039;&#039;&#039; - Kolmas kohtumine, lepitud kokku ajad mil koos koodi kirjutada. Ühtlasi loodud rakenduse kihtide skeem.&lt;br /&gt;
*&#039;&#039;&#039;21.11.2015&#039;&#039;&#039; - Koos koodi kirjutatud pisut. Kasutajaliides hakkas asju tegema, API server vastab käskudele.&lt;br /&gt;
*&#039;&#039;&#039;28.11.2015&#039;&#039;&#039; - Algselt MSSQL+EF kliendi DAL migreeritud SQLite+Dapper lahendusele.&lt;br /&gt;
*&#039;&#039;&#039;30.11.2015&#039;&#039;&#039; - Rakendust esitletud C# praktikumis.&lt;br /&gt;
*&#039;&#039;&#039;31.11.2015&#039;&#039;&#039; - Neljas kohtumine, lepitud kokku ülesannete jaotus ja arenduskava järgmiseks nädalaks.&lt;br /&gt;
*&#039;&#039;&#039;04.12.2015&#039;&#039;&#039; - Konsultatsioon õppejõuga.&lt;br /&gt;
*&#039;&#039;&#039;10-11.12.2015&#039;&#039;&#039; - Viies kohtumine ja rakenduse arendamine.&lt;br /&gt;
*&#039;&#039;&#039;11.12.2015&#039;&#039;&#039; - Prototüübi lisamine Wiki lehele.&lt;br /&gt;
&lt;br /&gt;
== Lisad ==&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=XTgFtxHhCQ0]&lt;br /&gt;
&lt;br /&gt;
== Prototüüp ==&lt;br /&gt;
Prototüüp peab võimaldama kasutajal sisestada taski, siduda see ainega ja vajadusel grupiga ning lisada lubatud atribuudid. Lisatud taske kuvatakse detailvaates (selleks tuleb vajutada taski nimetusele).&lt;br /&gt;
Aplikatsiooni prototüüp .zip faili saab alla laadida siit[https://pilv.mana.ee/public.php?service=files&amp;amp;t=578d80969704c7be250b10406877ca74&amp;amp;path=%2FAVE&amp;amp;files=AVE_Application_proto20151211.zip&amp;amp;download]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kliendi prototüübi funktsionaalsus:&#039;&#039;&#039;&lt;br /&gt;
* Kasutaja saab sisestada taski kirjeldust (taski) koos esitamise tähtajaga oma kalendrisse;&lt;br /&gt;
* Kasutaja saab taski kirjeldusena märkida:&lt;br /&gt;
** Task&#039;i täitmise tähtaja;&lt;br /&gt;
** Taskiga seotud õppeaine ettantud nimekirjast;&lt;br /&gt;
** Taskiga seotud grupi;&lt;br /&gt;
** soovi korral kommentaariväljale lisainfot, viidet õppematerjalidele jne.&lt;br /&gt;
* Kalendrivaates kuvatakse kuupäeva järgi sorteeritud taskid, kuid nende kuvamine etteantud vormidesse veel realiseerimisel - antud funktsionaalsus ei ole prototüübi jaoks vajalik;&lt;br /&gt;
* Vajutades taski nimetusele tehakse päring lokaalsesse baasi ning kuvatakse taski detailandmed (andmete muutmise funktsioon .DAL tasandil veel tealiseerimata).&lt;br /&gt;
* Rakendus töötab offline režiimis. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Andmebaas&#039;&#039;&#039;&lt;br /&gt;
- by default asub sqlite andmebaas failissüsteemis %appdata%\AVE\db.sqlite3 . Seda asukohta on võimalik programmi konfiguratsioonist muuta, kuid %AppData% kasutamine võimaldab 1) Iga Windowsi kasutaja jaoks oma personaalse andmebaasi loomist. 2) Teistel kasutajatel pole ligipääsu andmebaasifailile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Serveri&#039;&#039;&#039; poolelt on realiseeritud API, mille kirjeldus asub aadressil [http://docs.ave.apiary.io/ http://docs.ave.apiary.io/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Senine tööjaotus&#039;&#039;&#039;&lt;br /&gt;
* Kärt Palm - BLL (BO ja Service) ja praeguseks oluliselt muudetud DAL (esialgu realiseeritud DAL Entity frameworki&#039;l sai muudetud, et tagada SQlite tugi);&lt;br /&gt;
* Karina Egipt - View, ViewModel;&lt;br /&gt;
* Silver Saks - Lokaalne andmebaas, Server;&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=96128</id>
		<title>Meeskond: Spooky Scary Skeletons</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Spooky_Scary_Skeletons&amp;diff=96128"/>
		<updated>2015-11-01T21:01:24Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: /* Analüüs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
== Meeskond ja rollid ==&lt;br /&gt;
*&#039;&#039;&#039;Kärt Palm&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Karina Egipt&#039;&#039;&#039; - Projektijuht&lt;br /&gt;
*&#039;&#039;&#039;Erika Ehmann&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;Silver Saks&#039;&#039;&#039; - Wiki pidaja&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
TODO list kooli õppeainete tarvis. Võimaldab märkida kalendrisse tähtaegu, mis on seotud õppeainega ja lisada nende kohta vajalikku infot(eeldatav ajakulu, ülesande maht, õppematerjalid, jne). Offline funktsionaalsus kohaliku andmebaasiga, mis replikeeritakse serverisse(kasutaja soovil). Online funktsionaalsus mis võimaldab &amp;quot;subscribeda&amp;quot; kas teatud õppeainesse, või gruppi. Sellisel juhul ilmuvad kalendrisse ka teiste antud grupis olevate kasutajate lisatud ülesanded, ning info nende kohta.&lt;br /&gt;
&lt;br /&gt;
== Analüüs ==&lt;br /&gt;
=== Rakenduse kirjeldus ===&lt;br /&gt;
Rakenduse eesmärgiks on hõlbustada kodutööde planeerimist ja tähtaegade järgimist. Rakendusse saab lisada kodutööde, testide ja eksamite tähtaegu. Sisestatud töid nimetame taskideks. Taskid võivad omakorda sisaldada muud antud ülesandega seotud infot (alamtähtajad, kommentaarid jne).&lt;br /&gt;
&lt;br /&gt;
Rakendus on põhiliselt mõeldud IT Kolledži õppeainete tähtaegade märkimiseks. Sellel eesmärgil on tähtaja juurde võimalik märkida õppeaine Info õppeainete kohta tuleb importida kooli õppeinfosüsteemidest&lt;br /&gt;
Rakendusel on kaks töörežiimi: offline ja online. Online režiimi kasutamiseks peab kasutaja looma serverisse konto. Kasutaja saab ära märkida oma kooli(d) ja deklareeritud õppeained. Õppeainetele subscribe’ides saab kasutaja märkida ka oma õppegrupi või õppevormi (näiteks päevaõpe, kaugõpe, õhtuõpe - neid nimetame koondnimetusena “õppeaine versiooniks”). Kasutaja saab luua ka eraldiseisvaid õppetööga seotud või mitteseotud gruppe.&lt;br /&gt;
Online režiimi kasutades pakub rakendus kasutajale ka teiste antud aine deklareerinud kasutajate poolt märgitud tähtaegu ja lisainfot nende kohta. Kasutajale pakutakse automaatselt seda versioon taskist, mis hetkel on teiste kasutajate hulgas kõige populaarsem. Kasutaja võib selle tagasi lükata, kui task teda ei huvita, või võtta vastu mõne muu versiooni taskist. Kasutaja võib teiste lisatud taskile ka ise atribuute lisada, mis juhul neid muudatusi pakutakse ka teistele kasutajatele.&lt;br /&gt;
&lt;br /&gt;
Rakendus koosneb kahest põhilisest osast: klient ja server.&lt;br /&gt;
&lt;br /&gt;
=== Andmebaas ===&lt;br /&gt;
=== Infovahetus ===&lt;br /&gt;
=== Kasutajaliides ===&lt;br /&gt;
=== Kasutajakontode haldus ===&lt;br /&gt;
=== Võimalikud probleemid ===&lt;br /&gt;
==== Spam ====&lt;br /&gt;
&#039;&#039;&#039;Probleemi kirjeldus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Süsteemi võivad oma huvides ära kasutada spämmerid, täites grupi rämpsinfoga.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lahendus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Kasutajakonto loomisel kasutada CAPTCHA-t.&lt;br /&gt;
&lt;br /&gt;
Bayesian spam filter, mis kasutab õppimiseks kasutajate poolt aktsepteeritud/tagasi lükatud muudatusi.&lt;br /&gt;
&lt;br /&gt;
API rate limiting.&lt;br /&gt;
&lt;br /&gt;
==== Privaatsus ====&lt;br /&gt;
&#039;&#039;&#039;Probleemi kirjeldus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Tingimata tuleb kaitsta kasutaja poolt rakenduses privaatseks märgitud infot, ning kasutajakonto ligipääsuinfot. Kasutaja soovil peab olema võimalik rakendusest kõik temaga seotud info eemaldada.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lahendus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Krüpteeritud andmevahetus teenusserveriga(TLS). Replikeerimisel privaatne info eelnevalt krüpteerida(parooli alusel genereerida sümmeetriline krüptovõti ja valida turvaline krüptoalgoritm).&lt;br /&gt;
Kasutaja info eemaldamisel: mida teha teiste kasutajatega kes on antud info juba enda plaani lisanud?&lt;br /&gt;
&lt;br /&gt;
==== Replikatsioonikonfliktid ====&lt;br /&gt;
&#039;&#039;&#039;Probleemi kirjeldus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Offline andmebaasi replikeerides serverisse võib juhul, kui kasutaja kasutab mitut klienti, tekkida ebakõla andmete vahel.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lahendus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Konfliktide tuvastamine, ning kasutaja poolt nende manuaalne lahendamine. Andmebaasi disainides silmas pidada, et ei oleks võimalik duplikaatvõtmete tekkimine.&lt;br /&gt;
&lt;br /&gt;
== Projekti kirjeldus ==&lt;br /&gt;
=== Tehnoloogiad  ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd537609%28v=vs.110%29.aspx Task Parallel Library]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/bb397926.aspx LINQ]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/aa970268%28v=vs.110%29.aspx WPF]&lt;br /&gt;
*[https://www.sqlite.org/ SQLite]&lt;br /&gt;
*[http://www.postgresql.org/ PostgreSQL]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx WCF]&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/dd203052.aspx REST]&lt;br /&gt;
&lt;br /&gt;
=== Arendusmustrid  ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/hh848246.aspx MVVM]&lt;br /&gt;
&lt;br /&gt;
=== Versioonikontroll ===&lt;br /&gt;
*[https://msdn.microsoft.com/en-us/library/ms181237.aspx Team Foundation]&lt;br /&gt;
&lt;br /&gt;
=== Koodi stiilireeglid ===&lt;br /&gt;
*[https://visualstudiogallery.msdn.microsoft.com/cac2a05b-6eb6-4fa2-95b9-1f8d011e6cae StyleCop]&lt;br /&gt;
Otsustasime, et kogu programmi kood, muutujanimed ja koodi kommentaarid on ingliskeelsed.&lt;br /&gt;
Muutujanimedel kasutame järgmiseid reegleid:&lt;br /&gt;
* Klassi privaatmuutujad algavad _ prefiksiga;&lt;br /&gt;
* Klassi avalikud meetodid ja muutujad algavad suurtähega;&lt;br /&gt;
* Kõik muud muutujad algavad väiketähega;&lt;br /&gt;
&lt;br /&gt;
Kõik muutujanimed peavad sisaldama ainult US-ASCII tähti või numbreid ( ^[a-zA-Z0-9]+$ ). Liigendamiseks on suurtähed.&lt;br /&gt;
&lt;br /&gt;
Muutujad peavad võimalikult täpselt kirjeldama oma sisu abstraktsel tasemel. Erandiks on meetodi- ja funktsioonisisesed muutujad millede sisu on kontekstist lihtsalt tuletatav. Näiteks &amp;quot;i&amp;quot; tsükliloendurina jne.&lt;br /&gt;
&lt;br /&gt;
Muutujanimed ei tohi sisaldada tüübiviidet.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Maagilised&amp;quot; muutujad peavad olema deklareeritud konstantidena, ning omama kommentaari. Kõiki antud muutujaid peab olema võimalik programmi konfiguratsioonifailist muuta.&lt;br /&gt;
&lt;br /&gt;
=== Litsents ===&lt;br /&gt;
Kogu rakendus avaldatakse GNU General Public License v3.0 all. [http://www.gnu.org/licenses/gpl-3.0.en.html (GPL)]&lt;br /&gt;
&lt;br /&gt;
== Avaldatud failid ==&lt;br /&gt;
&lt;br /&gt;
== Arendusprotsess ==&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;8.10.2015&#039;&#039;&#039; - Loodud wiki leht ja lepitud kokku esimene kohtumine idee leidmiseks ja algseks analüüsiks.&lt;br /&gt;
*&#039;&#039;&#039;19.10.2015&#039;&#039;&#039; - Esimene kohtumine. Leitud idee rakenduse loomiseks, määratud rollid esimeseks analüüsietapiks.&lt;br /&gt;
*&#039;&#039;&#039;1.11.2015&#039;&#039;&#039; - Teine kohtumine. Valmis analüüs.&lt;br /&gt;
&lt;br /&gt;
== Lisad ==&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=XTgFtxHhCQ0]&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80459</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80459"/>
		<updated>2014-10-26T19:24:08Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
[[Category:Erialatutvustus 2014 kaugõpe]]&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
Nagu nimigi ütleb on &amp;quot;[https://itcollege.ois.ee/subject/view?subject_id=173 Õpingukorraldus ja erialatutvustus]&amp;quot;  õppeaine eesmärk anda oma eriala spetsialistide peetavate loengute kaudu ülevaate tulevasest valdkonnast ning erialast ja selle eripäradest, lühidalt tutvustada õppetöö protsessi, anda praktilisi näpunäiteid ja tutvustada pea piiramatud võimalusi enda täiendavaks arendamiseks ning koputada üliõpilase südametunnistusele eetikakoodeksi tutvustamise, korrektse viitamise meelde tuletamise jms läbi (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). &lt;br /&gt;
&lt;br /&gt;
Järgnevalt toon välja mind enam kõnetanud punktid päevase õppe loengutest.&lt;br /&gt;
&lt;br /&gt;
Esimeses päevase õppe loengus andsid Inga Vau, Margus Ernits, Merle Varendi kokkuvõtliku ülevaate IT Kolledži (EIK) töö- ja õppekorraldusest ning jagasid praktilisi näpunäiteid õppetööga paremini hakkama saamiseks. Kuigi omandan juba teist kõrgharidust, ei jooksnud päevase õppe üliõpilastele suunatud sissejuhatav loeng mööda külge maha. Erinevalt paljudest akadeemilistest ülikoolidest hindab EIK väga üliõpilaste tagasisidet ning arvestab ettepanekutega isegi  õppekavade muutmisel. Kui on tunne, et õpitu ei ole praktikas rakendatav või õppekava halvasti ülesehitatud, siis on võimalus esitada omapoolsed põhjendatud ettepanekud õppekavade muutmiseks (Vau, Ernits, Varendi 27.08.2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]).&lt;br /&gt;
&lt;br /&gt;
Margus Ernits&#039;a üleskutse tegeleda häkkimisega innustas süsteeme sügavuti tundma õppida (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). Tuleb ehitada, järgi proovida ja eksperimenteerida, kusjuures kõik eksperimendid ei peagi õnnestuma. EIK-is tegutsevad klubid annavad võimaluse osalemiseks ka tudengitele, kellel igasugune varasem kogemus puudub. Teoreetiliste teadmiste praktikas rakendamise ja läbi praktika kaudu arenemise olulisust rõhutasid ka teised esinejad (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]; Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]).&lt;br /&gt;
&lt;br /&gt;
Janika Liiv jagas enda kogemust EIK-i õppima asumisel ning andis sellega teistelegi lootust eriala õpingud edukalt läbida, kuigi esmakursuslasel võib esialgu tunduda kõik võõras ja keeruline. Mõnusalt vabas vormis peetud esitlus suunas programmeerimisse suhtuma kui loomingulisse tegevusse, kus kindlasti ei tasu klammerduda aastaid kasutusel olevatesse tehnoloogiatesse. Olen enesearengut alati pidanud väga oluliseks ning kuigi uue süsteemi õppimine esialgu tundub vaevaline, võib tulevikus see senist tööd hoopis oluliselt lihtsustada.  Juurdeõppimise olulisust rõhutas oma esitluses ka Carolyn Fischer (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Puudu ei olnud ka praktilistest nõuannetest nagu mänguline viis valdkonnas tihti kasutavate akronüümide kaardistamiseks ning nendest aru saamiseks, mida kavatsen kohe kindlasti kasutusele võtta. Tulevikus loodavate rakenduste puhul püüan kindlasti lähtuda kasutajast: süsteem peab olema selge ja lihtne, vastasel juhul kaob kasutaval igasugune huvi süsteemi vastu (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). &lt;br /&gt;
&lt;br /&gt;
Eraldi suure teemana rääkis Janika Liiv IT-valdkonnas töötavatest naistest ning neisse suhtumisest (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). Võimalik, et seoses vähese valdkonna kogeumusega ei tunneta hetkel valdkonnas kinnistunud stereotüüpe ning nende mõju. Kuuldu põhjal saab ilmselt väita, et muudatused paremuse suunas on olnud hiljutised, sest esmapilgul tundub, et praegu kaugõppes on mehi ja naisi peaaegu võrdselt. Kuid kuulates lisaks Carolyn Fischer esitlust, tuleb vast nõustuda, et numbrid räägivad enda eest ning ilmselt vajab IKT valdkond naiste seas jõulisemat populariseerimist (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Positiivne oli tõdeda, et loodud kommuunid nagu Techsisters ei olnud siiski suunatud vaid naistele ning ei propageerita  sugude vahelist polariseerumist. Vastasel juhul jõuaksime teisse äärmusesse.&lt;br /&gt;
&lt;br /&gt;
Carolyn Fischer andis ülevaate Skype&#039;s administraatorina töötamisest ning tutvustas ettevõttes kasutatavaid tehnoloogiad nagu automaatne infrastruktuuri haldamiseks kasutatav Chef ning selle eelistest. Jagatud soovitused aitavad kindlasti tulevikus nii mõnegi apsaka tegemata jätta. Kuivõrd administeerimise protsess muutub tulevikus automaatseks,  tuleb edaspidi administaatoritel samuti programeerimist õppida (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]), sama kinnitas ka Margus Ernits (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]).&lt;br /&gt;
&lt;br /&gt;
Nõustun ASA Quality tegevjuhi Kristjan Karmo väitega, et testimine on vahendusrikas tegevus, juhul kui on võimalus testida erinevate klientide lahendusi. Ühtlasi kummutas Kristjan Karmo müüte, mis on seotud testija ametiga. Heal testijal peab olema laiapõhjalised teadmised süsteemist, ärist, klientidest ja elukeskkonnast, kus tulevast süsteemi kasutama hakatakse. Ajaloost toodud näited halvast testimisest andsid hea ülevaate, kui oluline on tegelikult korralik testija ning miks ei tohiks seda eriala alahinnata (Karmo, 02.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43]).&lt;br /&gt;
&lt;br /&gt;
Andres Septer andis kriitilise pilgu läbi kuid ausa ülevaate IT-valdkonna tööturust ning jagas näpunäiteid tulevase tööandja valimisel ning kuidas tõsta tööturul enda konkurentsivõimet. Suuremates firmades on küll suuremad võimalused paremate töövahendite saavutamiseks, kuid esinevad muud riskid ebakompetentsete juhtide näol. Pooldan esineja seisukohta, et kitsas spetsialiseerumine on inimese jaoks demotiveeriv ning lõpuks on vastutus niivõrd jagatud, et keegi otseselt millegi eest ei vastutagi. Küll ei nõustu väidetega, et riigisektoris tööl &amp;quot;vegeteerimine&amp;quot; on tavaline nähtus (Septer 09.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c]) . Paljud riigiettevõtted on viimase kahe aasta jooksul läbi teinud suuremad optimeerimise kuurid, mille tulemusena paljudes kohtades täidavad ühed ja samad inimesed infosüsteemide peakasutajate, IKT projektide juhtide, eelanalüüsi koostajate ning testijate ülesandeid. Sellise koormuse all võib muutuda küsitavaks tulemuste kvaliteet, kuid vegeteerimiseks sellist töökorraldust kindlasti nimetada ei saa. Teisest küljest erand kinnitab reeglit ja ilmselt leidub ka selliseid avalikku sektori asutusi.&lt;br /&gt;
&lt;br /&gt;
Erinevalt eelkõnelejast, tuginedes Eesti IT-sektori väiksusele, tõi Elar Lang oma esitluses välja konkurentsivõime suurendamisel olulist rolli ka koolikaaslastel - tulevikus on nemad soovitajad ja kriitikud (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Veebirakenduste turvalisus puhul on tegu pigem suhtumise küsimusega: kas soovitakse luua kvaliteetset tarkvara, mis kaitseb kasutajaid ja nende andmeid. Tihtipeale loovad turvariski juba kasutajad ise jagades oma informatsiooni avalikes suhtlusvõrgustikes, kasutades ühte ja samu paroole või salvestades paroole ning kasutajanimesid internetilehitsejas. Seda olulisem on jälgida ning piirata informatsiooni kogust, mida endast avalikustatakse ning mitte usaldada oma kasutajainfot paroolidega igale süsteemile (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Kuigi EIK-is on administraatori ning infosüsteemide arendaja õppekavad selgelt eristatavad tuli pea kõikide esinejate esitlusest välja, et piirid ei ole päris nii selged. Nagu varemgi mainitud, siis seoses administeerimise toimingute automatiseerimisega peavad süsteemide administraatorid aina enam omama programmeerimise oskusi ja vastupidi - ka arendajad peavad tundma süsteemi administeerimise poolt tagamaks loodavate süsteemide lihtsamat hallatavust. Arendamise kogemused on olulised ka testija erialal - hästi ehitatud süsteemide testimiseks ja nö &amp;quot;katki tegemiseks&amp;quot; on vajalikud põhjalikud teadmised. Selline tendents on praegustele tudengitele kindlasti eeliseks, kuivõrd peale kooli lõpetamist on tööturul märksa laiemad võimalused. &lt;br /&gt;
&lt;br /&gt;
Kokkuvõtteks, &#039;&#039;Per aspera ad astra&#039;&#039;! Kui tunned, et asi hakkab üle pea kasvama, siis tuleb iseseisvalt (vajadusel küll teistelt abi küsides) panustada praktikasse - lihtsamate programmide kirjutamine, ülesannete lahendamine annab hindamatu kogemuse ja aitab õpitut paremini kinnistada. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (26.10.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž: 18.06.2014 käskkiri nr 3-1/14-131 (26.10.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80458</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80458"/>
		<updated>2014-10-26T19:22:41Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
Nagu nimigi ütleb on &amp;quot;[https://itcollege.ois.ee/subject/view?subject_id=173 Õpingukorraldus ja erialatutvustus]&amp;quot;  õppeaine eesmärk anda oma eriala spetsialistide peetavate loengute kaudu ülevaate tulevasest valdkonnast ning erialast ja selle eripäradest, lühidalt tutvustada õppetöö protsessi, anda praktilisi näpunäiteid ja tutvustada pea piiramatud võimalusi enda täiendavaks arendamiseks ning koputada üliõpilase südametunnistusele eetikakoodeksi tutvustamise, korrektse viitamise meelde tuletamise jms läbi (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). &lt;br /&gt;
&lt;br /&gt;
Järgnevalt toon välja mind enam kõnetanud punktid päevase õppe loengutest.&lt;br /&gt;
&lt;br /&gt;
Esimeses päevase õppe loengus andsid Inga Vau, Margus Ernits, Merle Varendi kokkuvõtliku ülevaate IT Kolledži (EIK) töö- ja õppekorraldusest ning jagasid praktilisi näpunäiteid õppetööga paremini hakkama saamiseks. Kuigi omandan juba teist kõrgharidust, ei jooksnud päevase õppe üliõpilastele suunatud sissejuhatav loeng mööda külge maha. Erinevalt paljudest akadeemilistest ülikoolidest hindab EIK väga üliõpilaste tagasisidet ning arvestab ettepanekutega isegi  õppekavade muutmisel. Kui on tunne, et õpitu ei ole praktikas rakendatav või õppekava halvasti ülesehitatud, siis on võimalus esitada omapoolsed põhjendatud ettepanekud õppekavade muutmiseks (Vau, Ernits, Varendi 27.08.2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]).&lt;br /&gt;
&lt;br /&gt;
Margus Ernits&#039;a üleskutse tegeleda häkkimisega innustas süsteeme sügavuti tundma õppida (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). Tuleb ehitada, järgi proovida ja eksperimenteerida, kusjuures kõik eksperimendid ei peagi õnnestuma. EIK-is tegutsevad klubid annavad võimaluse osalemiseks ka tudengitele, kellel igasugune varasem kogemus puudub. Teoreetiliste teadmiste praktikas rakendamise ja läbi praktika kaudu arenemise olulisust rõhutasid ka teised esinejad (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]; Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]).&lt;br /&gt;
&lt;br /&gt;
Janika Liiv jagas enda kogemust EIK-i õppima asumisel ning andis sellega teistelegi lootust eriala õpingud edukalt läbida, kuigi esmakursuslasel võib esialgu tunduda kõik võõras ja keeruline. Mõnusalt vabas vormis peetud esitlus suunas programmeerimisse suhtuma kui loomingulisse tegevusse, kus kindlasti ei tasu klammerduda aastaid kasutusel olevatesse tehnoloogiatesse. Olen enesearengut alati pidanud väga oluliseks ning kuigi uue süsteemi õppimine esialgu tundub vaevaline, võib tulevikus see senist tööd hoopis oluliselt lihtsustada.  Juurdeõppimise olulisust rõhutas oma esitluses ka Carolyn Fischer (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Puudu ei olnud ka praktilistest nõuannetest nagu mänguline viis valdkonnas tihti kasutavate akronüümide kaardistamiseks ning nendest aru saamiseks, mida kavatsen kohe kindlasti kasutusele võtta. Tulevikus loodavate rakenduste puhul püüan kindlasti lähtuda kasutajast: süsteem peab olema selge ja lihtne, vastasel juhul kaob kasutaval igasugune huvi süsteemi vastu (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). &lt;br /&gt;
&lt;br /&gt;
Eraldi suure teemana rääkis Janika Liiv IT-valdkonnas töötavatest naistest ning neisse suhtumisest (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). Võimalik, et seoses vähese valdkonna kogeumusega ei tunneta hetkel valdkonnas kinnistunud stereotüüpe ning nende mõju. Kuuldu põhjal saab ilmselt väita, et muudatused paremuse suunas on olnud hiljutised, sest esmapilgul tundub, et praegu kaugõppes on mehi ja naisi peaaegu võrdselt. Kuid kuulates lisaks Carolyn Fischer esitlust, tuleb vast nõustuda, et numbrid räägivad enda eest ning ilmselt vajab IKT valdkond naiste seas jõulisemat populariseerimist (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Positiivne oli tõdeda, et loodud kommuunid nagu Techsisters ei olnud siiski suunatud vaid naistele ning ei propageerita  sugude vahelist polariseerumist. Vastasel juhul jõuaksime teisse äärmusesse.&lt;br /&gt;
&lt;br /&gt;
Carolyn Fischer andis ülevaate Skype&#039;s administraatorina töötamisest ning tutvustas ettevõttes kasutatavaid tehnoloogiad nagu automaatne infrastruktuuri haldamiseks kasutatav Chef ning selle eelistest. Jagatud soovitused aitavad kindlasti tulevikus nii mõnegi apsaka tegemata jätta. Kuivõrd administeerimise protsess muutub tulevikus automaatseks,  tuleb edaspidi administaatoritel samuti programeerimist õppida (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]), sama kinnitas ka Margus Ernits (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]).&lt;br /&gt;
&lt;br /&gt;
Nõustun ASA Quality tegevjuhi Kristjan Karmo väitega, et testimine on vahendusrikas tegevus, juhul kui on võimalus testida erinevate klientide lahendusi. Ühtlasi kummutas Kristjan Karmo müüte, mis on seotud testija ametiga. Heal testijal peab olema laiapõhjalised teadmised süsteemist, ärist, klientidest ja elukeskkonnast, kus tulevast süsteemi kasutama hakatakse. Ajaloost toodud näited halvast testimisest andsid hea ülevaate, kui oluline on tegelikult korralik testija ning miks ei tohiks seda eriala alahinnata (Karmo, 02.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43]).&lt;br /&gt;
&lt;br /&gt;
Andres Septer andis kriitilise pilgu läbi kuid ausa ülevaate IT-valdkonna tööturust ning jagas näpunäiteid tulevase tööandja valimisel ning kuidas tõsta tööturul enda konkurentsivõimet. Suuremates firmades on küll suuremad võimalused paremate töövahendite saavutamiseks, kuid esinevad muud riskid ebakompetentsete juhtide näol. Pooldan esineja seisukohta, et kitsas spetsialiseerumine on inimese jaoks demotiveeriv ning lõpuks on vastutus niivõrd jagatud, et keegi otseselt millegi eest ei vastutagi. Küll ei nõustu väidetega, et riigisektoris tööl &amp;quot;vegeteerimine&amp;quot; on tavaline nähtus (Septer 09.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c]) . Paljud riigiettevõtted on viimase kahe aasta jooksul läbi teinud suuremad optimeerimise kuurid, mille tulemusena paljudes kohtades täidavad ühed ja samad inimesed infosüsteemide peakasutajate, IKT projektide juhtide, eelanalüüsi koostajate ning testijate ülesandeid. Sellise koormuse all võib muutuda küsitavaks tulemuste kvaliteet, kuid vegeteerimiseks sellist töökorraldust kindlasti nimetada ei saa. Teisest küljest erand kinnitab reeglit ja ilmselt leidub ka selliseid avalikku sektori asutusi.&lt;br /&gt;
&lt;br /&gt;
Erinevalt eelkõnelejast, tuginedes Eesti IT-sektori väiksusele, tõi Elar Lang oma esitluses välja konkurentsivõime suurendamisel olulist rolli ka koolikaaslastel - tulevikus on nemad soovitajad ja kriitikud (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Veebirakenduste turvalisus puhul on tegu pigem suhtumise küsimusega: kas soovitakse luua kvaliteetset tarkvara, mis kaitseb kasutajaid ja nende andmeid. Tihtipeale loovad turvariski juba kasutajad ise jagades oma informatsiooni avalikes suhtlusvõrgustikes, kasutades ühte ja samu paroole või salvestades paroole ning kasutajanimesid internetilehitsejas. Seda olulisem on jälgida ning piirata informatsiooni kogust, mida endast avalikustatakse ning mitte usaldada oma kasutajainfot paroolidega igale süsteemile (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Kuigi EIK-is on administraatori ning infosüsteemide arendaja õppekavad selgelt eristatavad tuli pea kõikide esinejate esitlusest välja, et piirid ei ole päris nii selged. Nagu varemgi mainitud, siis seoses administeerimise toimingute automatiseerimisega peavad süsteemide administraatorid aina enam omama programmeerimise oskusi ja vastupidi - ka arendajad peavad tundma süsteemi administeerimise poolt tagamaks loodavate süsteemide lihtsamat hallatavust. Arendamise kogemused on olulised ka testija erialal - hästi ehitatud süsteemide testimiseks ja nö &amp;quot;katki tegemiseks&amp;quot; on vajalikud põhjalikud teadmised. Selline tendents on praegustele tudengitele kindlasti eeliseks, kuivõrd peale kooli lõpetamist on tööturul märksa laiemad võimalused. &lt;br /&gt;
&lt;br /&gt;
Kokkuvõtteks, &#039;&#039;Per aspera ad astra&#039;&#039;! Kui tunned, et asi hakkab üle pea kasvama, siis tuleb iseseisvalt (vajadusel küll teistelt abi küsides) panustada praktikasse - lihtsamate programmide kirjutamine, ülesannete lahendamine annab hindamatu kogemuse ja aitab õpitut paremini kinnistada. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (26.10.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž: 18.06.2014 käskkiri nr 3-1/14-131 (26.10.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80457</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80457"/>
		<updated>2014-10-26T19:19:46Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
Nagu nimigi ütleb on &amp;quot;[https://itcollege.ois.ee/subject/view?subject_id=173 Õpingukorraldus ja erialatutvustus]&amp;quot;  õppeaine eesmärk anda oma eriala spetsialistide peetavate loengute kaudu ülevaate tulevasest valdkonnast ning erialast ja selle eripäradest, lühidalt tutvustada õppetöö protsessi, anda praktilisi näpunäiteid ja tutvustada pea piiramatud võimalusi enda täiendavaks arendamiseks ning koputada üliõpilase südametunnistusele eetikakoodeksi tutvustamise, korrektse viitamise meelde tuletamise jms läbi (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). &lt;br /&gt;
&lt;br /&gt;
Järgnevalt toon välja mind enam kõnetanud punktid päevase õppe loengutest.&lt;br /&gt;
&lt;br /&gt;
Esimeses päevase õppe loengus andsid Inga Vau, Margus Ernits, Merle Varendi kokkuvõtliku ülevaate IT Kolledži (EIK) töö- ja õppekorraldusest ning jagasid praktilisi näpunäiteid õppetööga paremini hakkama saamiseks. Kuigi omandan juba teist kõrgharidust, ei jooksnud päevase õppe üliõpilastele suunatud sissejuhatav loeng mööda külge maha. Erinevalt paljudest akadeemilistest ülikoolidest hindab EIK väga üliõpilaste tagasisidet ning arvestab ettepanekutega isegi  õppekavade muutmisel. Kui on tunne, et õpitu ei ole praktikas rakendatav või õppekava halvasti ülesehitatud, siis on võimalus esitada omapoolsed põhjendatud ettepanekud õppekavade muutmiseks (Vau, Ernits, Varendi 27.08.2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]).&lt;br /&gt;
&lt;br /&gt;
Margus Ernits&#039;a üleskutse tegeleda häkkimisega innustas süsteeme sügavuti tundma õppida (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). Tuleb ehitada, järgi proovida ja eksperimenteerida, kusjuures kõik eksperimendid ei peagi õnnestuma. EIK-is tegutsevad klubid annavad võimaluse osalemiseks ka tudengitele, kellel igasugune varasem kogemus puudub. Teoreetiliste teadmiste praktikas rakendamise ja läbi praktika kaudu arenemise olulisust rõhutasid ka teised esinejad (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]; Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]).&lt;br /&gt;
&lt;br /&gt;
Janika Liiv jagas enda kogemust EIK-i õppima asumisel ning andis sellega teistelegi lootust eriala õpingud edukalt läbida, kuigi esmakursuslasel võib esialgu tunduda kõik võõras ja keeruline. Mõnusalt vabas vormis peetud esitlus suunas programmeerimisse suhtuma kui loomingulisse tegevusse, kus kindlasti ei tasu klammerduda aastaid kasutusel olevatesse tehnoloogiatesse. Olen enesearengut alati pidanud väga oluliseks ning kuigi uue süsteemi õppimine esialgu tundub vaevaline, võib tulevikus see senist tööd hoopis oluliselt lihtsustada.  Juurdeõppimise olulisust rõhutas oma esitluses ka Carolyn Fischer (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Puudu ei olnud ka praktilistest nõuannetest nagu mänguline viis valdkonnas tihti kasutavate akronüümide kaardistamiseks ning nendest aru saamiseks, mida kavatsen kohe kindlasti kasutusele võtta. Tulevikus loodavate rakenduste puhul püüan kindlasti lähtuda kasutajast: süsteem peab olema selge ja lihtne, vastasel juhul kaob kasutaval igasugune huvi süsteemi vastu (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). &lt;br /&gt;
&lt;br /&gt;
Eraldi suure teemana rääkis Janika Liiv IT-valdkonnas töötavatest naistest ning neisse suhtumisest (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). Võimalik, et seoses vähese valdkonna kogeumusega ei tunneta hetkel valdkonnas kinnistunud stereotüüpe ning nende mõju. Kuuldu põhjal saab ilmselt väita, et muudatused paremuse suunas on olnud hiljutised, sest esmapilgul tundub, et praegu kaugõppes on mehi ja naisi peaaegu võrdselt. Kuid kuulates lisaks Carolyn Fischer esitlust, tuleb vast nõustuda, et numbrid räägivad enda eest ning ilmselt vajab IKT valdkond naiste seas jõulisemat populariseerimist (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Positiivne oli tõdeda, et loodud kommuunid nagu Techsisters ei olnud siiski suunatud vaid naistele ning ei propageerita  sugude vahelist polariseerumist. Vastasel juhul jõuaksime teisse äärmusesse.&lt;br /&gt;
&lt;br /&gt;
Carolyn Fischer andis ülevaate Skype&#039;s administraatorina töötamisest ning tutvustas ettevõttes kasutatavaid tehnoloogiad nagu automaatne infrastruktuuri haldamiseks kasutatav Chef ning selle eelistest. Jagatud soovitused aitavad kindlasti tulevikus nii mõnegi apsaka tegemata jätta. Kuivõrd administeerimise protsess muutub tulevikus automaatseks,  tuleb edaspidi administaatoritel samuti programeerimist õppida (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]), sama kinnitas ka Margus Ernits (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]).&lt;br /&gt;
&lt;br /&gt;
Nõustun ASA Quality tegevjuhi Kristjan Karmo väitega, et testimine on vahendusrikas tegevus, juhul kui on võimalus testida erinevate klientide lahendusi. Ühtlasi kummutas Kristjan Karmo müüte, mis on seotud testija ametiga. Heal testijal peab olema laiapõhjalised teadmised süsteemist, ärist, klientidest ja elukeskkonnast, kus tulevast süsteemi kasutama hakatakse. Ajaloost toodud näited halvast testimisest andsid hea ülevaate, kui oluline on tegelikult korralik testija ning miks ei tohiks seda eriala alahinnata (Karmo, 02.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43]).&lt;br /&gt;
&lt;br /&gt;
Andres Septer andis kriitilise pilgu läbi kuid ausa ülevaate IT-valdkonna tööturust ning jagas näpunäiteid tulevase tööandja valimisel ning kuidas tõsta tööturul enda konkurentsivõimet. Suuremates firmades on küll suuremad võimalused paremate töövahendite saavutamiseks, kuid esinevad muud riskid ebakompetentsete juhtide näol. Pooldan esineja seisukohta, et kitsas spetsialiseerumine on inimese jaoks demotiveeriv ning lõpuks on vastutus niivõrd jagatud, et keegi otseselt millegi eest ei vastutagi. Küll ei nõustu väidetega, et riigisektoris tööl &amp;quot;vegeteerimine&amp;quot; on tavaline nähtus (Septer 09.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c]) . Paljud riigiettevõtted on viimase kahe aasta jooksul läbi teinud suuremad optimeerimise kuurid, mille tulemusena paljudes kohtades täidavad ühed ja samad inimesed infosüsteemide peakasutajate, IKT projektide juhtide, eelanalüüsi koostajate ning testijate ülesandeid. Sellise koormuse all võib muutuda küsitavaks tulemuste kvaliteet, kuid vegeteerimiseks sellist töökorraldust kindlasti nimetada ei saa. Teisest küljest erand kinnitab reeglit ja ilmselt leidub ka selliseid avalikku sektori asutusi.&lt;br /&gt;
&lt;br /&gt;
Erinevalt eelkõnelejast, tuginedes Eesti IT-sektori väiksusele, tõi Elar Lang oma esitluses välja konkurentsivõime suurendamisel olulist rolli ka koolikaaslastel - tulevikus on nemad soovitajad ja kriitikud (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Veebirakenduste turvalisus puhul on tegu pigem suhtumise küsimusega: kas soovitakse luua kvaliteetset tarkvara, mis kaitseb kasutajaid ja nende andmeid. Tihtipeale loovad turvariski juba kasutajad ise jagades oma informatsiooni avalikes suhtlusvõrgustikes, kasutades ühte ja samu paroole või salvestades paroole ning kasutajanimesid internetilehitsejas. Seda olulisem on jälgida ning piirata informatsiooni kogust, mida endast avalikustatakse ning mitte usaldada oma kasutajainfot paroolidega igale süsteemile (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Kuigi EIK-is on administraatori ning infosüsteemide arendaja õppekavad selgelt eristatavad tuli pea kõikide esinejate esitlusest välja, et piirid ei ole päris nii selged. Nagu varemgi mainitud, siis seoses administeerimise toimingute automatiseerimisega peavad süsteemide administraatorid aina enam omama programmeerimise oskusi ja vastupidi - ka arendajad peavad tundma süsteemi administeerimise poolt tagamaks loodavate süsteemide lihtsamat hallatavust. Arendamise kogemused on olulised ka testija erialal - hästi ehitatud süsteemide testimiseks ja nö &amp;quot;katki tegemiseks&amp;quot; on vajalikud põhjalikud teadmised. Selline tendents on praegustele tudengitele kindlasti eeliseks, kuivõrd peale kooli lõpetamist on tööturul märksa laiemad võimalused. &lt;br /&gt;
&lt;br /&gt;
Kokkuvõtteks, Per aspera ad astra! Kui tunned, et asi hakkab üle pea kasvama, siis tuleb iseseisvalt (vajadusel küll teistelt abi küsides) panustada praktikasse - lihtsamate programmide kirjutamine, ülesannete lahendamine annab hindamatu kogemuse ja aitab õpitut paremini kinnistada. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (26.10.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž: 18.06.2014 käskkiri nr 3-1/14-131 (26.10.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80456</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80456"/>
		<updated>2014-10-26T19:16:59Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
Nagu nimigi ütleb on &amp;quot;[https://itcollege.ois.ee/subject/view?subject_id=173 Õpingukorraldus ja erialatutvustus]&amp;quot;  õppeaine eesmärk anda oma eriala spetsialistide peetavate loengute kaudu ülevaate tulevasest valdkonnast ning erialast ja selle eripäradest, lühidalt tutvustada õppetöö protsessi, anda praktilisi näpunäiteid ja tutvustada pea piiramatud võimalusi enda täiendavaks arendamiseks ning koputada üliõpilase südametunnistusele eetikakoodeksi tutvustamise, korrektse viitamise meelde tuletamise jms läbi (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). &lt;br /&gt;
&lt;br /&gt;
Järgnevalt toon välja mind enam kõnetanud punktid päevase õppe loengutest.&lt;br /&gt;
&lt;br /&gt;
Esimeses päevase õppe loengus andsid Inga Vau, Margus Ernits, Merle Varendi kokkuvõtliku ülevaate IT Kolledži (EIK) töö- ja õppekorraldusest ning jagasid praktilisi näpunäiteid õppetööga paremini hakkama saamiseks. Kuigi omandan juba teist kõrgharidust, ei jooksnud päevase õppe üliõpilastele suunatud sissejuhatav loeng mööda külge maha. Erinevalt paljudest akadeemilistest ülikoolidest hindab EIK väga üliõpilaste tagasisidet ning arvestab ettepanekutega isegi  õppekavade muutmisel. Kui on tunne, et õpitu ei ole praktikas rakendatav või õppekava halvasti ülesehitatud, siis on võimalus esitada omapoolsed põhjendatud ettepanekud õppekavade muutmiseks (Vau, Ernits, Varendi 27.08.2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]).&lt;br /&gt;
&lt;br /&gt;
Margus Ernits&#039;a üleskutse tegeleda häkkimisega innustas süsteeme sügavuti tundma õppida (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). Tuleb ehitada, järgi proovida ja eksperimenteerida, kusjuures kõik eksperimendid ei peagi õnnestuma. EIK-is tegutsevad klubid annavad võimaluse osalemiseks ka tudengitele, kellel igasugune varasem kogemus puudub. Teoreetiliste teadmiste praktikas rakendamise ja läbi praktika kaudu arenemise olulisust rõhutasid ka teised esinejad (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]; Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]).&lt;br /&gt;
&lt;br /&gt;
Janika Liiv jagas enda kogemust EIK-i õppima asumisel ning andis sellega teistelegi lootust eriala õpingud edukalt läbida, kuigi esmakursuslasel võib esialgu tunduda kõik võõras ja keeruline. Mõnusalt vabas vormis peetud esitlus suunas programmeerimisse suhtuma kui loomingulisse tegevusse, kus kindlasti ei tasu klammerduda aastaid kasutusel olevatesse tehnoloogiatesse. Olen enesearengut alati pidanud väga oluliseks ning kuigi uue süsteemi õppimine esialgu tundub vaevaline, võib tulevikus see senist tööd hoopis oluliselt lihtsustada.  Juurdeõppimise olulisust rõhutas oma esitluses ka Carolyn Fischer (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Puudu ei olnud ka praktilistest nõuannetest nagu mänguline viis valdkonnas tihti kasutavate akronüümide kaardistamiseks ning nendest aru saamiseks, mida kavatsen kohe kindlasti kasutusele võtta. Tulevikus loodavate rakenduste puhul püüan kindlasti lähtuda kasutajast: süsteem peab olema selge ja lihtne, vastasel juhul kaob kasutaval igasugune huvi süsteemi vastu (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). &lt;br /&gt;
&lt;br /&gt;
Eraldi suure teemana rääkis Janika Liiv IT-valdkonnas töötavatest naistest ning neisse suhtumisest (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). Võimalik, et seoses vähese valdkonna kogeuu musega ei tunneta hetkel valdkonnas kinnistunud stereotüüpe ning nende mõju. Kuuldu põhjal saab ilmselt väita, et muudatused paremuse suunas on olnud hiljutised, sest esmapilgul tundub, et praegu kaugõppes on mehi ja naisi peaaegu võrdselt. Kuid kuulates lisaks Carolyn Fischer esitlust, tuleb vast nõustuda, et numbrid räägivad enda eest ning ilmselt vajab IKT valdkond naiste seas jõulisemat populariseerimist (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Positiivne oli tõdeda, et loodud kommuunid nagu Techsisters ei olnud siiski suunatud vaid naistele ning ei propageerita  sugude vahelist polariseerumist. Vastasel juhul jõuaksime teisse äärmusesse.&lt;br /&gt;
&lt;br /&gt;
Carolyn Fischer andis ülevaate Skype&#039;s administraatorina töötamisest ning tutvustas ettevõttes kasutatavaid tehnoloogiad nagu automaatne infrastruktuuri haldamiseks kasutatav Chef ning selle eelistest. Jagatud soovitused aitavad kindlasti tulevikus nii mõnegi apsaka tegemata jätta. Kuivõrd administeerimise protsess muutub tulevikus automaatseks,  tuleb edaspidi administaatoritel samuti programeerimist õppida (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]), sama kinnitas ka Margus Ernits (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]).&lt;br /&gt;
&lt;br /&gt;
Nõustun ASA Quality tegevjuhi Kristjan Karmo väitega, et testimine on vahendusrikas tegevus, juhul kui on võimalus testida erinevate klientide lahendusi. Ühtlasi kummutas Kristjan Karmo müüte, mis on seotud testija ametiga. Heal testijal peab olema laiapõhjalised teadmised süsteemist, ärist, klientidest ja elukeskkonnast, kus tulevast süsteemi kasutama hakatakse. Ajaloost toodud näited halvast testimisest andsid hea ülevaate, kui oluline on tegelikult korralik testija ning miks ei tohiks seda eriala alahinnata (Karmo, 02.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43]).&lt;br /&gt;
&lt;br /&gt;
Andres Septer andis kriitilise pilgu läbi kuid ausa ülevaate IT-valdkonna tööturust ning jagas näpunäiteid tulevase tööandja valimisel ning kuidas tõsta tööturul enda konkurentsivõimet. Suuremates firmades on küll suuremad võimalused paremate töövahendite saavutamiseks, kuid esinevad muud riskid ebakompetentsete juhtide näol. Pooldan esineja seisukohta, et kitsas spetsialiseerumine on inimese jaoks demotiveeriv ning lõpuks on vastutus niivõrd jagatud, et keegi otseselt millegi eest ei vastutagi. Küll ei nõustu väidetega, et riigisektoris tööl &amp;quot;vegeteerimine&amp;quot; on tavaline nähtus (Septer 09.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c]) . Paljud riigiettevõtted on viimase kahe aasta jooksul läbi teinud suuremad optimeerimise kuurid, mille tulemusena paljudes kohtades täidavad ühed ja samad inimesed infosüsteemide peakasutajate, IKT projektide juhtide, eelanalüüsi koostajate ning testijate ülesandeid. Sellise koormuse all võib muutuda küsitavaks tulemuste kvaliteet, kuid vegeteerimiseks sellist töökorraldust kindlasti nimetada ei saa. Teisest küljest erand kinnitab reeglit ja ilmselt leidub ka selliseid avalikku sektori asutusi.&lt;br /&gt;
&lt;br /&gt;
Erinevalt eelkõnelejast, tuginedes Eesti IT-sektori väiksusele, tõi Elar Lang oma esitluses välja konkurentsivõime suurendamisel olulist rolli ka koolikaaslastel - tulevikus on nemad soovitajad ja kriitikud (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Veebirakenduste turvalisus puhul on tegu pigem suhtumise küsimusega: kas soovitakse luua kvaliteetset tarkvara, mis kaitseb kasutajaid ja nende andmeid. Tihtipeale loovad turvariski juba kasutajad ise jagades oma informatsiooni avalikes suhtlusvõrgustikes, kasutades ühte ja samu paroole või salvestades paroole ning kasutajanimesid internetilehitsejas. Seda olulisem on jälgida ning piirata informatsiooni kogust, mida endast avalikustatakse ning mitte usaldada oma kasutajainfot paroolidega igale süsteemile (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Kuigi EIK-is on administraatori ning infosüsteemide arendaja õppekavad selgelt eristatavad tuli pea kõikide esinejate esitlusest välja, et piirid ei ole päris nii selged. Nagu varemgi mainitud, siis seoses administeerimise toimingute automatiseerimisega peavad süsteemide administraatorid aina enam omama programmeerimise oskusi ja vastupidi - ka arendajad peavad tundma süsteemi administeerimise poolt tagamaks loodavate süsteemide lihtsamat hallatavust. Arendamise kogemused on olulised ka testija erialal - hästi ehitatud süsteemide testimiseks ja nö &amp;quot;katki tegemiseks&amp;quot; on vajalikud põhjalikud teadmised. Selline tendents on praegustele tudengitele kindlasti eeliseks, kuivõrd peale kooli lõpetamist on tööturul märksa laiemad võimalused. &lt;br /&gt;
&lt;br /&gt;
Kokkuvõtteks, Per aspera ad astra! Kui tunned, et asi hakkab üle pea kasvama, siis tuleb iseseisvalt (vajadusel küll teistelt abi küsides) panustada praktikasse - lihtsamate programmide kirjutamine, ülesannete lahendamine annab hindamatu kogemuse ja aitab õpitut paremini kinnistada. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (26.10.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž: 18.06.2014 käskkiri nr 3-1/14-131 (26.10.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80454</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80454"/>
		<updated>2014-10-26T19:14:59Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
Nagu nimigi ütleb on &amp;quot;[https://itcollege.ois.ee/subject/view?subject_id=173 Õpingukorraldus ja erialatutvustus]&amp;quot;  õppeaine eesmärk anda oma eriala spetsialistide peetavate loengute kaudu ülevaate tulevasest valdkonnast ning erialast ja selle eripäradest, lühidalt tutvustada õppetöö protsessi, anda praktilisi näpunäiteid ja tutvustada pea piiramatud võimalusi enda täiendavaks arendamiseks ning koputada üliõpilase südametunnistusele eetikakoodeksi tutvustamise, korrektse viitamise meelde tuletamise jms läbi (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). &lt;br /&gt;
&lt;br /&gt;
Järgnevalt toon välja mind enam kõnetanud punktid päevase õppe loengutest.&lt;br /&gt;
&lt;br /&gt;
Esimeses päevase õppe loengus andsid Inga Vau, Margus Ernits, Merle Varendi kokkuvõtliku ülevaate IT Kolledži töö- ja õppekorraldusest ning jagasid praktilisi näpunäiteid õppetööga paremini hakkama saamiseks. Kuigi omandan juba teist kõrgharidust, ei jooksnud päevase õppe üliõpilastele suunatud sissejuhatav loeng mööda külge maha. Erinevalt paljudest akadeemilistest ülikoolidest hindab EIK väga üliõpilaste tagasisidet ning arvestab ettepanekutega isegi  õppekavade muutmisel. Kui on tunne, et õpitu ei ole praktikas rakendatav või õppekava halvasti ülesehitatud, siis on võimalus esitada omapoolsed põhjendatud ettepanekud õppekavade muutmiseks (Vau, Ernits, Varendi 27.08.2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]).&lt;br /&gt;
&lt;br /&gt;
Margus Ernits&#039;a üleskutse tegeleda häkkimisega innustas süsteeme sügavuti tundma õppida (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). Tuleb ehitada, järgi proovida ja eksperimenteerida, kusjuures kõik eksperimendid ei peagi õnnestuma. EIK-is tegutsevad klubid annavad võimaluse osalemiseks ka tudengitele, kellel igasugune varasem kogemus puudub. Teoreetiliste teadmiste praktikas rakendamise ja läbi praktika kaudu arenemise olulisust rõhutasid ka teised esinejad (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]; Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]).&lt;br /&gt;
&lt;br /&gt;
Janika Liiv jagas enda kogemust EIK-i õppima asumisel ning andis sellega teistelegi lootust eriala õpingud edukalt läbida, kuigi esmakursuslasel võib esialgu tunduda kõik võõras ja keeruline. Mõnusalt vabas vormis peetud esitlus suunas programmeerimisse suhtuma kui loomingulisse tegevusse, kus kindlasti ei tasu klammerduda aastaid kasutusel olevatesse tehnoloogiatesse. Olen enesearengut alati pidanud väga oluliseks ning kuigi uue süsteemi õppimine esialgu tundub vaevaline, võib tulevikus see senist tööd hoopis oluliselt lihtsustada.  Juurdeõppimise olulisust rõhutas oma esitluses ka Carolyn Fischer (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Puudu ei olnud ka praktilistest nõuannetest nagu mänguline viis valdkonnas tihti kasutavate akronüümide kaardistamiseks ning nendest aru saamiseks, mida kavatsen kohe kindlasti kasutusele võtta. Tulevikus loodavate rakenduste puhul püüan kindlasti lähtuda kasutajast: süsteem peab olema selge ja lihtne, vastasel juhul kaob kasutaval igasugune huvi süsteemi vastu (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). &lt;br /&gt;
&lt;br /&gt;
Eraldi suure teemana rääkis Janika Liiv IT-valdkonnas töötavatest naistest ning neisse suhtumisest (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). Võimalik, et seoses vähese valdkonna kogeuu musega ei tunneta hetkel valdkonnas kinnistunud stereotüüpe ning nende mõju. Kuuldu põhjal saab ilmselt väita, et muudatused paremuse suunas on olnud hiljutised, sest esmapilgul tundub, et praegu kaugõppes on mehi ja naisi peaaegu võrdselt. Kuid kuulates lisaks Carolyn Fischer esitlust, tuleb vast nõustuda, et numbrid räägivad enda eest ning ilmselt vajab IKT valdkond naiste seas jõulisemat populariseerimist (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Positiivne oli tõdeda, et loodud kommuunid nagu Techsisters ei olnud siiski suunatud vaid naistele ning ei propageerita  sugude vahelist polariseerumist. Vastasel juhul jõuaksime teisse äärmusesse.&lt;br /&gt;
&lt;br /&gt;
Carolyn Fischer andis ülevaate Skype&#039;s administraatorina töötamisest ning tutvustas ettevõttes kasutatavaid tehnoloogiad nagu automaatne infrastruktuuri haldamiseks kasutatav Chef ning selle eelistest. Jagatud soovitused aitavad kindlasti tulevikus nii mõnegi apsaka tegemata jätta. Kuivõrd administeerimise protsess muutub tulevikus automaatseks,  tuleb edaspidi administaatoritel samuti programeerimist õppida (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]), sama kinnitas ka Margus Ernits (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]).&lt;br /&gt;
&lt;br /&gt;
Nõustun ASA Quality tegevjuhi Kristjan Karmo väitega, et testimine on vahendusrikas tegevus, juhul kui on võimalus testida erinevate klientide lahendusi. Ühtlasi kummutas Kristjan Karmo müüte, mis on seotud testija ametiga. Heal testijal peab olema laiapõhjalised teadmised süsteemist, ärist, klientidest ja elukeskkonnast, kus tulevast süsteemi kasutama hakatakse. Ajaloost toodud näited halvast testimisest andsid hea ülevaate, kui oluline on tegelikult korralik testija ning miks ei tohiks seda eriala alahinnata (Karmo, 02.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43]).&lt;br /&gt;
&lt;br /&gt;
Andres Septer andis kriitilise pilgu läbi kuid ausa ülevaate IT-valdkonna tööturust ning jagas näpunäiteid tulevase tööandja valimisel ning kuidas tõsta tööturul enda konkurentsivõimet. Suuremates firmades on küll suuremad võimalused paremate töövahendite saavutamiseks, kuid esinevad muud riskid ebakompetentsete juhtide näol. Pooldan esineja seisukohta, et kitsas spetsialiseerumine on inimese jaoks demotiveeriv ning lõpuks on vastutus niivõrd jagatud, et keegi otseselt millegi eest ei vastutagi. Küll ei nõustu väidetega, et riigisektoris tööl &amp;quot;vegeteerimine&amp;quot; on tavaline nähtus (Septer 09.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c]) . Paljud riigiettevõtted on viimase kahe aasta jooksul läbi teinud suuremad optimeerimise kuurid, mille tulemusena paljudes kohtades täidavad ühed ja samad inimesed infosüsteemide peakasutajate, IKT projektide juhtide, eelanalüüsi koostajate ning testijate ülesandeid. Sellise koormuse all võib muutuda küsitavaks tulemuste kvaliteet, kuid vegeteerimiseks sellist töökorraldust kindlasti nimetada ei saa. Teisest küljest erand kinnitab reeglit ja ilmselt leidub ka selliseid avalikku sektori asutusi.&lt;br /&gt;
&lt;br /&gt;
Erinevalt eelkõnelejast, tuginedes Eesti IT-sektori väiksusele, tõi Elar Lang oma esitluses välja konkurentsivõime suurendamisel olulist rolli ka koolikaaslastel - tulevikus on nemad soovitajad ja kriitikud (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Veebirakenduste turvalisus puhul on tegu pigem suhtumise küsimusega: kas soovitakse luua kvaliteetset tarkvara, mis kaitseb kasutajaid ja nende andmeid. Tihtipeale loovad turvariski juba kasutajad ise jagades oma informatsiooni avalikes suhtlusvõrgustikes, kasutades ühte ja samu paroole või salvestades paroole ning kasutajanimesid internetilehitsejas. Seda olulisem on jälgida ning piirata informatsiooni kogust, mida endast avalikustatakse ning mitte usaldada oma kasutajainfot paroolidega igale süsteemile (Lang, 16.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true]).&lt;br /&gt;
&lt;br /&gt;
Kuigi EIK-is on administraatori ning infosüsteemide arendaja õppekavad selgelt eristatavad tuli pea kõikide esinejate esitlusest välja, et piirid ei ole päris nii selged. Nagu varemgi mainitud, siis seoses administeerimise toimingute automatiseerimisega peavad süsteemide administraatorid aina enam omama programmeerimise oskusi ja vastupidi - ka arendajad peavad tundma süsteemi administeerimise poolt tagamaks loodavate süsteemide lihtsamat hallatavust. Arendamise kogemused on olulised ka testija erialal - hästi ehitatud süsteemide testimiseks ja nö &amp;quot;katki tegemiseks&amp;quot; on vajalikud põhjalikud teadmised. Selline tendents on praegustele tudengitele kindlasti eeliseks, kuivõrd peale kooli lõpetamist on tööturul märksa laiemad võimalused. &lt;br /&gt;
&lt;br /&gt;
Kokkuvõtteks, Per aspera ad astra! Kui tunned, et asi hakkab üle pea kasvama, siis tuleb iseseisvalt (vajadusel küll teistelt abi küsides) panustada praktikasse - lihtsamate programmide kirjutamine, ülesannete lahendamine annab hindamatu kogemuse ja aitab õpitut paremini kinnistada. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (26.10.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž: 18.06.2014 käskkiri nr 3-1/14-131 (26.10.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80453</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80453"/>
		<updated>2014-10-26T19:09:02Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
Nagu nimigi ütleb on &amp;quot;[https://itcollege.ois.ee/subject/view?subject_id=173 Õpingukorraldus ja erialatutvustus]&amp;quot;  õppeaine eesmärk anda oma eriala spetsialistide peetavate loengute kaudu ülevaate tulevasest valdkonnast ning erialast ja selle eripäradest, lühidalt tutvustada õppetöö protsessi, anda praktilisi näpunäiteid ja tutvustada pea piiramatud võimalusi enda täiendavaks arendamiseks ning koputada üliõpilase südametunnistusele eetikakoodeksi tutvustamise, korrektse viitamise meelde tuletamise jms läbi (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). &lt;br /&gt;
&lt;br /&gt;
Järgnevalt toon välja mind enam kõnetanud punktid päevase õppe loengutest.&lt;br /&gt;
&lt;br /&gt;
Esimeses päevase õppe loengus andsid Inga Vau, Margus Ernits, Merle Varendi kokkuvõtliku ülevaate IT Kolledži töö- ja õppekorraldusest ning jagasid praktilisi näpunäiteid õppetööga paremini hakkama saamiseks. Kuigi omandan juba teist kõrgharidust, ei jooksnud päevase õppe üliõpilastele suunatud sissejuhatav loeng mööda külge maha. Erinevalt paljudest akadeemilistest ülikoolidest hindab EIK väga üliõpilaste tagasisidet ning arvestab ettepanekutega isegi  õppekavade muutmisel. Kui on tunne, et õpitu ei ole praktikas rakendatav või õppekava halvasti ülesehitatud, siis on võimalus esitada omapoolsed põhjendatud ettepanekud õppekavade muutmiseks (Vau, Ernits, Varendi 27.08.2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]).&lt;br /&gt;
&lt;br /&gt;
Margus Ernits&#039;a üleskutse tegeleda häkkimisega innustas süsteeme sügavuti tundma õppida (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]). Tuleb ehitada, järgi proovida ja eksperimenteerida, kusjuures kõik eksperimendid ei peagi õnnestuma. EIK-is tegutsevad klubid annavad võimaluse osalemiseks ka tudengitele, kellel igasugune varasem kogemus puudub. Teoreetiliste teadmiste praktikas rakendamise ja läbi praktika kaudu arenemise olulisust rõhutasid ka teised esinejad (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]; Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]).&lt;br /&gt;
&lt;br /&gt;
Janika Liiv jagas enda kogemust EIK-i õppima asumisel ning andis sellega teistelegi lootust eriala õpingud edukalt läbida, kuigi esmakursuslasel võib esialgu tunduda kõik võõras ja keeruline. Mõnusalt vabas vormis peetud esitlus suunas programmeerimisse suhtuma kui loomingulisse tegevusse, kus kindlasti ei tasu klammerduda aastaid kasutusel olevatesse tehnoloogiatesse. Olen enesearengut alati pidanud väga oluliseks ning kuigi uue süsteemi õppimine esialgu tundub vaevaline, võib tulevikus see senist tööd hoopis oluliselt lihtsustada.  Juurdeõppimise olulisust rõhutas oma esitluses ka Carolyn Fischer (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Puudu ei olnud ka praktilistest nõuannetest nagu mänguline viis valdkonnas tihti kasutavate akronüümide kaardistamiseks ning nendest aru saamiseks, mida kavatsen kohe kindlasti kasutusele võtta. Tulevikus loodavate rakenduste puhul püüan kindlasti lähtuda kasutajast: süsteem peab olema selge ja lihtne, vastasel juhul kaob kasutaval igasugune huvi süsteemi vastu (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). &lt;br /&gt;
&lt;br /&gt;
Eraldi suure teemana rääkis Janika Liiv IT-valdkonnas töötavatest naistest ning neisse suhtumisest (Liiv, 18.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016]). Võimalik, et seoses vähese valdkonna kogeuu musega ei tunneta hetkel valdkonnas kinnistunud stereotüüpe ning nende mõju. Kuuldu põhjal saab ilmselt väita, et muudatused paremuse suunas on olnud hiljutised, sest esmapilgul tundub, et praegu kaugõppes on mehi ja naisi peaaegu võrdselt. Kuid kuulates lisaks Carolyn Fischer esitlust, tuleb vast nõustuda, et numbrid räägivad enda eest ning ilmselt vajab IKT valdkond naiste seas jõulisemat populariseerimist (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]). Positiivne oli tõdeda, et loodud kommuunid nagu Techsisters ei olnud siiski suunatud vaid naistele ning ei propageerita  sugude vahelist polariseerumist. Vastasel juhul jõuaksime teisse äärmusesse.&lt;br /&gt;
&lt;br /&gt;
Carolyn Fischer andis ülevaate Skype&#039;s administraatorina töötamisest ning tutvustas ettevõttes kasutatavaid tehnoloogiad nagu automaatne infrastruktuuri haldamiseks kasutatav Chef ning selle eelistest. Jagatud soovitused aitavad kindlasti tulevikus nii mõnegi apsaka tegemata jätta. Kuivõrd administeerimise protsess muutub tulevikus automaatseks,  tuleb edaspidi administaatoritel samuti programeerimist õppida (Fischer, 25.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc]), sama kinnitas ka Margus Ernits (Ernits, 04.09.2014[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0]).&lt;br /&gt;
&lt;br /&gt;
Nõustun ASA Quality tegevjuhi Kristjan Karmo väitega, et testimine on vahendusrikas tegevus, juhul kui on võimalus testida erinevate klientide lahendusi. Ühtlasi kummutas Kristjan Karmo müüte, mis on seotud testija ametiga. Heal testijal peab olema laiapõhjalised teadmised süsteemist, ärist, klientidest ja elukeskkonnast, kus tulevast süsteemi kasutama hakatakse. Ajaloost toodud näited halvast testimisest andsid hea ülevaate, kui oluline on tegelikult korralik testija ning miks ei tohiks seda eriala alahinnata (Karmo, 02.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43]).&lt;br /&gt;
&lt;br /&gt;
Andres Septer andis kriitilise pilgu läbi kuid ausa ülevaate IT-valdkonna tööturust ning jagas näpunäiteid tulevase tööandja valimisel ning kuidas tõsta tööturul enda konkurentsivõimet. Suuremates firmades on küll suuremad võimalused paremate töövahendite saavutamiseks, kuid esinevad muud riskid ebakompetentsete juhtide näol. Pooldan esineja seisukohta, et kitsas spetsialiseerumine on inimese jaoks demotiveeriv ning lõpuks on vastutus niivõrd jagatud, et keegi otseselt millegi eest ei vastutagi. Küll ei nõustu väidetega, et riigisektoris tööl &amp;quot;vegeteerimine&amp;quot; on tavaline nähtus (Septer 09.10.2014[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c]) . Paljud riigiettevõtted on viimase kahe aasta jooksul läbi teinud suuremad optimeerimise kuurid, mille tulemusena paljudes kohtades täidavad ühed ja samad inimesed infosüsteemide peakasutajate, IKT projektide juhtide, eelanalüüsi koostajate ning testijate ülesandeid. Sellise koormuse all võib muutuda küsitavaks tulemuste kvaliteet, kuid vegeteerimiseks sellist töökorraldust kindlasti nimetada ei saa. Teisest küljest erand kinnitab reeglit ja ilmselt leidub ka selliseid avalikku sektori asutusi.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (26.10.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž: 18.06.2014 käskkiri nr 3-1/14-131 (26.10.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80444</id>
		<title>User:Kegipt</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Kegipt&amp;diff=80444"/>
		<updated>2014-10-26T17:16:09Z</updated>

		<summary type="html">&lt;p&gt;Kegipt: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Erialatutvustuse aine arvestustöö =&lt;br /&gt;
Autor: &#039;&#039;&#039;Karina Egipt&#039;&#039;&#039;, DK13&lt;br /&gt;
&lt;br /&gt;
Esitatud: 26.10.2014&lt;br /&gt;
&lt;br /&gt;
== Essee ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Õpingukorralduse küsimused ==&lt;br /&gt;
===Küsimus B===&lt;br /&gt;
&lt;br /&gt;
Kukkusid arvestusel läbi. Kaua on võimalik arvestust järele teha? Kellega kokkuleppida, et järelarvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vastavalt kehtivale õppekorralduse eeskirja[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/] punktile 5.4.4 on korduvat arvestust õigus teha ülejärgmise semestri punase joone päevani arvates aine õpetamissemestri lõpust. Korduvarvestuste kuupäevad tuleb kokku leppida õppejõuga ning registreerida kordussooritusele vähemalt kaks tööpäeva enne soorituse toimumist ÕIS-is.&lt;br /&gt;
&lt;br /&gt;
Kokku on võimalik teha kolm katset: üks põhiarvestus ja kaks korduvat arvestust. Korduvad arvestused ei pruugi aset leida samal eksamisesseioonil. Korduvarvestus on RF õppekohal õppijale tasuta, tasulisel õppekohal õppijale tasuline. Tasu suurus on kehtestatud 18.06.2014. aasta käskkirjaga nr 3-1/14-131[https://itcollege.ois.ee/et/directive/view?directive_id=5149], milleks on 20 eurot.&lt;br /&gt;
&lt;br /&gt;
Kui kõik kolm katset on luhtunud, siis pakub EIK teistkordset aine deklareerimise võimalust. Teistkordse aine deklareerimine on tasuline (nii riigifinantseeritaval kui ka tasulisel õppekohal õppides).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Küsimus 5===&lt;br /&gt;
&lt;br /&gt;
Millised eeldused peavad olema täidetud vajaduspõhise õppetoetuse saamiseks ja millest sõltub toetuse suurus? Mida peab toetuse saamiseks tegema? (Vastake kokkuvõtlikult) Mis on minimaalne ainepunkide arv semestris õppetoetuse saamiseks?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Vajaduspõhist õppetoetust saab taotleda tudeng:&lt;br /&gt;
*kelle perekonna kuusissetulek ühe pereliikme kohta on kuni 299 eurot;&lt;br /&gt;
*kes õpib täiskoormusega ja täidab õppekava nõudeid täies mahus;&lt;br /&gt;
*kes ei viibi akadeemilisel puhkusel.&lt;br /&gt;
	&lt;br /&gt;
Toetuse suurus sõltub üliõpilase keskmisest kuusissetulekust ühe pereliikme kohta, mida suurem on sissetulek, seda väiksem on toetus. Näiteks kuni 74,75 eurose kuusissetuleku puhul ühe perekonnaliikme kohta on õppetoetuse suurus 220 eurot. Toetuse saamiseks tuleb esitada avaldus riigiportaalis eesti.ee[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/]. &lt;br /&gt;
&lt;br /&gt;
Õppetoetuse saamiseks tuleb läbida õppekava nõudeid täies mahus (30 EAP semestris). Mahu arvestus semestrite lõikes on kumulatiivne ehk õppeaasta lõpuks tuleb koguda vähemalt 60 EAP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ülesande lahendus===&lt;br /&gt;
&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas X EAPd ja teise semestri lõpuks Y EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;X = 20&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;Y = 28&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalist hüvitamist nõutakse juhul kui üliõpilane kogub semestris vähem ainepunkte kui ette nähtud ning millest madalama õppekava täidetavuse korral rakendub hüvitamine. EIK Nõukogu otsusega on selleks piiriks kehtestatud 27 EAP semestris (Vau, Ernits, Varendi 2014[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188]). &lt;br /&gt;
&lt;br /&gt;
Ainepunktide arvestus on kumulatiivne, kogudes õppeaasta jooksul 20 + 28 = 48 EAP, esitatakse õppeaasta lõpus arve puuduolevale 6 EAP-le.&lt;br /&gt;
&lt;br /&gt;
EIK Nõukogu rakendab seadusega lubatud maksimaalset määra, mille suuruseks on 50 eurot. 6 EAP eest tuleb seega tasuda 300 eurot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viited ==&lt;br /&gt;
#[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/ Eesti Infotehnoloogia Kolledž: õpingukorralduse eeskiri (10.09.2014)];&lt;br /&gt;
#[https://itcollege.ois.ee/et/directive/view?directive_id=5149 Eesti Infotehnoloogia Kolledž:  käskkiri nr 3-1/14-131 (18.06.2014)]; &lt;br /&gt;
#[http://www.itcollege.ee/tudengile/finantsinfo/vajaduspohine-oppetoetus/ Eesti Infotehnoloogia Kolledž: vajaduspõhine õppetoetus (26.10.2014)];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Ernits, M. (04.09.2014) &amp;quot;Õppimine ja motivatsioon&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Ernits, M. (11.09.2014) &amp;quot;Robootika ja häkkimine&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Fischer, C. (25.09.2014) &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Karmo, K. (02.10.2014) &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Lang, E. (16.10.2014) &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Liiv, J. (18.09.2014) &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Septer, A. (09.10.2014) &amp;quot;IT tööturust&amp;quot;];&lt;br /&gt;
#[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Vau, I., Ernits, M., Varendi, M. (27.08.2014) &amp;quot;Õppekorraldus ja sisekord&amp;quot;].&lt;/div&gt;</summary>
		<author><name>Kegipt</name></author>
	</entry>
</feed>