26 resultados para Computer game -- Programming
em Doria (National Library of Finland DSpace Services) - National Library of Finland, Finland
Resumo:
The computer game industry has grown steadily for years, and in revenues it can be compared to the music and film industries. The game industry has been moving to digital distribution. Computer gaming and the concept of business model are discussed among industrial practitioners and the scientific community. The significance of the business model concept has increased in the scientific literature recently, although there is still a lot of discussion going on on the concept. In the thesis, the role of the business model in the computer game industry is studied. Computer game developers, designers, project managers and organization leaders in 11 computer game companies were interviewed. The data was analyzed to identify the important elements of computer game business model, how the business model concept is perceived and how the growth of the organization affects the business model. It was identified that the importance of human capital is crucial to the business. As games are partly a product of creative thinking also innovation and the creative process are highly valued. The same applies to technical skills when performing various activities. Marketing and customer relationships are also considered as key elements in the computer game business model. Financing and partners are important especially for startups, when the organization is dependent on external funding and third party assets. The results of this study provide organizations with improved understanding on how the organization is built and what business model elements are weighted.
Resumo:
Tämä kandidaatintyö tutkii tietotekniikan perusopetuksessa keskeisen aiheen,ohjelmoinnin, alkeisopetusta ja siihen liittyviä ongelmia. Työssä perehdytään ohjelmoinnin perusopetusmenetelmiin ja opetuksen lähestymistapoihin, sekä ratkaisuihin, joilla opetusta voidaan tehostaa. Näitä ratkaisuja työssä ovat mm. ohjelmointikielen valinta, käytettävän kehitysympäristön löytäminen sekä kurssia tukevien opetusapuvälineiden etsiminen. Lisäksi kurssin läpivientiin liittyvien toimintojen, kuten harjoitusten ja mahdollisten viikkotehtävien valinta kuuluu osaksitätä työtä. Työ itsessään lähestyy aihetta tutkimalla Pythonin soveltuvuutta ohjelmoinnin alkeisopetukseen mm. vertailemalla sitä muihin olemassa oleviin yleisiin opetuskieliin, kuten C, C++ tai Java. Se tarkastelee kielen hyviä ja huonoja puolia, sekä tutkii, voidaanko Pythonia hyödyntää luontevasti pääasiallisena opetuskielenä. Lisäksi työ perehtyy siihen, mitä kaikkea kurssilla tulisi opettaa, sekä siihen, kuinka kurssin läpivienti olisi tehokkainta toteuttaa ja minkälaiset tekniset puitteet kurssin toteuttamista varten olisi järkevää valita.
Resumo:
Ohjelmointitaito on asia, jonka oppimisesta ja opettamisesta voidaan olla montaa mieltä, eikä yhtä oikeaa tapaa toteuttaa ohjelmoinnin opetusta tunnu olevan olemassa. Se on kuitenkin selvää, että jotkin menetelmät ja työkalut tuntuvat olevan parempia kuin toiset. Lukuvuoden 2005-2006 päätteeksi Lappeenrannan teknillinen yliopisto päätti päivittää ohjelmoinnin perusopetusta, ja kokeili siirtymistä Python-ohjelmointikieleen ohjelmoinnin alkeiskursseilla. Koska kurssin varsinaiset muutokset keskittyivät tekniseen infrastruktuuriin, tutustuttiin alustavassa kirjallisuustutkimuksessa ensin erilaisiin lähestymistapoihin,aiempiin tapauksiin sekä mielekkäiden työkalujen löytämiseen. Tässä diplomityössä perehdytään ohjelmoinnin opetuksen työkaluihin sekä erityisesti Python-ohjelmointikielen hyödyntämiseen ohjelmoinnin perusopetuksessa. Diplomityö esittelee useita lähestymistapoja sekä keskittyy tutkimaan Pythonin soveltuvuutta alkeisopetuksen käyttötarkoituksiin. Diplomityö tutustuu myös Lappeenrannassa järjestetyn ohjelmoinnin perusteiden kurssin tuloksiin, ja analysoi sitä, pystyikö Python-pohjainen kurssi toteuttamaan teknisen yliopiston sille asettamat vaatimukset. Lopuksi aineistosta analysoidaan jatkotutkimuksen tarpeita sekä pyritään löytämään ne osa-alueet, joita näissä jatkotutkimuksissa tulisi vielä kehittää.
Resumo:
Perinteisten markkinointiviestintäkanavien menettäessä jatkuvasti tehoaan mediakentän ja kohderyhmien sirpaloituessa yhä pienempiin yksiköihin markkinointiorganisaatiot etsivät vaihtoehtoisia tapoja tavoittaakseen kohdeyleisönsä. Yksi vaihtoehtoinen markkinointiviestintäkeino on tuotesijoittelu (product placement), jossa (merkki)tuotteita sijoitetaan erilaisten viihdetuotantojen, kuten elokuvien, televisio-ohjelmien ja tietokonepelien, tarinan yhteyteen, jotta yhä medialukutaitoisempi kohdeyleisö ei pystyisi välttämään kaupallista viestiä esimerkiksi vaihtamalla televisiokanavaa tai kääntämällä lehden sivua. Koska tuote on sijoitettu kerrottavan tarinan sisään, markkinointiviestin — eli tuotteen havaitsemisen — välttäminen on huomattavasti vaikeampaa kuin perinteisten markkinointiviestintämenetelmien kohdalla. Lisäksi, sijoitellut tuotteet ovat tavallisesti kiinteässä yhteydessä tarinan juonen ja henkilöhahmojen kanssa siten, että tuote saa näistä yhteyksistä positiivista vahvistusta imagolleen. Pro Gradu-tutkielman tarkoituksena oli selvittää tuotesijoittelun käyttökelpoisuutta markkinointiviestinnässä sekä miten kulutushyödykemarkkinoijat voivat hyödyntää menetelmää markkinointiviestintästrategioissaan. Tuotesijoittelun poikkeava luonne markkinointiviestintävälineenä tuotti kysymyksen miten tuotesijoittelua voitaisiin hyödyntää yhteistyössä muiden markkinointiviestintäkeinojen kanssa. Tätä varten tutkimuksessa tuotesijoittelu yhdistettiin integroidun markkinointiviestinnän (IMC) viitekehykseen. IMC-konsepti syntyi markkinointiviestinnässä vastaamaan samaan tarpeeseen kuin tuotesijoittelukin: pirstaloitunut mediakenttä ja yksittäiset kohderyhmät vaativat kehittyneempää ja yhtenäisempää markkinointiviestinnän suunnittelua ja toteutusta. Tutkimuksen johtopäätöksenä tuotesijoittelu todettiin käyttökelpoiseksi markkinointiviestintäkeinoksi mikäli viestinnän tavoitteena on muu kuin tuotteen myyntiin suorasti vaikuttaminen. Tuotesijoittelu on sen sijaan erittäin tehokas tuotetietoisuuden lisäämisessä, erityisesti tunnistamisen kohdalla. Tuotesijoittelu voi myös tuottaa suoran ostotarpeen mutta tällöin viestin vastaanottajalla täytyy olla vallitseva tarve kyseisen tuoteryhmän osalta ennen altistumista ko. markkinointiviestille. Tuotesijoittelu voidaan sisällyttää IMC-suunnitteluprosessiin markkinointiviestintästrategian kiinteänä osana. Integraatio markkinointiviestinnässä siten, että tuotesijoittelua tuettaisiin muilla viestintäkeinoilla yhtenäisen kampanjan kehittämiseksi on kuitenkin paljon ennakoitua harvinaisempaa, johtuen ehkä eniten tuotesijoittelun poikkeuksellisesta luonteesta ja kyseisen viestintämuodon vaikeasta hallittavuudesta markkinoijan taholta. Tutkimus toteutettiin normatiivisena case-tutkimuksena pääasiassa sekundäärisiä tietolähteitä hyödyntäen. Case-tutkimuksia varten kerättiin primääristä tietoa kyselylomakkeella kahdesta tuotesijoittelua käyttävästä kansainvälisestä yhtiöstä, jonka lisäksi myös sekundäärisiä tietolähteitä hyödynnettiin case-osan tiedonkeruussa.
Resumo:
The aim of this dissertation is to investigate if participation in business simulation gaming sessions can make different leadership styles visible and provide students with experiences beneficial for the development of leadership skills. Particularly, the focus is to describe the development of leadership styles when leading virtual teams in computer-supported collaborative game settings and to identify the outcomes of using computer simulation games as leadership training tools. To answer to the objectives of the study, three empirical experiments were conducted to explore if participation in business simulation gaming sessions (Study I and II), which integrate face-to-face and virtual communication (Study III and IV), can make different leadership styles visible and provide students with experiences beneficial for the development of leadership skills. In the first experiment, a group of multicultural graduate business students (N=41) participated in gaming sessions with a computerized business simulation game (Study III). In the second experiment, a group of graduate students (N=9) participated in the training with a ‘real estate’ computer game (Study I and II). In the third experiment, a business simulation gaming session was organized for graduate students group (N=26) and the participants played the simulation game in virtual teams, which were organizationally and geographically dispersed but connected via technology (Study IV). Each team in all experiments had three to four students and students were between 22 and 25 years old. The business computer games used for the empirical experiments presented an enormous number of complex operations in which a team leader needed to make the final decisions involved in leading the team to win the game. These gaming environments were interactive;; participants interacted by solving the given tasks in the game. Thus, strategy and appropriate leadership were needed to be successful. The training was competition-based and required implementation of leadership skills. The data of these studies consist of observations, participants’ reflective essays written after the gaming sessions, pre- and post-tests questionnaires and participants’ answers to open- ended questions. Participants’ interactions and collaboration were observed when they played the computer games. The transcripts of notes from observations and students dialogs were coded in terms of transactional, transformational, heroic and post-heroic leadership styles. For the data analysis of the transcribed notes from observations, content analysis and discourse analysis was implemented. The Multifactor Leadership Questionnaire (MLQ) was also utilized in the study to measure transformational and transactional leadership styles;; in addition, quantitative (one-way repeated measures ANOVA) and qualitative data analyses have been performed. The results of this study indicate that in the business simulation gaming environment, certain leadership characteristics emerged spontaneously. Experiences about leadership varied between the teams and were dependent on the role individual students had in their team. These four studies showed that simulation gaming environment has the potential to be used in higher education to exercise the leadership styles relevant in real-world work contexts. Further, the study indicated that given debriefing sessions, the simulation game context has much potential to benefit learning. The participants who showed interest in leadership roles were given the opportunity of developing leadership skills in practice. The study also provides evidence of unpredictable situations that participants can experience and learn from during the gaming sessions. The study illustrates the complex nature of experiences from the gaming environments and the need for the team leader and role divisions during the gaming sessions. It could be concluded that the experience of simulation game training illustrated the complexity of real life situations and provided participants with the challenges of virtual leadership experiences and the difficulties of using leadership styles in practice. As a result, the study offers playing computer simulation games in small teams as one way to exercise leadership styles in practice.
Resumo:
Tutkimuksessa selvitettiin, kuinka hyvä tekoäly tietokonepeliin on mahdollista toteuttaa nykytiedolla ja -tekniikalla. Tekoäly rajattiin tarkoittamaan tekoälyn ohjaamia pelihahmoja. Lisäksi yksinkertaisia tekoälytoteutuksia ei huomioitu. Työ toteutettiin tutustumalla aiheeseen liittyvään kirjallisuuteen sekä kehittäjäyhteisön web-sivustojen tietoon. Hyvän tekoälyn kriteereiksi valikoituivat viihdyttävyys ja uskottavuus. Katsaus suosituimpiin toteuttamistekniikoihin ja tekoälyn mahdollisuuksiin osoitti, että teoriassa hyvinkin edistynyt tekoäly on toteutettavissa. Käytännössä tietokoneen rajalliset resurssit, kehittäjien rajalliset taidot ja pelinkehitysprojektien asettamat vaatimukset näyttävät kuitenkin rajoittavan tekoälyn toteuttamista kaupallisessa tuotteessa.
Resumo:
Tämä kandidaatintyö tutkii peliohjelmoinnin mahdollisuuksia ohjelmoinnin alkeiden opetuksessa sekä Unity3D-ohjelman toimivuutta 2D-pelinkehityksessä. Tutkimuksen tavoitteena oli luoda Peliohjelmoinnin alkeet -kurssille kurssirunko sekä todistaa Unity3D-ohjelman toimivuus 2D-pelinkehityksessä kehittämällä esimerkkipeli. Tuotoksena kurssille kehitettiin kuusiosainen kurssirunko, johon myös suunniteltiin täysin aloittelijoille tarkoitettu vapaaehtoinen UnityScriptin alkeet osio. Ohjelmoinnin aloittelijoille suunniteltu kurssi käy läpi Unity3D-ohjelman perusteet sekä tutustuu skriptauksen alkeisiin. Kurssirunko käy 2D-pelinkehitykseen liittyviä konsepteja loogisesti läpi. Työn toisena tavoitteena oli esimerkkipelin kehitys ja Unity3D-ohjelman 2D-pelinkehitystyökalujen testaus. Pelin tekeminen onnistui yli odotusten. Vaikka peli on erittäin yksinkertainen ja lyhyt, se toimii esimerkkipelinä mainiosti. Johtopäätöksenä voidaan todeta, että Unity3D-ohjelman 2D-työkalut ovat toimivia laadukkaiden 2D-pelien kehittämiseen. Tuotoksena laadittu kurssirunko antaa suuntaa kurssien rakentamiseen peliohjelmoinnin aloittelijoille. Pelinkehitys kurssin suorittamisen jälkeen opiskelijalla on mahdollisuudet ja perustaidot jatkaa kehittymistä ja opiskelua tahtomallaan suunnalla.
Resumo:
The main objective of this master's thesis is to study robot programming using simulation software, and also how to embed the simulation software into company's own robot controlling software. The further goal is to study a new communication interface to the assembly line's components -more precisely how to connect the robot cell into this new communication system. Conveyor lines are already available where the conveyors use the new communication standard. The robot cell is not yet capable of communicating with to other devices using the new communication protocols. The main problem among robot manufacturers is that they all have their own communication systems and programming languages. There has not been any common programming language to program all the different robot manufacturers robots, until the RRS (Realistic Robot Simulation) standards were developed. The RRS - II makes it possible to create the robot programs in the simulation software and it gives a common user interface for different robot manufacturers robots. This thesis will present the RRS - II standard and the robot manufacturers situation for the RRS - II support. Thesis presents how the simulation software can be embedded into company's own robot controlling software and also how the robot cell can be connected to the CAMX (Computer Aided Manufacturing using XML) communication system.
Resumo:
The skill of programming is a key asset for every computer science student. Many studies have shown that this is a hard skill to learn and the outcomes of programming courses have often been substandard. Thus, a range of methods and tools have been developed to assist students’ learning processes. One of the biggest fields in computer science education is the use of visualizations as a learning aid and many visualization based tools have been developed to aid the learning process during last few decades. Studies conducted in this thesis focus on two different visualizationbased tools TRAKLA2 and ViLLE. This thesis includes results from multiple empirical studies about what kind of effects the introduction and usage of these tools have on students’ opinions and performance, and what kind of implications there are from a teacher’s point of view. The results from studies in this thesis show that students preferred to do web-based exercises, and felt that those exercises contributed to their learning. The usage of the tool motivated students to work harder during their course, which was shown in overall course performance and drop-out statistics. We have also shown that visualization-based tools can be used to enhance the learning process, and one of the key factors is the higher and active level of engagement (see. Engagement Taxonomy by Naps et al., 2002). The automatic grading accompanied with immediate feedback helps students to overcome obstacles during the learning process, and to grasp the key element in the learning task. These kinds of tools can help us to cope with the fact that many programming courses are overcrowded with limited teaching resources. These tools allows us to tackle this problem by utilizing automatic assessment in exercises that are most suitable to be done in the web (like tracing and simulation) since its supports students’ independent learning regardless of time and place. In summary, we can use our course’s resources more efficiently to increase the quality of the learning experience of the students and the teaching experience of the teacher, and even increase performance of the students. There are also methodological results from this thesis which contribute to developing insight into the conduct of empirical evaluations of new tools or techniques. When we evaluate a new tool, especially one accompanied with visualization, we need to give a proper introduction to it and to the graphical notation used by tool. The standard procedure should also include capturing the screen with audio to confirm that the participants of the experiment are doing what they are supposed to do. By taken such measures in the study of the learning impact of visualization support for learning, we can avoid drawing false conclusion from our experiments. As computer science educators, we face two important challenges. Firstly, we need to start to deliver the message in our own institution and all over the world about the new – scientifically proven – innovations in teaching like TRAKLA2 and ViLLE. Secondly, we have the relevant experience of conducting teaching related experiment, and thus we can support our colleagues to learn essential know-how of the research based improvement of their teaching. This change can transform academic teaching into publications and by utilizing this approach we can significantly increase the adoption of the new tools and techniques, and overall increase the knowledge of best-practices. In future, we need to combine our forces and tackle these universal and common problems together by creating multi-national and multiinstitutional research projects. We need to create a community and a platform in which we can share these best practices and at the same time conduct multi-national research projects easily.
Resumo:
In this thesis, a computer software for defining the geometry for a centrifugal compressor impeller is designed and implemented. The project is done under the supervision of Laboratory of Fluid Dynamics in Lappeenranta University of Technology. This thesis is similar to the thesis written by Tomi Putus (2009) in which a centrifugal compressor impeller flow channel is researched and commonly used design practices are reviewed. Putus wrote a computer software which can be used to define impeller’s three-dimensional geometry based on the basic geometrical dimensions given by a preliminary design. The software designed in this thesis is almost similar but it uses a different programming language (C++) and a different way to define the shape of the impeller meridional projection.
Resumo:
The development of correct programs is a core problem in computer science. Although formal verification methods for establishing correctness with mathematical rigor are available, programmers often find these difficult to put into practice. One hurdle is deriving the loop invariants and proving that the code maintains them. So called correct-by-construction methods aim to alleviate this issue by integrating verification into the programming workflow. Invariant-based programming is a practical correct-by-construction method in which the programmer first establishes the invariant structure, and then incrementally extends the program in steps of adding code and proving after each addition that the code is consistent with the invariants. In this way, the program is kept internally consistent throughout its development, and the construction of the correctness arguments (proofs) becomes an integral part of the programming workflow. A characteristic of the approach is that programs are described as invariant diagrams, a graphical notation similar to the state charts familiar to programmers. Invariant-based programming is a new method that has not been evaluated in large scale studies yet. The most important prerequisite for feasibility on a larger scale is a high degree of automation. The goal of the Socos project has been to build tools to assist the construction and verification of programs using the method. This thesis describes the implementation and evaluation of a prototype tool in the context of the Socos project. The tool supports the drawing of the diagrams, automatic derivation and discharging of verification conditions, and interactive proofs. It is used to develop programs that are correct by construction. The tool consists of a diagrammatic environment connected to a verification condition generator and an existing state-of-the-art theorem prover. Its core is a semantics for translating diagrams into verification conditions, which are sent to the underlying theorem prover. We describe a concrete method for 1) deriving sufficient conditions for total correctness of an invariant diagram; 2) sending the conditions to the theorem prover for simplification; and 3) reporting the results of the simplification to the programmer in a way that is consistent with the invariantbased programming workflow and that allows errors in the program specification to be efficiently detected. The tool uses an efficient automatic proof strategy to prove as many conditions as possible automatically and lets the remaining conditions be proved interactively. The tool is based on the verification system PVS and i uses the SMT (Satisfiability Modulo Theories) solver Yices as a catch-all decision procedure. Conditions that were not discharged automatically may be proved interactively using the PVS proof assistant. The programming workflow is very similar to the process by which a mathematical theory is developed inside a computer supported theorem prover environment such as PVS. The programmer reduces a large verification problem with the aid of the tool into a set of smaller problems (lemmas), and he can substantially improve the degree of proof automation by developing specialized background theories and proof strategies to support the specification and verification of a specific class of programs. We demonstrate this workflow by describing in detail the construction of a verified sorting algorithm. Tool-supported verification often has little to no presence in computer science (CS) curricula. Furthermore, program verification is frequently introduced as an advanced and purely theoretical topic that is not connected to the workflow taught in the early and practically oriented programming courses. Our hypothesis is that verification could be introduced early in the CS education, and that verification tools could be used in the classroom to support the teaching of formal methods. A prototype of Socos has been used in a course at Åbo Akademi University targeted at first and second year undergraduate students. We evaluate the use of Socos in the course as part of a case study carried out in 2007.
Resumo:
Programming and mathematics are core areas of computer science (CS) and consequently also important parts of CS education. Introductory instruction in these two topics is, however, not without problems. Studies show that CS students find programming difficult to learn and that teaching mathematical topics to CS novices is challenging. One reason for the latter is the disconnection between mathematics and programming found in many CS curricula, which results in students not seeing the relevance of the subject for their studies. In addition, reports indicate that students' mathematical capability and maturity levels are dropping. The challenges faced when teaching mathematics and programming at CS departments can also be traced back to gaps in students' prior education. In Finland the high school curriculum does not include CS as a subject; instead, focus is on learning to use the computer and its applications as tools. Similarly, many of the mathematics courses emphasize application of formulas, while logic, formalisms and proofs, which are important in CS, are avoided. Consequently, high school graduates are not well prepared for studies in CS. Motivated by these challenges, the goal of the present work is to describe new approaches to teaching mathematics and programming aimed at addressing these issues: Structured derivations is a logic-based approach to teaching mathematics, where formalisms and justifications are made explicit. The aim is to help students become better at communicating their reasoning using mathematical language and logical notation at the same time as they become more confident with formalisms. The Python programming language was originally designed with education in mind, and has a simple syntax compared to many other popular languages. The aim of using it in instruction is to address algorithms and their implementation in a way that allows focus to be put on learning algorithmic thinking and programming instead of on learning a complex syntax. Invariant based programming is a diagrammatic approach to developing programs that are correct by construction. The approach is based on elementary propositional and predicate logic, and makes explicit the underlying mathematical foundations of programming. The aim is also to show how mathematics in general, and logic in particular, can be used to create better programs.
Resumo:
In this thesis, simple methods have been sought to lower the teacher’s threshold to start to apply constructive alignment in instruction. From the phases of the instructional process, aspects that can be improved with little effort by the teacher have been identified. Teachers have been interviewed in order to find out what students actually learn in computer science courses. A quantitative analysis of the structured interviews showed that in addition to subject specific skills and knowledge, students learn many other skills that should be mentioned in the learning outcomes of the course. The students’ background, such as their prior knowledge, learning style and culture, affects how they learn in a course. A survey was conducted to map the learning styles of computer science students and to see if their cultural background affected their learning style. A statistical analysis of the data indicated that computer science students are different learners than engineering students in general and that there is a connection between the student’s culture and learning style. In this thesis, a simple self-assessment scale that is based on Bloom’s revised taxonomy has been developed. A statistical analysis of the test results indicates that in general the scale is quite reliable, but single students still slightly overestimate or under-estimate their knowledge levels. For students, being able to follow their own progress is motivating, and for a teacher, self-assessment results give information about how the class is proceeding and what the level of the students’ knowledge is.
Resumo:
New emerging technologies in the recent decade have brought new options to cross platform computer graphics development. This master thesis took a look for cross platform 3D graphics development possibilities. All platform dependent and non real time solutions were excluded. WebGL and two different OpenGL based solutions were assessed via demo application by using most recent development tools. In the results pros and cons of the each solutions were noted.
Resumo:
The primary goals of this study are to: embed sustainable concepts of energy consumption into certain part of existing Computer Science curriculum for English schools; investigate how to motivate 7-to-11 years old kids to learn these concepts; promote responsive ICT (Information and Communications Technology) use by these kids in their daily life; raise their awareness of today’s ecological challenges. Sustainability-related ICT lessons developed aim to provoke computational thinking and creativity to foster understanding of environmental impact of ICT and positive environmental impact of small changes in user energy consumption behaviour. The importance of including sustainability into the Computer Science curriculum is due to the fact that ICT is both a solution and one of the causes of current world ecological problems. This research follows Agile software development methodology. In order to achieve the aforementioned goals, sustainability requirements, curriculum requirements and technical requirements are firstly analysed. Secondly, the web-based user interface is designed. In parallel, a set of three online lessons (video, slideshow and game) is created for the website GreenICTKids.com taking into account several green design patterns. Finally, the evaluation phase involves the collection of adults’ and kids’ feedback on the following: user interface; contents; user interaction; impacts on the kids’ sustainability awareness and on the kids’ behaviour with technologies. In conclusion, a list of research outcomes is as follows: 92% of the adults learnt more about energy consumption; 80% of the kids are motivated to learn about energy consumption and found the website easy to use; 100% of the kids understood the contents and liked website’s visual aspect; 100% of the kids will try to apply in their daily life what they learnt through the online lessons.