Juhend: Kodutöö aines "Programmeerimine CSharp keeles" (2011): Difference between revisions
(36 intermediate revisions by 12 users not shown) | |||
Line 25: | Line 25: | ||
Tekitatakse meeskonna wiki lehekülg. Meeskonnal peab olema nimi ning see koosneb kolmest kuni viiest liikmest. Määratakse projektijuht. Juhul kui hakatakse blogi pidama kuskil mujal keskkonnas ilmub selle kohta link. Paari sõnaga peaks kirjeldama idee olemust nii, et selle üldine suund oleks arusaadav. | Tekitatakse meeskonna wiki lehekülg. Meeskonnal peab olema nimi ning see koosneb kolmest kuni viiest liikmest. Määratakse projektijuht. Juhul kui hakatakse blogi pidama kuskil mujal keskkonnas ilmub selle kohta link. Paari sõnaga peaks kirjeldama idee olemust nii, et selle üldine suund oleks arusaadav. | ||
'''Retsensioon''' 4.10.2011 (2p) | '''Retsensioon''' 4.10.2011 (2p)<br/> | ||
Retsensiooni miinimum sõnade arv on 150. | |||
Selle käigus tuleks retsenseerida ideed. Näiteks: Kas seda on varem teostatud? Kas idee ja suund on piisavalt selged? Kas töö on reaalselt teostatav? jne. Retsensioon kirjutatakse wikisse. Selleks tuleb minna retsenseeritava meeskonna leheküljele ning vajutada discussion peale. Kui see on punast värvi, siis pole järelikult keegi veel konkreetsele meeskonnale retsensiooni kirjutanud. Retsensiooni juurde märkida meeskond, kes on selle autor. | |||
===Analüüs=== | ===Analüüs=== | ||
'''22.10.2011''' (6p) | '''22.10.2011''' (6p) | ||
Analüütilise osa eesmärgiks on arendada tudengite analüüsioskust, mida on vaja ka päris tarkvaraarenduse protsessi juures. | Analüütilise osa eesmärgiks on arendada tudengite analüüsioskust, mida on vaja ka päris tarkvaraarenduse protsessi juures.'''NB! Miinimum sõnade arv 700''' Selle osa käigus peab valmima loodava rakenduse analüüs, mis sisaldab muu hulgas ka: | ||
*Analüüs rakendusele. (Mida see endas sisaldab? Mis on selle eesmärk? Mida tavakasutaja sellega teha saaks? Milliste osade realiseerimine võib osutuda problemaatiliseks?) Kui on tööjaotus paigas, siis tuua ka see välja. | *Analüüs rakendusele. (Mida see endas sisaldab? Mis on selle eesmärk? Mida tavakasutaja sellega teha saaks? Milliste osade realiseerimine võib osutuda problemaatiliseks?) Kui on tööjaotus paigas, siis tuua ka see välja. | ||
*Tuua välja nimekiri funktsionaalsusest, mida plaanitakse kindlasti teostada(''Must have'') | *Tuua välja nimekiri funktsionaalsusest, mida plaanitakse kindlasti teostada(''Must have'') | ||
Line 37: | Line 39: | ||
===Prototüüp=== | ===Prototüüp=== | ||
''' | '''22.11.2011'''(10p)''(Windows Phone koodilaagris osalejatel 24.11.2011)'' | ||
Valmib projekti esmane realisatsioon. Laias laastus on peafunktsionaalsused realiseeritud(Nimekiri funktsionaalsusest, mida plaanitakse teostada). Programmis võib esineda üksikuid, kuid mitte väga suuri vigu. | Valmib projekti esmane realisatsioon. Laias laastus on peafunktsionaalsused realiseeritud(Nimekiri funktsionaalsusest, mida plaanitakse teostada). Programmis võib esineda üksikuid, kuid mitte väga suuri vigu. | ||
Line 48: | Line 51: | ||
'''Retsensioon''' 13.12.2011(5p) | '''Retsensioon''' 13.12.2011(5p) | ||
===Esitlus/Kaitsmine=== | ===Esitlus/Kaitsmine=== | ||
'''Toimub loengutes/praktikumides''' | |||
Esitlusel kaitstakse projekti. Tutvustatakse tehnoloogiat, mida kasutati rakenduse realiseerimiseks. Lühidalt räägitakse tööjaotusest ning probleemidest, mis tekkisid projekti realiseerimisel. Näidatakse lähtekoodi ja demonstreeritakse oma rakendust teistele tudengitele, kes võivad selle kohta küsimusi küsida. | '''Toimub loengutes/praktikumides''' ''(6p) '' | ||
Esitlusel kaitstakse projekti. Tutvustatakse tehnoloogiat, mida kasutati rakenduse realiseerimiseks. Lühidalt räägitakse tööjaotusest ning probleemidest, mis tekkisid projekti realiseerimisel. Näidatakse lähtekoodi ja demonstreeritakse oma rakendust teistele tudengitele, kes võivad selle kohta küsimusi küsida. Kestvus ~20min. | |||
====Kaitsmise ajad==== | |||
'''5.detsember''' | |||
14.00 - 14.30 "Insert your name here" <br/> | |||
14.30 - 15.00 [["Invaders"]]<br/> | |||
15.00 - 15.30 <br/> | |||
'''8.detsember''' | |||
08.15-08.45 "CMDB" <br/> | |||
08.45-09.15 - "[[.NOT]]" <br/> | |||
09.15-09.45 - "Slasher" <br/> | |||
'''12.detsember''' | |||
14.00 - 14.30 - [[Agendid]] <br/> | |||
14.30 - 15.00 - "Öö" <br/> | |||
15.00 - 15.30 - "Enjoy IT" | |||
==Konsultatsioon== | ==Konsultatsioon== | ||
Line 134: | Line 158: | ||
==Meeskond [["Insert name here"]]== | ==Meeskond [["Insert name here"]]== | ||
===Teema=== | ===Teema=== | ||
Lihtne arvutimäng XNA's. | |||
===Liikmed=== | ===Liikmed=== | ||
*Kairo Koik | *Kairo Koik | ||
*Marek Kikas | *Marek Kikas (Kontaktisik) | ||
==Meeskond [["Invaders"]]== | ==Meeskond [["Invaders"]]== | ||
===Teema=== | ===Teema=== | ||
"Invaders" või mõni normaalsem/originaalsem XNA mäng | "Invaders" või mõni normaalsem/originaalsem XNA mäng. Püüame olla realistlikud ja enese suhtes nõudlikud. | ||
===Liikmed=== | ===Liikmed=== | ||
Line 150: | Line 172: | ||
*Sergei Rumjantsev | *Sergei Rumjantsev | ||
*Madis Sarv | *Madis Sarv | ||
*Kristo Eevardi | |||
==Meeskond "[[IT_Gurud]]"== | ==Meeskond "[[IT_Gurud]]"== | ||
Line 166: | Line 189: | ||
*Martin Aarne | *Martin Aarne | ||
*Martin Kosk | *Martin Kosk | ||
*Andre-Marcel Peri | |||
==Meeskond "[[Agendid]]"== | ==Meeskond "[[Agendid]]"== | ||
Line 179: | Line 202: | ||
===Tracker / Wiki=== | ===Tracker / Wiki=== | ||
http://trac.sqroot.eu/projects/sip-agent | http://trac.sqroot.eu/projects/sip-agent | ||
Kood ja paigaldusjuhend: https://github.com/anroots/SIP-Agent | |||
==Meeskond "[[Öö]]"== | ==Meeskond "[[Öö]]"== | ||
Line 188: | Line 213: | ||
*Fred Mihkelsoo | *Fred Mihkelsoo | ||
*Erki Miilberg | *Erki Miilberg | ||
*Mikk Käosaar | |||
==Meeskond "[[CMDB]]"== | ==Meeskond "[[CMDB]]"== | ||
Line 218: | Line 244: | ||
*Joonas Püüa | *Joonas Püüa | ||
*Ragnar Kullamäe | *Ragnar Kullamäe | ||
*Richard Teppart |
Latest revision as of 16:52, 25 December 2011
Kodutöö aines "Programmeerimine C# keeles"
Eesmärk
Saada praktiline arenduskogemus .NET keskkonnas ning arendada meeskonnatöö kogemust ja analüüsivõimet.
Reeglid
Ühte projektimeeskonda kuulub 3-5 tudengit. Ühel teemal võib teostada projekti üks või mitu meeskonda.Töö käiku kajastatakse https://wiki.itcollege.ee keskkonnas või soovi korral võib seda teha ka ajaveebis(blogis). Ajaveebi pidamise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg ja dokumentatsioon) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest. Ajaveebi loob ja ajaveebi haldab projektimeeskond vabalt valitud (avalikus) keskkonnas.
Tähtaegadest kinnipidamine
Projekt jaguneb alamosadeks, millele on määratud tähtajad. Maksimumpunktide saavutamiseks tuleb tähtajaks esitada töö, mis vastab püstitatud nõuetele. Kui töö esitatakse tähtajast hiljem ,kaotatakse iga hilinenud päeva kohta 10% punktidest. Maksimaalselt kaotatakse 50%.
Näide: Töö esitamise tähtaeg on 4.09.2011 kell 23:59 ja selle osa eest on võimalik teenida 8p. Meeskond1 esitab töö, mis vastab nõuetele, tähtajaks. Tulemus:8p Meeskond2 esitab töö, mis vastab nõuetele 05.09.2011 02:00 (ehk tähtajast paar tundi hiljem). Tulemus: 7,1 punkti. Meeskond3 esitab töö, mis vastab nõuetele 06.09.2011 12:00 (ehk tähtajast paar päeva hiljem). Tulemus: 6,4 punkti.
Hindamine
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud. 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. Tehnilisi ja vormistuslike puudujääke on võimalik korvata lisavõimaluste realiseerimisega.Üldjuhul tuleb loodud lahendust ka praktikumides või loengutes teistele tudengitele tutvustada (ca 10 min). Nagu eelpool mainitud, koosneb projekt erinevatest osadest. Punktide arvu määramisel arvestatakse ka tähtajast kinni pidamist, mille toimimisloogika on kirjeldatud eespool.
Meeskonna kokkupanek ja idee
24.09.2011 (3p)
Tekitatakse meeskonna wiki lehekülg. Meeskonnal peab olema nimi ning see koosneb kolmest kuni viiest liikmest. Määratakse projektijuht. Juhul kui hakatakse blogi pidama kuskil mujal keskkonnas ilmub selle kohta link. Paari sõnaga peaks kirjeldama idee olemust nii, et selle üldine suund oleks arusaadav.
Retsensioon 4.10.2011 (2p)
Retsensiooni miinimum sõnade arv on 150.
Selle käigus tuleks retsenseerida ideed. Näiteks: Kas seda on varem teostatud? Kas idee ja suund on piisavalt selged? Kas töö on reaalselt teostatav? jne. Retsensioon kirjutatakse wikisse. Selleks tuleb minna retsenseeritava meeskonna leheküljele ning vajutada discussion peale. Kui see on punast värvi, siis pole järelikult keegi veel konkreetsele meeskonnale retsensiooni kirjutanud. Retsensiooni juurde märkida meeskond, kes on selle autor.
Analüüs
22.10.2011 (6p) Analüütilise osa eesmärgiks on arendada tudengite analüüsioskust, mida on vaja ka päris tarkvaraarenduse protsessi juures.NB! Miinimum sõnade arv 700 Selle osa käigus peab valmima loodava rakenduse analüüs, mis sisaldab muu hulgas ka:
- Analüüs rakendusele. (Mida see endas sisaldab? Mis on selle eesmärk? Mida tavakasutaja sellega teha saaks? Milliste osade realiseerimine võib osutuda problemaatiliseks?) Kui on tööjaotus paigas, siis tuua ka see välja.
- Tuua välja nimekiri funktsionaalsusest, mida plaanitakse kindlasti teostada(Must have)
- Nimekiri funktsionaalsustest, mis võiks olla, aga mida ei pruugita ajapuuduse tõttu realiseerida.(Nice to have)
Retsensioon 02.11.2011 (3p)
Prototüüp
22.11.2011(10p)(Windows Phone koodilaagris osalejatel 24.11.2011)
Valmib projekti esmane realisatsioon. Laias laastus on peafunktsionaalsused realiseeritud(Nimekiri funktsionaalsusest, mida plaanitakse teostada). Programmis võib esineda üksikuid, kuid mitte väga suuri vigu.
Retsensioon 29.11.2011(5p)
Lõpptoode
3.12.2011(15p) Selleks faasiks peab projekt maksimumpuntkide saavutamiseks olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus.
Retsensioon 13.12.2011(5p)
Esitlus/Kaitsmine
Toimub loengutes/praktikumides (6p) Esitlusel kaitstakse projekti. Tutvustatakse tehnoloogiat, mida kasutati rakenduse realiseerimiseks. Lühidalt räägitakse tööjaotusest ning probleemidest, mis tekkisid projekti realiseerimisel. Näidatakse lähtekoodi ja demonstreeritakse oma rakendust teistele tudengitele, kes võivad selle kohta küsimusi küsida. Kestvus ~20min.
Kaitsmise ajad
5.detsember
14.00 - 14.30 "Insert your name here"
14.30 - 15.00 "Invaders"
15.00 - 15.30
8.detsember
08.15-08.45 "CMDB"
08.45-09.15 - ".NOT"
09.15-09.45 - "Slasher"
12.detsember
14.00 - 14.30 - Agendid
14.30 - 15.00 - "Öö"
15.00 - 15.30 - "Enjoy IT"
Konsultatsioon
Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida õppejõuga kokkuleppeid kontaktidel +372 53 469 734 või mait.poska [ät] itcollege.ee (teksti originaalautor Priit Raspel)
Teemad 2011 sügis
Kodutööna tuleb luua:
Kodune raamatukogu
Kodudes on tihti erinevaid raamatuid (filme, muud nänni) ja sõbrad tahavad neid vahel laenutada. Loo rakendus, mis
- Võimaldaks sisestada kodused raamatud
- Võimaldaks luua laenutajate profiile
- Raamatuid välja laenutada (tähtajaliselt)
- Laseks koostada erinevaid aruandeid (kodusolevad raamatud, väljalaenutatud raamatud, tähtaja ületanud laenutused jne)
Lisavõimalused
- Kui laenutaja profiilis on e-mail, siis saada automaatselt e-kiri „kallis sõber see ja see, Sinu käes on minu raamat, kas tood tagasi ka?”
- Kuva hoiatused, kui laenutaja laenutuste ajalugu on vilets või kui mõni raamat on tagastamata.
- Lase lisada raamatutele pilt
- Loo lihtne veebiliides (et sõbrad saaksid veebist vaadata, mis raamatud kasutajal kodus veel alles on)
Või
CRM
Oma klientidest peab olema ülevaade. Loo rakendus, mis võimaldab:
- Kliente ning nende kontaktisikuid sisestada, muuta ning kustutada
- Võimalda sisestada kliendikontakte
- Koostada hinnapakkumisi klientidele, kusjuures hinnapakkumine lisatakse süsteemi ka kui kliendikontakt ning saadetakse samast süsteemist kliendile.
- Kliendi andmete vaatamisel kuvatakse ka kliendikontaktid
Lisavõimalused
- Loo võimalus, kus kontaktisiku sünnipäeva saabumisel saadetakse automaatselt inimesele meil õnnesoovidega
- Õnnitlusmeilide template’sid võiks olla mitu
- Loo võimalus kliendi huvide (huvialade) kajastamiseks süsteemis
Tetris(XNA)
XoniX(XNA)
Nõuded rakendusele
Loodav rakendus peab:
- Peab kasutama andmebaasi (erikokkuleppel ka XML formaadis andmeallikat)
- Peab võimaldama tegevuste kohta registri pidamist (logi)
- Kasutama kasutajaliidesena ühte järgmistest: Windows Forms, WPF, SilverLight (ka Windows Phone 7) või ASP.Net
Loodav rakendus peab olema loodud objektorienteeritud lähenemist kasutades! Klassid, klassid, klassid
Lisapunkte annab:
- Silmailu
- Kood on kirjutatud häid praktikaid järgides ja on veatu(testimine, testimine, testimine)
- Orginaalsed ideed ja hea äriidee
Nõuded XNA projektile
Loodav mäng peab sisaldama:
- Erinevaid tasemeid
- Punktiarvestust
- XBox puldi tuge
- Klaviatuurilt juhtimise tuge
Loodav mäng peab olema loodud objektorienteeritud lähenemist kasutades! Klassid, klassid, klassid
Lisapunkte annab:
- Silmailu
- Kood on kirjutatud häid praktikaid järgides ja on veatu(testimine, testimine, testimine)
- Orginaalsed ideed ja hea story
Meeskonnad 2011
Meeskond "Tundmatu"
Teema
WPF ärirakendus.. blabla
Liikmed
- Võõras1
- Võõras2
- Võõras3
Meeskond "Insert name here"
Teema
Lihtne arvutimäng XNA's.
Liikmed
- Kairo Koik
- Marek Kikas (Kontaktisik)
Meeskond "Invaders"
Teema
"Invaders" või mõni normaalsem/originaalsem XNA mäng. Püüame olla realistlikud ja enese suhtes nõudlikud.
Liikmed
- Heiki Tamm
- Sergei Rumjantsev
- Madis Sarv
- Kristo Eevardi
Meeskond "IT_Gurud"
Teema
XNA mäng
Liikmed
- Madis Rääk
- Indrek Reemi
- Tanel Jüris
Meeskond ".NOT"
Teema
Raamatukogu rakendus
Liikmed
- Kalmer Tart
- Martin Aarne
- Martin Kosk
- Andre-Marcel Peri
Meeskond "Agendid"
Teema
WPF rakendus, mis võimaldab klienditeenindajal kõne info kiiresti andmebaasi üles märkida.
Liikmed
- Ando Roots D22
- Tõnis Umbsaar D22
- Rene Pärnpuu A31 (mentor)
- Sander Sülla D21
- Jana Mrots D32
Tracker / Wiki
http://trac.sqroot.eu/projects/sip-agent
Kood ja paigaldusjuhend: https://github.com/anroots/SIP-Agent
Meeskond "Öö"
Teema
2D XNA mäng
Liikmed
- Kalev Vallsalu
- Fred Mihkelsoo
- Erki Miilberg
- Mikk Käosaar
Meeskond "CMDB"
Teema
Raamatukogu tüüpi rakendus, arvatavasti filmide kohta.
Liikmed
- Arvi Alamaa
- Roland Krindal
- Martin Vedler
- Mart Kolk
Meeskond "Slasher"
Teema
3d rollimäng.
Liikmed
- Herki Pärn
- Jaanus Varus
- Margo Kuustik
- Heigo Punapart
- Kaivar Kull
- Kimmo Lillipuu
Meeskond "Enjoy IT"
Teema
Raamatukogu ....
Liikmed
- Toomas Talviste
- Joonas Püüa
- Ragnar Kullamäe
- Richard Teppart