Availability & pricing of bandwith in internet time 20.11.2000 Salomonkatu 17 A 11 FIN-00100 Helsinki Finland
EVTrader Loppukatselmus 26.04.2002 Dan Silfvast dsilfvas@ cc.hut.fi evtrader@ eigenvalue.com Salomonkatu 17 A 11 FIN-00100 Helsinki Finland
Agenda Tuotteen esittely tausta ominaisuudet demo Projektin esittely vaiheet ongelmat lopputulos työkalut ja menetelmät resurssit Loppukommentit 2002 EigenValue Ltd. 2
EVTrader Uusi toteutus EigenValuen bportfolio järjestelmän asiakasohjelmasta Dynaaminen käyttöliittymäalusta 2002 EigenValue Ltd. 3
Taustaa Vanha bportfolio syntynyt jatkuvan kehityksen tuloksena laajentaminen vaikeaa käyttöliittymä ei kovin joustava ei mahdollisuutta monen toiminnon samanaikaiseen suorittamiseen ei mahdollisuutta käyttäjäkohtaisille asetuksille tai käyttöliittymän tilan tallentamiselle Tarve luoda dynaaminen alusta järjestelmän laajentamiselle ja jatkokehitykselle 2002 EigenValue Ltd. 4
EVTrader EVTrader pyrkii korjaamaan bportfolion puutteet määrittelemään tukevan pohjan bportfolion uudelle toteutukselle Suunnittelun lähtökohtina oli modularisuus laajennettavuus helppokäyttöisyys yhteensopivuus vanhan järjestelmän kanssa 2002 EigenValue Ltd. 5
Ominaisuudet Yhtenäinen käyttöliittymäalusta mahdollistaa monta samanaikaisesti auki olevaa ikkunaa mahdollisuus käyttää monta eri komponenttia samaan aikaan samasta komponentista voi olla monta eri näkymää ikkunaa ei tarvitse sulkea jotta pääsisi käsiksi toiseen hallitsee ikkunoiden keskinäisen järjestyksen kaikki ali-ikkunat yhden kantaikkunan alla 2002 EigenValue Ltd. 6
Ominaisuudet Käyttäjäprofiilit käyttäjä voi muokata työpöytänsä mieluisekseen näkymä säilyy vaikka ohjelma sammutetaan sama työpöytä on käytössä koneesta riippumatta käyttäjäkohtainen komponentin / ikkunan tilan tallennus eri käyttäjien toimet eivät vaikuta toisiinsa monta käyttäjää voi työskennellä samalla järjestelmällä häiritsemättä toisiaan käyttäjä voi sulkea ohjelman ja myöhemmin jatkaa samasta tilasta mihin jäi 2002 EigenValue Ltd. 7
Ominaisuudet Dynaamisuus alusta ei ole riippuvainen komponenteista järjestelmää voidaan päivittää lisäämällä siihen uusia komponentteja komponentit voivat käynnistää toisia komponentteja ja käyttää niiden tarjoamia palveluja osana omaa toimintaa alusta hoitaa yhteyden palvelimeen ja tietokantaan päin ja tarjoaa komponenteille yhteyden pyydettäessä komponenttien ei tarvitse huolehtia yhteysasetuksista turhia kantayhteyksiä ei luoda käyttäjän tunnistus suoritetaan vain kerran sen sijaan että jokainen komponentti joutuisi hoitamaan tunnistuksen erikseen 2002 EigenValue Ltd. 8
Ominaisuudet Hyvät valmiudet järjestelmän jatkokehitykselle yhteensopiva olemassa olevan bportfolio palvelimen ja tietokannan kanssa liitynnät ja komponenttien luominen hyvin dokumentoitu esimerkkitoteutuksia komponenteista valmius event-pohjaiselle toiminnalle toteutettu EigenValuen coding-conventionia seuraten 2002 EigenValue Ltd. 9
demo... 2002 EigenValue Ltd. 10
Projektin esittely vaiheet ongelmat lopputulos työkalut ja menetelmät resurssit EVTrader projektina Projekti n. 1200h työtä 13 erilaista dokumenttia yli 3000 riviä tekstiä kokousmuistiinpanot 23:ta kokouksesta yli 600 sähköpostia yli 6000 riviä koodia 2002 EigenValue Ltd. 11
1. Vaihe Työtä n. 220h suurin osa projektinhallintaa, luentoja ja kokouksia Projekti käynnistettiin muodostettiin ryhmä ja löydettiin asiakas määrättiin ryhmän sisäinen työnjako luotiin projektisuunnitelma ja määriteltiin sisäiset käytännöt dokumenttien rakenne kokouskäytännöt Vaatimusten keräilyä projektin aihe ja vaatimukset muuttuivat radikaalisti viikkoa ennen vaiheen loppua perusversio vaatimusmäärittelystä 2002 EigenValue Ltd. 12
2. Vaihe Työtä n. 220h suurin osa kokouksia, opiskelua ja dokumentointia Kirjoitettiin vaatimusmäärittely ja toiminnallinen määrittely Teknisen määrittelyn kanssa ongelmia spesifikaatio yksinään arkkitehdin harteilla ei valmistunut ajoissa Platformista tuotettiin prototyyppi ei testattu teknisen määrittelyn puuttuessa 2002 EigenValue Ltd. 13
3. Vaihe Työtä n. 360h suurin osa implementointia ja dokumentointia Joululoma pyhitettiin opiskelulle Otettiin käyttöön milestonet ja workshop käytännöt vaiheessa neljä sisäistä deadlinea Tekninen määritelmä saatiin kuntoon specification workshop päivän avulla Koodaus kunnolla käyntiin platform lähes valmiiksi myös kunnollinen testaus suoritettiin Ongelmia lähinnä työnjaon suhteen windows ympäristö suuri ongelma 2002 EigenValue Ltd. 14
4. Vaihe Työtä n. 230h suurin osa implementointia kokouksia Platformin viimeistelyä ja esimerkkikomponenttien toteutusta määriteltiin ja toteutettiin kolme komponenttia platformin alaisuuteen Map, Pricing ja Graph komponenteille luotiin oma dokumentti Virallista testausta ei suoritettu ongelmia tietokanta- & serveri-yhteyden kanssa komponentit testattiin toteutuksen yhteydessä 2002 EigenValue Ltd. 15
5. Vaihe Työtä n. 150h lähinnä testausta ja komponenttien viimeistelyä Komponentit viimeisteltiin Testaus suoritettiin oma testaus ja opponenttitestaus suoritettiin omilla koneilla 2002 EigenValue Ltd. 16
Ongelmat Windows ympäristö suurin ongelma suurin osa tottunut UNIXiin aikaa meni paljon ympäristön opetteluun vaikutti aika paljon työnjakoon kokemattomia yritettiin aktivoida ympäristön hallitsevien avustuksella Työnjako toteutuksesta suurin osa kahden henkilön tuotosta kaikki eivät saaneet vaadittuja tunteja kasaan työtehtäviin pakottamisesta luovuttiin tehtävät pyrittiin jakamaan sen mukaan mitä ihmiset parhaiten osasivat 2002 EigenValue Ltd. 17
Ongelmat Työtehtävien riippuminen yhdestä henkilöstä esim. spesifikaation puuttuminen viivästytti toteutusta pyrittiin korjaamaan suorittamalla määrittelyt yms. ryhmässä ja määräämällä vasta tulosten kirjaaminen yhdelle henkilölle 2002 EigenValue Ltd. 18
Lopputulos vastaa varsin hyvin projektille asetettuja vaatimuksia tuotos on hyvin dokumentoitu bportfoliolle suunniteltiin uusi arkkitehtuuri konfiguroitava, dynaaminen alusta toteutettiin alustalle tuotettiin komponentteja tuote toimii yhteen vanhan järjestelmän kanssa aivan kaikkia alussa määriteltyjä vaatimuksia ei täytetty koska suunnitelma muuttui hiukan projektin aikana alunperin oli tarkoitus suoraan portata vanhoja bportfolio komponentteja platformille aikataulussa ei aina pysytty suunnitellusti 2002 EigenValue Ltd. 19
Tärkeimmät käytetyt työkalut MS Visual Studio MS Word Adobe Acrobat Rational Rose CVS MS Project Doxygen 2002 EigenValue Ltd. 20
Tärkeimmät menetelmät Kokouskäytäntö viikkokokoukset ja asiakaskokoukset action pointit Yhteydenpito postituslista verkkosivut Milestonet Workshopit Vaatimusten hallinta laatusuunnitelma 2002 EigenValue Ltd. 21
Menetelmät jatkuu... Dokumenttien hallinta yhteinen dokumenttipohja katselmuksia UML mallinnus Design Review asiakkaan kanssa Riskinhallinta 2002 EigenValue Ltd. 22
Resurssit Työtä yhteensä 1200h alunperin suunniteltu n. 1500h Suunnitellut vs. toteutuneet tunnit 2002 EigenValue Ltd. 23
Resurssit jatkuu... Käytetyt resurssit per tehtävä D=dokumentointi, K=kokoukset, P=projektin hallinta, U=opiskelu, O=ohjelmointi, S=suunnittelu, A=ATK ylläpito, T=testaus 2002 EigenValue Ltd. 24
Resurssit jatkuu... Käytetyt resurssit per henkilö T=testaus, A=ATK ylläpito, S=suunnittelu, O=ohjelmointi, U=opiskelu, P=projektin hallinta, K=kokoukset, D=dokumentointi 2002 EigenValue Ltd. 25
Resurssit jatkuu... Varsin suuria poikkeamia suunniteltuun sekä ihmisten välillä ihmisiä vaikea motivoida opiskelemaan uutta suunnitelmat eivät riitä mikäli ihmiset eivät osaa suorittaa heille määrättyä tehtävää työt pyrittiin lopulta jakamaan ihmisten osaamisen mukaan tasainen työmäärä käytännön mahdottomuus Tavoitteisiin päästiin vaikka vaadittuja tunteja ei täytetty 2002 EigenValue Ltd. 26
Loppukommentit Yleisvaikutelma osalle ryhmää, etenkin projektipäällikölle, erittäin opettavainen kurssi, toisille lähinnä työläs varsin tarpeellinen kurssi Kurssin suurimmat ongelmat kurssin ja asiakkaiden tavoitteet ristiriidassa kurssi vaatii kaikkia tekemään tasaisesti töitä mikä ei käytännössä ole tilanne missään projektissa asiakas arvostaa enemmän toimivaa tuotetta 2002 EigenValue Ltd. 27
Loppukommentit jatkuu... kurssi vaatii samaa prosessia käytettävän projektin luonteesta riippumatta prosessi aivan liian raskas projektin kestoon ja resursseihin nähden käytännössä vain vaatimuksia, ei opastusta siitä mitä pitäisi tehdä lopputuloksena ohjelmistoprosessi koetaan lähinnä turhana ja työläänä asiana josta ei ole hyötyä arvostelu perustuu käytännössä täysin siihen miten hyvin työ osataan esittää sillä mitä todellisuudessa ollaan tehty ei ole niinkään väliä välillä oli havaittavissa että edes dokumentteja ei ollut luettu kunnolla mentor-järjestely ei käytännössä toimiva sama henkilö jolta pitäisi pyytää apua ongelmatilanteissa tuomitsee näistä ongelmista projektikatselmuksissa 2002 EigenValue Ltd. 28
Loppukommentit jatkuu... Parantamisehdotuksia prosessin soveltamista pyrittäisiin opastamaan pakottamisen asemesta yritettäisiin löytää jokaiseen projektiin siihen sopiva prosessi viimesyksyinen asiakasvalintafiaskon toistumista on vältettävä 2002 EigenValue Ltd. 29