Verkkopokerijärjestelmä. Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Samankaltaiset tiedostot
Verkkopokerijärjestelmä Projektisuunnitelma Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Verkkopokerijärjestelmä. Testausdokumentti 2. iteraatio Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Verkkopokerijärjestelmä. Testausdokumentti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Yhteenvetodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Toteutusvaihe T2 Edistymisraportti

Ohjelmistotuotantoprojekti

Testausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria

Data Sailors - COTOOL dokumentaatio Riskiloki

Loppuraportti. Kohahdus. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Toteutusvaihe T3 Digi-tv: Edistymisraportti

Projektisuunnitelma Nero-ryhmä

Desmond-opiskelijakalenteri Loppuraportti

Loppuraportti. HeTLi. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tietotekniikan Sovellusprojektit

Opettajatuutorointi-kurssin syksyn 2006 kyselyjen tulokset

UCOT-Sovellusprojekti. Testausraportti

LOPPURAPORTTI Paperikonekilta Versio 1.0

Testaussuunnitelma. Asdf. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma. Asdf. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Graafinen käyttöliittymä lintujen rengastusjärjestelmään Projektisuunnitelma

Ylläpitodokumentti Mooan

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Projektisuunnitelma. HenTyLi. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Vaatimusmäärittely dokumentti

Oleelliset vaikeudet OT:ssa 1/2

Yhteenvetodokumentti. myva. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

T Harjoitustyöluento

Lohtu-projekti. Testaussuunnitelma

T harjoitustyö, kevät 2012

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Enterprise SOA. Nyt. Systeemi-integraattorin näkökulma

Projektisuunnitelma. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

MINNO Metropolia Loppukatselmus. Kotisatama Järjestelmät

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin.

Internet-pohjainen ryhmätyöympäristö

TIEDONKULKU. PROJEKTITYÖ Tik Wclique

Määrittelydokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Menetelmäraportti - Konfiguraationhallinta


Good Minton QA Raportti Iteraatio 1 Sulkapalloliiton Kilpailujärjestelmä

MINNO Metropolis Loppukatselmus. Annika Laurén, Bassma Chaoki Edward Sneck, Lari Lehto Melina Lukkarinen, Riku Lehtonen Educons Oy 26.5.

Testausraportti v.1.3

Matematiikan oppifoorumi Projektisuunnitelma

MINNO Innovaatioprojekti 2014 Loppukatselmus. Simanitas Promootiovideo hankkeelle Lapinlahden Lähde

Loppuraportti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Osaa käyttää työvälineohjelmia, tekstinkäsittelyä taulukkolaskentaa ja esitysgrafiikkaa monipuolisesti asiakasviestintään.

Graafinen käyttöliittymä lintujen rengastusjärjestelmään

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

Rouhia Oy:n nopea kokeilu Babel Fish Helsingin kouluissa Helsingin koulujen nopeiden kokeilujen ohjelma II, kevätlukukausi 2019

Lohtu-projekti. Projektisuunnitelma. Versiohistoria: Luonnos Virve Korjailtu. Mukana riskienhallinta ja Mari, Kimmo, Virve

Kieliaineistojen käyttöoikeuksien hallinnan tietojärjestelmä

SALAKIRJOITUKSEN VAIKUTUS SUORITUSKYKYYN UBUNTU käyttöjärjestelmässä -projekti

Verkkopokerijärjestelmä. Suunnitteludokumentti, 1. iteraatio Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Yhteenvetodokumentti. PLAYOFF Jari Anttila Sanna Fröblom Aarno Sandvik Tommi Paavilainen Miikka Kohijoki. Päivi Pääkkö, ohjaaja

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Testaussuunnitelma Labra

TIETOKANTA MERIKOTKIEN SEURANTAAN Projektisuunnitelma

Projektisuunnitelma Viulu

Verkossa opiskelu vaatii opiskelijalta paljon aktiivisuutta ja kykyä työskennellä itsenäisesti

T Testiraportti - integraatiotestaus

T Testiraportti - järjestelmätestaus

Sopimus Asiakas- ja potilastietojärjestelmästä. Liite N: Kielivaatimukset

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

T Projektikatselmus

T Projektikatselmus

EDISTYMISRAPORTTI - PS Virtuaaliyhteisöjen muodostaminen Versio 1.0

YSILUOKKA. Tasa-arvo yhteiskunnassa ja työelämässä

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ

TOIMIJAREKISTERIN TOTEUTUKSEN JA YLLÄPIDON HANKINTA - HANKINNAN YKSI- LÖINTI HUOM!

Loppuraportti. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

T Loppukatselmus

PS-vaiheen edistymisraportti Kuopio

Projektisuunnitelma. Tiput-ryhmä Ohjelmistotuotantoprojekti

Projektisuunnitelma. HeTLi. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektityö

Tampereen kaupunki Helmin automatisointi

Versiohistoria: Versio Päivämäärä Kuvaus Tekijä Virallinen versio Janne Piippo

Eero Nousiainen. Tekniikan yksikkö Tietotekniikan osasto. Projektiperustainen opetus ja oppiminen

Projektisuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

A09-05 OSGi IRC Bot For Coffee Maker

Projektisuunnitelma. Populous. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

LC Profiler. - Oppimisympäristön keskeisiä piirteitä. Antti Peltonen, LC Prof Oy

Käytettävyyden huomiointi ohjelmisto prosessissa testausta lisäämällä

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS Ti Kandidaatintyö ja seminaari

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

Vuorekseen liittyvä tutkimusja kehitysprojekti. Langaton Vuores. Kotikatupalvelin

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

A4.1 Projektityö, 5 ov.

VERSIONHALLINTA. PARIOHJELMOINTI Lari Ahti, 62634M Antti Kauppinen, 58390D

Projektisuunnitelma. Geneerinen kaavioiden piirto-ohjelmisto

S11-09 Control System for an. Autonomous Household Robot Platform

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

Tietojärjestelmän osat

LOPPURAPORTTI. DNA Kaupan henkilöstön kehittämishanke

Transkriptio:

Verkkopokerijärjestelmä Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

Projektiryhmä Samuli Aalto-Setälä Jukka Kekälainen Jarno Kyykkä Mika Mielonen Mårten Smeds Otto Waltari Ohjaaja Paula Kuosmanen Asiakas Jussi Kangasharju Projektin tiedot Kotisivu http://www.cs.helsinki.fi/group/kanat Versiohistoria Versio Päivämäärä Kuvaus 0.1 05.12.2008 Ensimmäinen versio 0.2 17.12.2008 Toinen versio 2

Sisällysluettelo 1. Johdanto... 4 2. Projektin kulku...4 Vaatimusmäärittely...4 Suunnittelu... 4 Toteutus... 4 Testaus...4 1. iteraatio...4 2. iteraatio...5 3. Projektityöskentely...5 4. Kehittämisnäkymiä...5 5. Loppusanat... 5 3

1. Johdanto Toteutimme Ohjelmistotuotanto-kurssin projektina verkkopokerijärjestelmän, jolla voi pelata Texas Hold'em -peliä fixed limit -panostuksella. Projekti käynnistyi 3.9.2008 ja kesti koko syyslukukauden. Tässä dokumentissa analysoidaan ryhmän kuinka ryhmä saavutti asetetut tavoitteet ohjelmiston sekä ryhmänä toimimisen osalta. 2. Projektin kulku Sovelluksesta tehtiin sekä palvelin-asiakas että vertaisverkkopohjalla toimiva versio. Palvelinversiossa palvelin hallinnoi pelin etenemistä ja vahtii asiakasohjelmien oikeellisuutta, kun taas P2P-versiossa palvelimen tehtävät hajautetaan vertaisverkon koneille. Ohjelmiston kaksi eri versiota toteutettiin kahden iteraation prosessimallilla Vaatimusmäärittely Molempien iteraatioiden alkuun kuului asiakastapaaminen, jonka perusteella tehtiin vaatimusmäärittely. Yhteistyö asiakkaan kanssa oli sujuvaa. Suunnittelu 1. iteraation suunnittelussa pyrittiin luomaan luokkia jotka kuvaavat ohjelmiston selkeitä osakokonaisuuksia kuten käyttöliittymä, tietoliikenne ja pelimekaniikka. Mielestämme onnistuimme tässä hyvin. 2. iteraation suunnittelu tehtiin pitkälle 1. iteraation tuotoksia hyödyntäen. Toteutus Ensimmäisessä iteraatiossa jaoimme kullekin ryhmän jäsenelle koodattavaksi oman vastuualueensa. Alkuvaiheen jälkeen ohjelmointityö painottui ryhmän kokeneimmille ohjelmoijille. Testaus Testausta tehtiin jatkuvasti toteutuksen yhteydessä sekä testipäivinä, joissa testattiin sen hetkisen tuotoksen toimivuutta. Testipäivät kirjattiin molemmissa iteraatioissa testausdokumenttiin. 1. iteraatio Ohjelmiston palvelin-asiakas versio toteutettiin 1. iteraatiossa. Projektin ensimmäisen puoliskon suurin tekninen haaste oli opetella käytännön tietoliikenneyhteyksien luontia javalla. Muita opittuja asioita oli CVS-version hallinta ja ryhmän kokouskäytännöt. 4

2. iteraatio Projektin toisella puoliskolla toteutettiin vertaisverkkoihin perustuva versio verkkopokerijärjestelmästä. Vertaisverkot olivat ryhmäläisille täysin tuntemattomia ennen projektia ja oppia niistä haettiin muun muassa myös projektin asiakkaana toimineen Jussi Kangasharjun luennoimalta kurssilta Peer-To-Peer Networks. 2. iteraation suurinta oppia oli juuri käytännön vertaisverkkotekniikat. Projektin loppuvaihe oli kiireinen, mikä lienee tyypillistä tämän kaltaisessa projetissa. 3. Projektityöskentely Ryhmän yhteishenki oli hyvä ja pokeri mielenkiintoisena teemana antoi lisämotivaatiota. Aikataulusta jäätiin jo varhaisessa vaiheessa noin viikko, johtuen verkkaisista projektin ensimmäisistä viikoista. Kuitenkin vauhtiin päästyämme ei aikataulu sen enempää venynyt ja opimme aikataulussa pysymisen tärkeyden kun työskennellään ryhmässä. Ohjelmiston modulaarinen luonne antoi mahdollisuuden jäsenien melko itsenäiseen työskentelyyn, mutta myös tekijöiden vastuu korostui. Isoin toteutuneista riskeistä koettiin kun selvisi ettei ohjelmiston tekoälyn toteuttaja ollut tehnyt työtään vaaditulla tasolla. (toteutunut Riski [RT2] projektissa hidastelu/myöhästely) Tästä kuitenkin selvittiin, kun toinen ryhmän jäsen toteutti nopeassa ajassa tekoälyn kokonaan uudestaan, eikä tästä lopulta syntynyt lisäviivästymisiä projektiin. Sähköpostin ja tapaamisten lisäksi ryhmän tärkeimmäksi kommunikointimuodoksi muodostui oma IRC-keskustelukanava jota käytimme päivittäin. 4. Kehittämisnäkymiä Joskaan todellista käyttöä sovellukselle ei varmaankaan löydy, mutta sitä voi hyvin käyttää tulevien opiskelijaprojektien pohjana mahdollista jatkokehittämistä varten. Konkreettisia kehittämisen kohteita voisi olla esimerkiksi graafinen käyttöliittymä ja toimintaympäristön laajentaminen lähiverkosta vapaavalintaiseen internet-sijaintiin, johon liittyen myös tarvitaan myös tietoturvan kehittämistä. 5. Loppusanat Mielestämme onnistuimme projektissa hyvin, ohjelmisto toimii kuten vaatimusmäärittelyssä odotettiin ja ryhmätyössä päästiin haasteiden kautta haluttuun tavoitteeseen, mikä oli antoisaa. Projektissa oli paljon uuden oppimista, niin teknologioista kuin myös ohjelmistotuotantoprosesseistakin. Ohjelmistotuotantoprojektin ilmeinen opetus on että mitä useampi ihminen ohjelmistoa toteuttaa, sitä enemmän vaaditaan suunnittelua, dokumentointia ja ryhmätyön koordinointia suhteessa itse toteutusvaiheeseen. Nämä asiat kohtasimme käytännössä ja siksi kurssi tuntuikin varsin opettavaiselta kokemukselta. 5