Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Tarkvara projekt – seminar II
16.veebruar 2006
Ivo Mägi
22.02.2006 Ivo Mägi, Webmedia AS 2
Seminari kava
� Klientide jaotus
� Keskkonna, arendusprotssi ja vahendite tutvustus
� I iteratsiooni artefaktid: tutvustus
22.02.2006 Ivo Mägi, Webmedia AS 3
Projektirühmad - kliendid
� AJU - TÜ (Margus Treumuth I)
� Darth Vader - PRIA (Imre Lall)
� inVitro - TÜ (Reimo Palm)
� Hades23 - Mait Kaup
� Kosmos - oma klient
� Lendoravad - AS Regio (Ragmar Riismaa)
� Macrosoft – Eksamikeskus (Aivar Ilves)
� Spectrum - TÜ (Margus Treumuth II)
22.02.2006 Ivo Mägi, Webmedia AS 4
Töökorraldus� Valmivad dokumendid peavad olema ühes järgmistest
formaatidest:� PDF, HTML, DOC, XLS, PPT
� Kõik dokumendid peavad järgima ühtset stiili –soovitav on projekti alguses panna paika ühtsed templated
� Meeskond võib võtta juurde ja heita välja liikmeid� Enne III iteratsiooni lõppu� Enamuse häältega� Kirjalikult põhjendatud selgitusega
� Realiseeritud koodi maht peab olema vähemalt meeskonna_suurus*1000. Kood peab olemamõistlikult formaaditud. Vastasel juhul kaotatakse proportsionaalselt punkte kogusummast.
22.02.2006 Ivo Mägi, Webmedia AS 5
Teie uus sõber: Ats
� Täisnimega ats.cs.ut.ee� CVS server� Andmebaasiserver� Rakendusserver� Changelogic server� Wiki host� Dokumentide hoidla� Hellitusnimi: krokodell
22.02.2006 Ivo Mägi, Webmedia AS 6
Ats: kataloogistruktuur
� /home/username alla on mounditud teieülikooli kodukataloog
� Aine kodukataloog asub /projects/home/tvp2006
� Rühmadel vajalik spetsiaaltarkvara asub /projects/home/tvp2006/bin
� Rühma kodukataloog /projects/home/tvp2006/ryhm
� Rühma CVSROOT /projects/home/tvp2006/cvsroot/ryhm
22.02.2006 Ivo Mägi, Webmedia AS 7
Ats: CVS
� Versioonihaldus
� Klient
� Server
� Projekt
� Kogu projekti dokumentatsioon ja lähtekood peab asuma Atsi CVSis
� CVSROOT=:pserver:[email protected]:/projects/home/tvp2006/cvsroot/ryhm
22.02.2006 Ivo Mägi, Webmedia AS 8
Ats: CVS käsud
� set CVSROOT=…, export CVSROOT=
� cvs import -I ! -W "*.jar -k 'b'" -W "*.zip -k 'b'" -m "investor" investor vt rt
� cvs add
� cvs remove
� cvs commit
� cvs update
� cvs checkout –r tag
22.02.2006 Ivo Mägi, Webmedia AS 9
Näidisprojekt: projekti struktuur
investor/conf/doc/
deployment/management/modelling/requirements/
lib/src/war/release/
investor-release-1.zipinvestor-snapshot-1.zip
22.02.2006 Ivo Mägi, Webmedia AS 10
Näidisprojekt: ehitamine
� ANT
� build.xml
� Kohustuslikud targetid� release
� snapshot
� clean
� test
� Näide
22.02.2006 Ivo Mägi, Webmedia AS 11
Ats: Wiki� http://ats.cs.ut.ee/courses/2006/tvp/Groups/Main� Igal projektil peab olema oma Wiki leht. Seal peab
sisalduma vähemalt järgnev:� Info kliendi kohta� Info projekti kohta� Projekti liikmete nimekiri ja liikmete rollid� Projektijuhi kontaktandmed� Kõikide iteratsioonide tulemid (snapshot+release)� Viited
� Koodi dokumentatsioon (javadoc, …)� ViewCVS� Changelogic
� Kõik valminud dokumendid� Näide
22.02.2006 Ivo Mägi, Webmedia AS 12
Ats: Changelogic
� Konfiguratsioonihaldustarkvara. Lähemalt järgmises seminaris.
� http://ats.cs.ut.ee/changelogic
� Kasutaja [email protected]
� Kõik said samale kontole kirja parooliga.
� Igal grupil on oma projekt
� Igal grupil on üks liige projektijuhi õigustes, teised minimaalsete õigustega.
22.02.2006 Ivo Mägi, Webmedia AS 13
Ats: seadistamine:.login faili:if (`hostname` == krokodell) then
newgrp groupnameendif
.tcshrc faili:set path = (/projects/home/tvp2006/bin/apache-ant-1.6.5/bin
$path)setenv CVSROOT
:pserver:[email protected]:/projects/home/tvp2006/cvsroot/groupname
if (`hostname` == krokodell) thenumask 002
endif
22.02.2006 Ivo Mägi, Webmedia AS 14
Kõigi tulemite esitamine� Integreerida uus versioon� cvs co –r ver-2_1_1_1� ant snapshot� ant release� Kopeeride release ja snapshot
/home/projects/groupname/public_html kataloogining viidata neile projekti Wikist
� Saata kursuse artefaktide listi kiri kus sisaldub� SHA1 räsi snapshotist� SHA1 räsi releasest� Viit grupi wikile kus on lingitud valminud artefaktid
ning viited snapshotile ja releasele.� Kirja subjekt peab olema [ryhm] iteratsioon <iter.
nr> tulemus, näiteks [kosmos] iteratsioon 1 tulemus
22.02.2006 Ivo Mägi, Webmedia AS 15
I iteratsiooni artefaktid
� Projekti plaan
� Riskide tuvastamise ja maandamise dokument
� 1. iteratsiooni kokkuvõte
� Täiendatud visioonidokument
22.02.2006 Ivo Mägi, Webmedia AS 16
Projekti plaan: metoodika� Metoodika peab olema iteratiivne ja kergekaaluline.
Soovitame ühte järgnevaist:� Scrum� Crystal Clear� dX� XP
� Projekti plaanis peab olema kirjeldatud� Mis moel valitud metoodikat praktikas rakendada
kavatsetakse.� Kuidas toimub suhtlus. Kasutatavad suhtlusvahendid
� Wiki� E-mail� Instant Messenger� Telefon� Näost-näkku kohtumine
22.02.2006 Ivo Mägi, Webmedia AS 17
Projekti plaan: rollide jaotus I� Meeskonna liikmed� Liikmete CVd� Roll(-id) mida liige projektis täidab. Üks liige ei pea olema ainult
ühes rollis! Kõik rollid peavad olema täidetud. Võib vajadusel tekitada lisarolle� Projektijuht
� Projekti plaan ja kokkuvõte� Riskide tuvastamise ja maandamise dokument� Iteratsiooni plaan ja kokkuvõte� Testimise plaan� Üleandmise-vastuvõtmise akt� Toote presentatsioon
� Analüütik� Visioon� Nõuete dokument (Funktsionaalsed nõuded)� Ainemudel (koostöös disaineriga)� Prototüüp
22.02.2006 Ivo Mägi, Webmedia AS 18
Projekti plaan: rollide jaotus II� Rollid: jätkub
� Disainer� Ainemudel (koostöös analüütikuga)� Disainidokument
� Arhitekt� Arhitektuuridokument
� Arendaja� Kood (kommenteeritud)� Ühiktestid� Ehitusskriptid
� Testija� Süsteemitestid� Tööülesannete jälgimine ja planeerimine
� Dokumenteerija� Kasutajajuhend� Installatsioonijuhend
� Konfiguratsiooni haldaja� Integreerimine� Väljalasete planeerimine
22.02.2006 Ivo Mägi, Webmedia AS 19
Projekti plaan: tööde planeerimine ja jälgimine
� Tegevused� Nimekiri
� Sõltuvused
� Mahtude hinnangud tundides (planeeritud, tegelik)
� Teostajad
� Tähtsad verstapostid (milestones). Meie puhul iteratsioonide lõpud.
22.02.2006 Ivo Mägi, Webmedia AS 20
Projektijuhtimine: riskid
� Millised võimalikud ohud projekti edukat täitmist ähvardavad? Millised on nende realiseerumise tõenäosused.
� Kuidas neid tõenäosusi minimiseerida?
22.02.2006 Ivo Mägi, Webmedia AS 21
Projektijuhtimine: iteratsiooni plaan
� Eesmärgid
� Tegevused
� Mahtude hinnangud
� Kes mida teeb
� Eeldatavad tulemused
22.02.2006 Ivo Mägi, Webmedia AS 22
Projektijuhtimine: iteratsiooni kokkuvõte
� Kas eesmärgid olid saavutatud? (tulemused vs eesmärgid)
� Reaalsed tegevuste mahud
� Probleemid, mis tekkisid
� Järeldused tulevikuks
22.02.2006 Ivo Mägi, Webmedia AS 23
Analüüs: täiendatud visioon
� Mida rakenduse loomisega saavutatakse?
� Millised probleemid lahendatakse?
� Kes on lõppkasutajad?
� Mis on põhifunktsionaalsuseks?
� Mis on tähtsamad mittefunktsionaalsed nõuded?
22.02.2006 Ivo Mägi, Webmedia AS 24
Järgmiseks seminariks
� Kõik proovivad oma ülikooli kasutajatunnuse ja parooliga atsi sisse logida
� Kõik seadistavad oma töökeskkonna (.login ja .tcshrc)
� Kõik proovivad CVS käske – tehke katseprojekt ning proovige
� Kõik logivad sisse Changelogic keskkonda ning vaatavad seal ringi. Projektijuht vaatab üle liikmete õigused.
� Kõik loevad vahendite kodulehekülgi, vaata viidete slaide.
22.02.2006 Ivo Mägi, Webmedia AS 25
Viited:
� CVS – http://ximbiot.com/cvs/wiki/
� ANT – http://ant.apache.org
� Changelogic – http://www.changelogic.com