Serious game development: Software engineering of a goal-directed interactive mobile application for work preparatory training
Description
Full text not available
Abstract
I denne rapporten beskriver vi et prosjekt vi har gjennomført i samarbeid med Halden Arbeid og Vekst. Vi er to datavitenskap-studenter som har fullført en bacheloroppgave. Oppgaven har gitt oss mange nyttige erfaringer innen prosjektplanlegging, oppgavetolkning og full stack-utvikling.Oppgaven vi løste for Halden Arbeid og Vekst var å utvikle en seriøs spillapplikasjon som kan brukes som et hjelpemiddel under veiledningsrådgivning. De tilbyr arbeidsforberedende opplæring for en mangfoldig gruppe individer som står utenfor dagens arbeidsmarked. For å støtte målet deres om å hjelpe mennesker som trenger bistand til å komme tilbake i arbeid eller aktivitet, benytter organisasjonen for øyeblikket flere digitale verktøy. Disse verktøyene dekker imidlertid ikke alle behovene til noen av klientene deres.Vi utviklet et svært tilpasningsdyktig, målorientert seriøst spill. Vår løsning på oppgaven var en demonstrator av et seriøst spill som kan brukes både under og utenfor veiledningsrådgivning på mobile enheter. Spillet handler om å besvare quizspørsmål som kommer i ulike quiz-formater.Brukerne spiller gjennom spillet ved å velge et emne de ønsker å utfordre seg selv på. Hvert emne inneholder en hub der økende nivåer blir vist. Hvert nivå benytter seg av en av mange quiz-formater, og brukeren må fullføre det siste ulåste nivået for å låse opp neste nivå. Fullførte nivåer vises annerledes enn ufullførte, og de kan alltid spilles på nytt.For å få full forståelse av hva seriøse spill er, brukte vi mye tid på å forske på emnet. Å følge gode designprinsipper har også vært en prioritet for å gjøre spillapplikasjonen mer tilgjengelig for alle. Det seriøse spillet ble designet for å være svært tilpasningsdyktig, slik at innholdet i spillene kan justeres. Vi implementerte muligheten til å opprette, redigere eller slette emner, nivåer og spørsmål.For å gjøre utviklingsprosessen jevnere, fulgte vi den smidige metodikken for programvareutvikling. Dette innebar ukentlige møter med klienten, sprinter og daglige stand-ups innad i gruppen. Under de ukentlige møtene ga klienten nyttige tilbakemeldinger og innsikt i hvordan de ønsket at applikasjonen skulle fungere. Dette hjalp oss med å styre utviklingen av spillet i riktig retning og tillot oss å imøtekomme brukernes behov.Rapporten starter med en forklaring av den teoretiske basisen for utviklingen av det seriøse spillet, etterfulgt av en beskrivelse av det ferdige spillet, og tilslutt en beskrivelse av utviklingsprosessen. In this report, we describe a project we have carried out in collaboration with Halden Arbeid og Vekst. We are two computer scientist students who have completed a bachelor thesis. The task has offered many useful experiences such as project planning, task interpretation and full stack development. The task we solved for Halden Arbeid og Vekst was to create a serious game application to be used as an assistive tool during guidance counseling. They offer work preparatory training for a diverse range of individuals that stand outside of today's job market. To support their goal of assisting people who need help to return to work or activity, the organization currently utilizes several digital tools. However, these tools do not provide adequate coverage for some of their clients.We developed a highly customizable goal-directed serious game. Our solution to the task was a demonstrator of a serious game that can be used during and outside of guidance counseling on mobile devices. The game revolves around answering quiz questions that come in a variety of quiz-formats. Users play through the game by selecting a subject they want to challenge themselves in. Subjects contain a hub, where incrementing levels will be displayed. Each level utilizes one of many quiz-formats, and the user needs to complete their latest unlocked level in order to unlock the next. Completed levels displays differently from uncompleted ones and can always be replayed.To fully understand what serious games are, a lot of time was spent on researching the topic. Following good design principles has also been of priority, making the serious game application more accessible to everyone. The serious game was designed to be highly customizable, allowing adjustments to the games content. We implemented the possibility to create, edit, or delete subjects, levels and questions. To make the development process smoother, we followed the agile methodology of software development. It involved weekly meetings with the client, sprints, and daily stand-ups within the group. During the weekly meetings, the client gave good feedback and insight on how they wanted the application to work. This helped guide the development of the game in the right direction and allowed us to engage with the user’s needs.The report starts with us explaining the theoretical basis for the development of the serious game, further a description of the finished product, and finally a description of the development process.