Pelialalle suuntaavat opinnot ohjelmistotuotannon alueella

Samankaltaiset tiedostot
arvostelija OSDA ja UDDI palveluhakemistoina.

Selainpelien pelimoottorit

Tehostettu kisällioppiminen tietojenkäsittelytieteen ja matematiikan opetuksessa yliopistossa Thomas Vikberg

Tietokonepelit ohjelmistotuotantoprojektin aiheena pelialan orientoivassa korkeakouluopetuksessa

ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto

Tietojärjestelmätieteen ohjelmat

Katsaus korruption vaikutuksesta Venäjän alueelliseen talouskasvuun ja suoriin ulkomaisiin investointeihin

Computing Curricula raportin vertailu kolmeen suomalaiseen koulutusohjelmaan

Lyhyesti uusista DI-ohjelmista Isohenkilökoulutus to Opintoasianpäällikkö Mari Knuuttila

Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages

Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg

Pelinkehittäjäkoulutus. Jouni Huotari

TIETOJENKÄSITTELYTIEDE

Aika/Datum Month and year Kesäkuu 2012

Tutkittua tietoa. Tutkittua tietoa 1

Koht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa

Myös opettajaksi aikova voi suorittaa LuK-tutkinnon, mutta sillä ei saa opettajan kelpoisuutta.

Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan

Digitaalisten pelit hyvinvoinnin edistämisessä

Ohjelmistoprosessit ja ohjelmistojen laatu Ohjelmistoprosessit ja ohjelmistojen laatu (4op)

Pelisuunnittelua tulevaisuudessa. Karoliina Korppoo / Colossal Order

Arkkitehtuurinen reflektio

Tietotekniikan laitoksen uusi linja

General studies: Art and theory studies and language studies

Englanninkielisten tutkintojen tarjonta suomalaisissa korkeakouluissa. Korkeakoulu- ja tiedepolitiikan sektoritutkimuksen tutkijatapaaminen 2008

! #! %! & #!!!!! ()) +

Tietojenkäsittelytieteen tutkintovaatimukset

Testauspäivä Hannu-Matti Järvinen

TSSH-HEnet : Kansainvälistyvä opetussuunnitelma. CASE4: International Master s Degree Programme in Information Technology

Kieli- ja viestintäkoulutus Languages and communication. Tieto- ja sähkötekniikan tiedekunta

Ohjelmistojen mallintaminen. Luento 11, 7.12.

A4.1 Projektityö, 5 ov.

Ammatillinen opettajakorkeakoulu

Kohti matematiikan opettajuutta - aineenopettajaopiskelijoille suunnatut matematiikan opintojaksot

Opettajatuutorointi-kurssin syksyn 2006 kyselyjen tulokset

Luonnontieteiden popularisointi ja sen ideologia

Vaasan yliopisto Vasa Universitet University of Vaasa. Tekniikan ja innovaatiojohtamisen yksikkö School of Technology and Innovations

Organisaatio- a ja yhteiskuntaosaaminen. - ja vuorovaikutusosaaminen istoiminnan osaaminen toimintaosaaminen. Kansainvälisyysosaaminenn

Tutkinnonuudistus ja uudet DI-ohjelmat / Teknillinen fysiikka ja matematiikka. Infotilaisuus

Matematiikka ja tilastotiede. Orientoivat opinnot /

Tutkinnonuudistus ja uudet DI-ohjelmat Master s Programme in Information Networks

PELIALAN KEHITYS POHJOIS-SAVOSSA

DIPLOMITYÖ ARI KORHONEN

Naps ja Bloom teollisuusrobotiikan Peda-Forum,

OHJ-2710 Peliohjelmointi. Syksy 2012 Timo Kellomäki

Kurssin tavoitteista uennot. 4.1 Projektityö, 5 ov. Esitietovaatimukset

TIETOTEKNIIKKA Koodi Vanha opintojakso op ov Vastuuhenkilö LV vastaavat opinnot tai korvaava suoritustapa TTE.

Aalto Service Factory

Koulutusvastuun sisäinen jakautuminen Tampereen yliopistossa

Käytettävyyslaatumallin rakentaminen web-sivustolle. Oulun yliopisto tietojenkäsittelytieteiden laitos pro gradu -suunnitelma Timo Laapotti 28.9.

Näkökulmia tietoyhteiskuntavalmiuksiin

Yliopisto-opinnoissa karttuvat työelämätaidot. Eila Pajarre, Mira Valkonen ja Sanna Kivimäki TTY

Laaja-alainen, opiskelijalähtöinen ja projektiperusteinen opetussuunnitelma, case Monitori

VÄRE premises Sari Dhima

Ajatuksia ohjelmistoliiketoiminnan nykytilasta

Visualisointi informaatioverkostojen Opintoneuvoja Teemu Meronen (päivitys Janne Käen visualisoinnin pohjalta)

Tekes the Finnish Funding Agency for Technology and Innovation. Copyright Tekes

TIETOTEKNIIKAN KOULUTUSOHJELMA

FYSIIKAN JA MATEMATIIKAN LAITOS, JOENSUU 1. vuosikurssi 2. vuosikurssi 3. vuosikurssi

PELIEN KEHITYSTÄ (OHJELMOINTIA) OPISKELIJOIDEN KANSSA

Constructive Alignment in Specialisation Studies in Industrial Pharmacy in Finland

Sulautuva sosiaalityö

Ammatti: Pelisuunnittelija

Ohjelmistoarkkitehtuurit. Syksy 2010

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

Using Webcasting to Enhance University Level Education

21 May 15 June In Rovaniemi and Pori Levi HL ja JH

Tärkeää huomioitavaa:

Englannin kielen ja viestinnän ja ammattiaineiden integrointiyhteistyö insinöörikoulutuksessa

Kansainväliset opiskelijat Tampereen yliopistossa. Kaisa Kurki Kansainväliset asiat

Hallintomallit Suomen valtionhallinnon tietohallintostrategioissa

Testaaminen ohjelmiston kehitysprosessin aikana

DIGITAALINEN MARKKINOINTI ELINTARVIKEALALLA EKM-102

Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO

OHJELMISTOKEHITYS -suuntautumisvaihtoehto

AUDIOVISUAALISEN VIESTINNÄN AMMATTITUTKINTO. Valmistavan koulutuksen koulutussuunnitelma, peligrafiikan osaamisala

Software engineering

Matematiikka. Orientoivat opinnot /

Tietokantapohjaisen arviointijärjestelmän kehittäminen: kohti mielekästä oppimista ja opetusta

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

Käyttökokemuksen evaluoinnista käyttökokemuksen ohjaamaan suunnitteluun. ecommunication & UX SUMMIT Eija Kaasinen, VTT

Vuoden 2015 opiskelijavalintojen aloituspaikkamäärät

Orientaatiopäivät

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

MATEMATIIKAN AINEENOPETTAJANKOULUTUS HELSINGIN YLIOPISTOSSA

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science

Laskennallinen yhteiskuntatiede

Tietotekniikan koulutusohjelman suuntautumisvaihtoehdot

Aalto University School of Engineering Ongelmaperusteisen oppimisen innovatiivinen soveltaminen yliopisto-opetuksessa

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

ruovedellä pohjois-hämeessä. lepounit.com (yritys) lepo.net (oma)

Tietotekniikan koulutus ammattikorkeakouluissa 2012 Uudellamaalla

JATKO-OPINTOJA TIETOTEKNIIKASTA KIINNOSTUNEILLE

Tietoyhteiskunnan perustaidot. Kesäkuu 2014

SIIRTYMÄSÄÄNNÖT MAISTERIN TUTKINNON KOULUTUSOHJELMAN OPINNOISSA LUKUVUONNA

Trialogisen oppimisen suunnitteluperiaatteet

SELL Student Games kansainvälinen opiskelijaurheilutapahtuma

Ohjelmistotekniikan menetelmät, kesä 2008

KANSILEHDEN MALLISIVU

XML-tutkimus Jyväskylän yliopistossa

Transkriptio:

hyväksymispäivä arvosana arvostelija Pelialalle suuntaavat opinnot ohjelmistotuotannon alueella Olli Sinerma Helsinki 15.4.2008 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta Fakultet Faculty Laitos Institution Department Matemaattis-luonnontieteellinen tiedekunta Tekijä Författare Author Olli Sinerma Työn nimi Arbetets titel Title Tietojenkäsittelytieteen laitos Pelialalle suuntaavat opinnot ohjelmistotuotannon alueella Oppiaine Läroämne Subject Tietojenkäsittelytiede Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages Tiivistelmä Referat Abstract 15.4.2008 12 sivua Tämä Pro Gradu -seminaarityö käsittelee pelialan koulutuksesta saatavia hyötyjä ohjelmistotuotannon opetuksessa. ACM Computing Classication System (CCS): D.2 [Software Engineering], J.4 [Social and Behavioral Sciences], K.3.2 [Computer and Information Science Education] Avainsanat Nyckelord Keywords Peliteollisuus, ohjelmistotuotanto, ohjelmistotuotannon opetus Säilytyspaikka Förvaringsställe Where deposited Muita tietoja övriga uppgifter Additional information

ii Sisältö 1 Johdanto 1 2 Pelialan kehitys 1 2.1 Peliala Suomessa............................. 2 3 Peliprojektin toteutusvaiheet 2 3.1 Konseptointi................................ 3 3.2 Analyysi.................................. 3 3.3 Suunnittelu................................ 3 3.4 Toteutus.................................. 4 3.5 Testaus ja laadunvarmistus........................ 4 4 Pelikehitys opetuksessa 5 4.1 Pelikehityksen hyödyt ohjelmistotuotannon opetuksessa........ 6 4.2 Pelialan koulutus Suomessa....................... 7 4.3 Pelien modaaminen ohjelmistotuotannon opetuksen apuvälineenä.. 7 4.4 IGDAn suositus pelialan opetukseen................... 8 4.5 Kokemuksia pelien teosta korkeakoulun ohjelmistotuotantoprojektissa 8 4.6 Peliohjelmiston toteutus ilman ohjelmointia.............. 8 5 Yhteenveto 9 Lähteet 9

1 1 Johdanto Peliteollisuus on globaali viihdeteollisuuden haara, joka on kasvanut lähes elokuvateollisuuden mittoihin. Laadukkaan pelituotteen tekeminen uuden sukupolven konsoleille vaatii nykyisin usean eri alan ammattilaisen yhteistyötä. Käsikirjoittajat, ohjelmoijat, lakiasiantuntijat, ääniteknikot ja graakot saattavat työskennellä yli viisi vuotta yhden peliprojektin parissa. Ohjelmistotekniikan alueelta peliprojektit vaativat erilaisia taitoja prosessien hallinnasta aina hyvin spesien hajautettujen algoritmien hallintaan. Viihde- ja tietotekniikan alueella on useita koulutusohjelmia, mutta harva niistä on suunnattu juuri pelialalle. Alan kasvun suurimpana riskinä Suomessa pidetään osaavan työvoiman loppumista. Ulkomailta on saatu hyviä kokemuksia peliaiheisten ohjelmistotuotantoprojektien järjestämisestä. Opiskelijat ovat olleet motivoituneita saamiinsa työtehtäviin ja he ovat oppineet taitoja, joita voi seoveltaa ohjelmistotuotannon työtehtävissä. 2 Pelialan kehitys Pelaamisesta on tullut yhä suurempi tekijä viihdealalla. Vuonna 2004 Internet Gaming Networkin mukaan [Boy08] keskimääräinen pelaaja käytti pelaamiseen aikaa 20 ja aktiivinen pelaaja yli 40 tuntia viikossa. Aktiivinen pelaaja kulutti peleihin noin 700 USD vuodessa. Vuonna 2007 peliala kasvoi Yhdysvalloissa 43 prosenttia edellisvuodesta, sen kokonaisliikevaihdon noustessa 17.9 miljardiin USD. Pelien suosion kasvaessa ovat ne myös joutuneet kilpailemaan keskenään. Kilpailun myötä pelien tekokustannukset ovat kasvaneet merkittävästi. Vuonna 1982 Namco tuotti Pacman-pelin alle 100 000 USD kokonaiskustannuksilla. Vuonna 2004 suurimpien peliprojektien kehityskustannukset olivat 15-20 miljoonan dollaria. Vuonna 2008 PlayStation 3 ja Xbox 360 -pelikonsoleille 15 miljoonaa dollaria on enää keskikokoisen pelin toteutushinta. [Tak07]

2 2.1 Peliala Suomessa Valtaosa kotimaisoista pelialan yhtiöistä on perustettu vuoden 2000 jälkeen, tämä kasvu johtui Tekesin antamasta rahoituksesta kotimaiselle peliteollisuudelle. Kotimaisten pelialan yritysten yhteenliittymä Neogames luokittelee Suomessa toimivat pelialan yrityksen kolmeen ryhmään.[neo06] Yhtiöt joiden tuloksesta yli puolet tulee peleistä. Yhtiöt joiden liiketoimintaa pelit tukevat. Yhtiöt, joiden strategiseen linjaukseen on kirjattu pelit. Pelitaloiksi kutsutaan ensimmäisen ryhmän yrityksiä, joiden päätoimialana ovat pelit. Kotimaisista pelitaloista tunnetuimpia ovat PC- ja konsoliympäristöihin suuren kokoluokan pelejä tekevät Remedy ja Bugbear. Pienempien, matkapuhelimiin valmistettavien mobiilipelien tekijöistä tunnetuimpia ovat Mr.Goodliving ja Sumea. Vuonna 2004 suoritetussa tutkimuksessa havaittiin, että valtaosa kotimaisista pelitaloista on yhä pieniä, 1-5 hengen yrityksiä. Yritysten liiekevaihto oli myös yhtiöissä verrattain pieni. Yli puolet alan yhtiöistä tuotti alle 200 000 euroa vuodessa. Toisaalta lähes neljännes tutkituista yrityksistä saavutti yli miljoonan euron liikevaihdon. Vuonna 2004 kotimaisen pelialan liikevaihto oli 40 miljoonaa euroa ja vuoteen 2005 mennessä se oli kasvanut 62 prosenttia noin 65 miljoonaan euroon. Alan arvioidaan kasvavan Suomessa 20-35 prosenttia vuosittain vuoteen 2012 saakka. Nokian vahva panostus pelien kehitykseen Suomessa on vaikuttanut siihen, että valtaosa kotimaisista pelitaloista tekee mobiilipelejä. Suomessa on myös muusta maailmasta poiketen vahva tv-pelikanta, jossa käyttäjä voi puhelimensa välityksellä vaikuttaa interaktiivisesti televisio-ohjelmaan puhelimensa välityksellä. 3 Peliprojektin toteutusvaiheet Peli on enemmän kuin pelkkä toteutettu ohjelmisto. Pelin on tarjottava käyttäjälle viihdearvoa toteutetulla sisällöllään. Tämä erottaa peliprojektin tavallisesta ohjelmistoprojektista. Peliprojektiin myös osallistuu useiden eri alojen työntekijöitä, joista kaikilta ei voida olettaa olevan ohjelmistotekniikan osaamista.

3 Pelien pitää menestyäkseen tuoda pelaajille uusia kokemuksia. Tämä vaatii uusien tekniikoiden käyttöä ja pelien valmistumista tiukassa aikataulussa, jotta kilpailijat eivät ehdi julkaisemaan samaa innovaatiota käyttävää peliä ensin. Nämä tuovat riskejä peliprojektiin ja peliprojektien hallinta onnistuu vain hyviä ohjelmistotuotannon menetelmiä seuraamalla. Näiden standartoitujen hallintamenetelmien lisäksi peliprojektien hallintaa tulee myös jatkuvasti tehostaa. [Max06], [Mcc05] Seminaariesityksessään "Software Engineering in Games"[LiW03] Lichtl ja Wurtzel jakavat pelinkehitysprosessin viiteen osaan. 3.1 Konseptointi Konseptoinnissa kehitetään pelin idea, asetelma, ympäristö, hahmot ja laitealustaehdotus toteutukselle. Konseptia käytetään peliprojektin myynnissä julkaisijalle, joka rahoittaa osan pelin toteutuksen kustannuksista. Pelikonseptissa kuvataan lyhyesti pelin pääpiirteet ja sen kilpailuvaltit olemassa oleviin peleihin verrattuna. 3.2 Analyysi Analyysivaihe on pelin vaatimusmäärittely, jonka pelin toteuttava pelitalo tekee julkaisijan toimiessa asiakkaana. Analyysiviaheessa pelistä toteutetaan konseptin pohjalta vaatimusmäärittely-dokumentti (Overall Game Design Document), jossa vaatimukset ovat hyvin yleismaallisia pelissä olevia ominaisuuksia. Esimerkiksi: "Pelissä on 40 kenttää, joista 10 aavikkokartassa, 10 sateenkaarimaailmassa ja 20 tulivuoressa". Analyysissä monet vaatimukset ovat pitkälti implisiittisiä, eikä niitä kirjata erikseen. Peliltä implisiittisesti odotetaan, että sen pelaajalle tarjoamat ominaisuudet toimivat niin, etteivät ne ärsytä käyttäjää (esimerkiksi pitkät latausajat, katkeileva verkkoyhteys ja käyttöliittymän haasteet). 3.3 Suunnittelu Suunnitteluvaiheessa määritellään pelin ominaisuudet konseptointia ja analyysiä tarkemmin. Suunnitteluvaiheessa määritellään mitä ominaisuuksia pelissä tulee olla, jotta se on käytettävä. Jokaisesta pelin osa-alueesta kirjoitetaan ennen toteutusta suunnitteludokument-

4 ti (Game Design Document). Pelihahmoista, kentistä, käyttöliittymästä ja muista osa-alueista tulee jokaisesta oma dokumenttinsa. Dokumentointia seuraa osa-alueen toteutus, jonka jälkeen toteutettua ominaisuutta testataan. Pelin teknisen arkkitehtuurin toteutus hajoitetaan suunnittelussa erillisiin moduuleihin. Jokainen pelin itsenäisistä moduuleista määritellään, suunnitellaan ja dokumentoidaan erikseen. Moduulit voivat olla esimerkiksi verkkopelin toteutus, fysiikan toteutus, graikan piirto ruudulle ja välianimaatioiden teko. Suunnitteluvaiheessa haetaan myös mahdollisuuksia käyttää jo olemassa olevaa pelitalon sisäistä teknologiaa tai tehdään päätös sen ostamisesta ulkopuoliselta tarjoajalta uusien osien edullisempaa toteutusta varten. Jokaisen moduulin rinnalla kirjoitetaan siitä yksityiskohtianen tekninen suunnitteludokumentti. Dokumentissa kerrotaan perustelut valituille teknisille ratkaisuille ja kuvataan niitä yksityiskohtaisesti. Peliprojekteissa on tavallista, että sama henkilö ei toteuta tiettyä ominaisuutta loppuun vaan, että tekijä vaihtuu kesken tuotannon. Tämän vuoksi koodin kommentointi ja yksityiskohtaisen teknisen suunnitelman teko on tärkeää. 3.4 Toteutus Toteutusvaiheessa suunnitelmasta toteutetaan pelattava ohjelmisto. Tässä vaiheessa tuotetaan pelin graikka, musiikki, äänet, ohjelmistokoodi, tehtävät ja muut osaalueet. Huomionarvoista on, että ohjelmistokoodi on vain yksi, vaikkakin tärkeä, osa pelin toteutusta. Jokaista pelin osa-aluetta myös testataan toteutuksen ajan. Pelitestaajat verioivat ohjelmiston vastaavan suunnitelmaa ja pelisuunnittelijat varmistavat, että pelituntuma on hauska ja pelaaja ymmärtää pelin asettamat tavoitteet. Pelikehityksessä suunnittelu ja kehitys kulkevat monessa suhteessa rinnakkain. Suunnittelua saatetaan muuttaa totutuksen jälkeen pelitestauksessa saadun käyttäjäpalautteen perusteella. 3.5 Testaus ja laadunvarmistus Testauksessa kiinnitetään huomiota ohjelman toimimiseen halutulla tavalla (validointiin) ja sen viihdyttävyyteen. Validointi suoritetaan vertaamalla toteutusta suunnitelmaan. Viihdearvon toteutuminen varmennetaan pelitestaamalla eri käyttäjäryhmiä.

5 Pelitestauksessa pyritään havaitsemaan mahdolliset ongelmat, joita pelaaja kohtaa ennenkuin peli menee myyntiin. Tällaisia voivat olla mahdolliset pelissä olevat tarkoituksettomat huijauskeinot, epäselvästi annetut ohjeet ja liian nopeasti kasvava vaikeustaso. Pelitestauksen avulla pyritään parantamaan pelin antamaa viihdearvoa ja se on pelkästään pelikehityksestä löytyvä testaamisen muoto. Ohjelmisto myös yksikkötestataan ja järjestelmätestataan virheiden löytämiseksi. Kun ohjelmisto kokonaisuudessaan läpäisee pelitalon sisäisen testauksen luovutetaan se ulkopuoliselle laadunvarmistus-yritykselle. Laadunvarmistusksessa ohjelmassa ei enää saa olla sen kaatavia ongelmia tai muita selviä virheitä. Laadunvarmistus tarkastaa, että ohjelma läpäisee laitealustan sille asettamat yksityiskohtaiset spesikaatiot, kuten valikoiden sekä manuaalin sisällön ja käytetyn termistön oikeellisuuden. Laadunvarmistuksen läpäissyt peliohjelmisto nimetään Gold Master -versioksi ja toimitetaan levitettäväksi loppukäyttäjille (pelaajille). 4 Pelikehitys opetuksessa Pelialan yhtiöt haluavat C ja C++ ohjelmoijia, joilla on perustaidot ohjelmoinnista, ohjelmisto arkkitehtuureista, algoritmeista, tietorakenteista, graikasta, tietoliikenteestä, ohjelmistokehityksestä ja riittävät taidot matematiikasta ja fysiikasta. Kyse on siis tietojenkäsittelytieteen kandidaatin tutkintoon vaadittavien perus- ja aineopintojen kokonaisuudesta [TKT07], eli samoista ohjelmistokehityksen taidoista kuin mitä vaaditaan muissakin ohjelmistotuotantoyrityksissä. Näiden ominaisuuksien lisäksi pelialan yhtiöt toivovat seuraavia ominaisuuksia uusilta työntekijöiltä, joista kaksi ensimmäistä toivetta ovat työpohjaista kokemusta vaativia ja kolme jälkimmäistä henkilökohtaisia ominaisuuksia korostavia.[prk05] Kokemusta suuressa projektissa työskentelystä. Kokemusta pelin, modin tai pelikäännöksen teosta. Näyttöä, että työntekijä osaa työskennellä myös ei-teknisten henkilöiden, kuten graakoiden ja pelisuunnittelijoiden kanssa. Kiinnostusta uuden oppimiseen. Tuntemusta pelialan tämänhetkisestä tilanteesta.

6 Pelitalot toivoivat koulutuslaitosten käyttävän opetuksessaan myös kaupallisia ohjelmia, kuten Direct X:ää, koska niitä käytetään yritysmaailmassa enemmän kuin vapaita ohjelmia kuten Open GL:ää. 4.1 Pelikehityksen hyödyt ohjelmistotuotannon opetuksessa Rudy Rucker [Ruc02] ja Randolph M. Jones [Jon00] ovat listanneet syitä, joiden vuoksi tietokonepelien kehitys sopii erityisen hyvin tietojenkäsittelytieteen opetukseen ohjelmistotuotannosta. Laajuus Pelikehitys vaatii osaamista usealta eri ohjelmistokehityksen alueelta. Esimerkiksi projektin hallinta, algoritmit, teko-äly, käyttöliittymät, graikka ja testaus. Montaa näistä käsitellään tietojenkäsittelytieteen perusopinnoissa. Näin opiskelijat pääsevät käyttämään oppimiaan taitoja käytännössä. Syvyys Peliprojektissa käydään lävitse koko ohjelmistotuotannon kehityskaari vaatimusmäärittelystä valmiin ohjelmiston julkistukseen. Tänä aikana tarvitaan usean eri osaamistason henkilökuntaa yksinkertaisten algoritmien teosta suuren luokan ohjelmistojen arkkitehtuurin suunnitteluun.tämä mahdollistaa eri tasoisten opiskelijoiden osallistumisen samaan projektiin. Motivaatio Pelien mielenkiintoisuuden ja helpon ymmärrettävyyden vuoksi opiskelijat ovat valmiiksi motivoituneita ja valmiita tekemään paljon työtä projektin eteen. Projektiin osallistuvat opiskelijat myös työskentelevät innokkaammin peliprojektin parissa, kuin tavallisessa ohjelmistotuotantoprojektissa. [PRK05] Reaaliaikainen ympäristö Peliohjelmiston toteutukseen liittyy olennaisesti reaaliaikaisen ympäristön simulointi, jonka toteutuksesta saadut taidot, ovat käyttökelpoisia myös muissa projekteissa. Tietokonepelit sisältävät myös hyviä esimerkkejä ympäristöistä, joihin olio-pohjainen suunnittelu ja -ohjelmointi sopii.tämä tukee olioohjelmointikielten, kuten Javan, opetusta. Uran edistäminen

7 Valmis peliohjelmisto on ohjelmoinnin taidonnäyte, jota arvostetaan monessa ohjelmistoyrityksessä ja erityisesti pelialalla, jolla työskentelystä moni opiskelija on kiinnostunut. Peliprojektista saadut taidot ovat myös hyvin sovellettavissa muihin ohjelmistotuotantoprojekteihin. 4.2 Pelialan koulutus Suomessa Suomen pelialan koulutus tuottaa tällä hetkellä vuosittain noin 40 riittävät taidot omaavaa työntekijää alalle. Suurimpana riskinä kotimaisen peliteollisuuden kasvulle pidetään osaavan työvoiman pulaa. Suurin pula alalla on ohjelmoijista, mutta myös suunnittelijoille, graakoille ja osaavalle johdolle on kasvava tarve. Alkuperäistä toimintaa 90-luvulla ruokkinut demoskene -alakulttuuri, jossa ohjelmoidaan visuaalisesti näyttäviä pienikokoisia (4-64 kt) ohjelmia, ei enää pysty tuottamaan alalle tarpeeksi ammattitaitoisia ohjelmoijia. Suomalaisen pelialan koulutusta pidetään myös hajanaisena ja riittämättömänä, eikä se pysty tuottamaan ammittimaista työvoimaa vastaamaan alan tarpeisiin. Neogamesin asiamiehen KooPee Hiltusen arvion mukaan Suomeen tarvittaisiin tällä hetkellä ainakin 200 uutta aloituspaikkaa pelialan opiskelijoille. [Hil08] Pelialalle suuntaavia koulutusohjelmia on Suomessa Ammattikorkeassa Arto -ohjelmassa ja alalle kouluttavia kursseja Helsingin, Oulun, Tampereen ja Jyväskylän yliopistoissa. Ulkomailta pelialalle ohjaavia koulutusohjelmia löytyy Yhdysvalloista, Asutraliasta, Brasiliasta, Iso-Britanniasta, Ranskasta, Hong Kongista, Hollannista, Uudesta- Seelannista ja useista verkko-yliopistoista [Gam07]. 4.3 Pelien modaaminen ohjelmistotuotannon opetuksen apuvälineenä Pelien modaamisella tarkoitetaan jo olemassa olevan pelin muokkaamista. Pelien modaamien tuli helpommaksi, kun pelikehityksessä erotettiin logiikka, graikka, säännöt ja käyttöliittymä omiksi itsenäisesti kehitettäviksi kokonaisuuksikseen. Nykyisin monet pelit, kuten esimerkiksi Sins of the Solar Empire ja WarCraft 3 ovat suunniteltu helppoa modattavuutta tukien. [ElS06] Modaaminen on huomattavasti pelin alusta ohjelmointia nopeampaa. Pelin runko, säännöt ja kaikki toiminnalle välttämättömät ominaisuudet ovat valmiina. Käyttäjä voi muokata vain niitä ominaisuuksia, joita pelissä haluaa kehittää. Osa modeista

on jopa tullut alkuperäistä peliä suositummaksi, kuten ensimmäisen Half-Life -pelin Counter Strike-modi. 8 4.4 IGDAn suositus pelialan opetukseen International Game Developers Assosiation (IGDA) suosittaa korkeakouluille tieteenalojen välisten rajojen ylittävää koulutusohjelmaa, jossa opiskelija saa laajan pintapuolisen osaamisen kaikista pelikehitykseen liittyvistä osa-alueista. IGDAn suositus antaa ylhäältä-alas lähestymistavan pelialaan, eikä ota kantaa tuntimääriin tai opetuksen tyyliin. [IGD03] 4.5 Kokemuksia pelien teosta korkeakoulun ohjelmistotuotantoprojektissa Pohjois-Texasin yliopistossa toteutetussa peliohjelmointikurssissa opiskelijat suorittavat 11 harjoitustyötä, joista muodostuu kokonainen peli. Nämä harjoitustyöt lisäävät jokainen jonkin elementin peliin. Ensimmäinen harjoitustyö on peliruudun piirtäminen monitorille ja viimeinen antaa pelille jatkuuvuden tunteen tallentuvan pistetaulukon (High Score) -muodossa. [PKR06] 4.6 Peliohjelmiston toteutus ilman ohjelmointia Pelien tekoon on olemassa useita ohjelmia (Game Maker, Games Factory, Pie 3D) joiden käyttö vaatii vain vähän tai ei lainkaan ohjelmointiosaamista. Tällaisten ohjelmistojen avulla on voitu opettaa ei teknisesti suuntautuneille opiskelijoille tai opintonsa alkuvaiheessa oleville tekniikan opiskelijoille ohjelmistotuotantoa. [Cha06] Coloradon yliopistossa on asetettu kaksi tavoitetta tällaiselle kursseille. Motivoida opiskelijoita valmistumaan tietojenkäsittelytieteen maistereiksi Valmistella opiskelijoita tuleviin kursseihin Coloradon yliopistossa suoritetun kurssin tavotteiden saavuttamisesta kertovat tulokset eivät vielä ole valmistuneet. Opiskelijoiden motivaatiota on mitattu sykyjen 2003 ja 2004 välisillä kursseilla ja niissä on havaittu kasvanutta motivaatiota, mutta kurssista on vielä niin lyhyt aika, että vaikutusta valmistumiseen saakka motivoimiseksi ei ole vielä tarpeeksi.

9 5 Yhteenveto Lähteet BLH03 Blo04 Boy08 CaB96 ClC05 Cha06 Cos94 Cra82 DrK06 Dye00 Björk, S., Lundgren, S. ja Holopainen, J., Game design patterns. Level Up - 1st international Digital Games Research Conference 2003, Utrecht, Alankomaat, 2003. Blow, J., Game development: Harder than you think. Game Development: Serious Business, Serious Coding, 1,10(2004), sivut 2837. Boyer, B., Npd: 2007 u.s. game industry growth up 43 http://www. gamasutra.com/php-bin/news_index.php?story=17006. [14.4.2008] Carswell, L. ja Benyon, D., An adventure game approach to multimedia distance education. ACM SIGCSE Bulletin, osa 28, New York, NY, USA, 1996, sivut 122124. Claypool, K. ja Claypool, M., Teaching software engineering through game design. ACM SIGCSE Bulletin, 37,3(2005), sivut 123127. Chmillard, A., Introductory game creation: no programming required. Proc. SIGCSE Symp. Technical Symposium on Computer Science Education., Houston, Texas, USA, 2006, sivut 515519. Costikyan, K., I have no words, but i must design. Interactive Fantasy,,2. Crawford, C., The art of computer game design. Mcgraw-Hill Osborne Media, 1982. [Myös http://www.vancouver.wsu.edu/fac/peabody/ game-book/coverpage.html, 14.4.2008]. Drake, P. ja Kerr, N., Developing a computer strategy game in an undergraduate course in software development using extreme programming. Journal of Computing Sciences in Colleges, 22,2(2006), sivut 3945. Dyer-Witheford, N., Mapping the canadian video and computer game industry, 2004. publish.uwo.ca/~ncdyerwi/mapping-queens.pdf. [14.4.2008]

10 ElS06 Fal99 El-Nasr, M. ja Smith, B., Learning through game modding. Computers in Entertainment, 4,1(2006). Faltin, N., Designing courseware on algorithms for active learning with virtual board games. Proc. 4th annual SIGCSE/SIGCUE ITiCSE conference on Innovation and technology in computer science education, Cracow, Puola, 1999, sivut 135138. Gam07 Gamedev.net, Gamedev.net - schools, 2007. http://www.gamedev. net/reference/list.asp?categoryid=77. [14.4.2008] Hil08 Hiltunen, K., Pelialan koulutus ja sen kehitystarpeet, 2008. http:// www.luotu.fi/file/show/34/koopee%20hiltunen.pdf. [14.4.2008] IGD03 IGDA, Igda: Curriculum framework, 2003. http://www.igda.org/ academia/igda_curriculum_framework_feb03.pdf. [14.4.2008] Jon00 Jär08 Jones, R., Design and implementation of computer games: a capstone course for undergraduate computer science education. ACM SIGCSE Bulletin., 32,1(2000), sivut 260264. Järvinen, A., Games without Frontiers: Theories and Methods for Game Studies and Design. Acta Electronica Universitatis Tamperensis, Tampere, 2008. TKT07 laitos, H. Y. T., Opinto-opas 2007-2008, 2007. http://www.cs. helsinki.fi/opinnot/opinto-opas/opas2007_2008_paivitetty. pdf. [14.4.2008] LiW03 Lichtl, B. ja Wurzer, G., Software engineering in games, 2003. http://www.cg.tuwien.ac.at/courses/seminar/ss2001/se/se_ in_games.pdf. [14.4.2008] Man03 Max06 Mcc05 Mancher, M., Get in the game. New Riders Publishing, Indianapolis, 2003. Maxim, B., Game development is more than programming. Proc. ASEE Conf. Excellence in Education, Chicago, IL, 2006. McCarthy, P., Software engineering and game development. Uwp computer science and software engineering technical report, University of Wisconsin-Platteville, Wisconsin-Platteville, 2005.

11 Mos97 Neo06 Neo07 PKR06 PRK05 Moser, R., A fantasy adventure game as a learning environment: why learning to program is so dicult and what can be done about it. ACM SIGCSE Bulletin, 29,3(1997), sivut 114116. Neogames, Finnish Game Companies. Uudenmaan TE-keskus, Tampere, 1982. [Myös http://www.hermia.fi/neogames/tutkimukset_ja_ julkaisut/?x11656=46867, 14.4.2008]. Neogames, Suomen peliteollisuus 2007, 2007. http://www.hermia.fi/ neogames/tutkimukset_ja_julkaisut/?x11656=46835. [14.4.2008] Parberry, I., Kazemzadeh, M. ja Roden, T., The art and science of game programming. Proc. SIGCSE Symp. Technical Symposium on Computer Science Education., Houston, Texas, USA, 2006, sivut 510 514. Parberry, I., Roden, T. ja Kazemzadeh, M., Experience with an industry-driven capstone course on game programming: extended abstract. ACM SIGCSE Bulletin, 37,1(2005), sivut 9195. Ruc02 Rucker, R., Software Engineering and Computer Games. Addison- Wesley Longman Publishing Co., Boston, MA, USA, 2002. RoY07 Sch01 SDS05 Tak07 Wal03 Rocco, D. ja Yoder, D., Design of a media and gaming sequence for graduates in applied cs. Journal of Computing Sciences in Colleges, 22,5(2007), sivut 131137. Schirra, J., Computer game design: How to motivate engineering students to integrate technology with reection. Proc. 4th UICEE Annual Conference on Engineering Education, Bangkok, Thaimaa, 2001, sivut 941945. Sweedy, E., delaet, M., Slattery, M. ja Kuner, J., Computer games and cs education: why and how. Proc. 36th SIGCSE techincal symposium on Computer science education, New York, NY, USA, 2005, sivut 256257. Takatsuki, Y., Cost headache for game developers, 2007. http://news. bbc.co.uk/1/hi/business/7151961.stm. [14.4.2008] Walther, B., Playing and gaming: Reections and classications. Game Studies, 3,1(2003).

12 WBP06 Yu02 ZaB07 Wolz, U., Barnes, T., Parberry, I. ja Wick, M., Digital gaming as a vehicle for learning. Proc. of the 37th SIGCSE technical symposium on Computer science education, Houston, Texas, USA, 2006, sivut 394 395. Yu, C., Developing a game programming course for computer science majors in a liberal arts college. Proc. First international Conference on Information Technology Applications (ICITA), 2002. Zagal, J. P. ja Bruckman, A., From gamers to scholars: Challenges of teaching game studies. Proc. of the Digital Interactive Games Research Association Conference, Tokio, Japani, 2007, sivut 575582.