Papers by Jussi Kasurinen
Learning system user interface preferences:An exploratory survey

Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: Software Engineering Education and Training
For decades there have been arguments how to teach programming in the basic courses. Supportive i... more For decades there have been arguments how to teach programming in the basic courses. Supportive intervention methods to improve students' learning and methods to improve assessment process have been widely studied. There are various successful methods to each topic separately, but only a few of them fit for both. In this work, we aimed at validating ASPA a static analyser tool that supports learning and continuous feedback on programming courses. For this purpose, we designed and conduct an empirical study among 236 students enrolled in the basic programming course, that voluntary adopted the tools during the project development activities. We first profiled the students, then, evaluated the attitude toward using ASPA, the perceived ease of use, and the perceived usefulness. Results showed that ASPA is a good helper for the entire course and especially the student's programming assignments, and it also helps to improve the students' grades.

2022 IEEE/ACM 44th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET)
For decades there have been arguments how to teach programming in the basic courses. Supportive i... more For decades there have been arguments how to teach programming in the basic courses. Supportive intervention methods to improve students' learning and methods to improve assessment process have been widely studied. There are various successful methods to each topic separately, but only a few of them fit for both. In this work, we aimed at validating ASPA a static analyser tool that supports learning and continuous feedback on programming courses. For this purpose, we designed and conduct an empirical study among 236 students enrolled in the basic programming course, that voluntary adopted the tools during the project development activities. We first profiled the students, then, evaluated the attitude toward using ASPA, the perceived ease of use, and the perceived usefulness. Results showed that ASPA is a good helper for the entire course and especially the student's programming assignments, and it also helps to improve the students' grades.

IEEE Access
The systematic mapping study (SMS) is a relatively new method of generating new information from ... more The systematic mapping study (SMS) is a relatively new method of generating new information from existing studies. First defined as a methodology in 2007, it offers a method to filter existing information to produce novel insight into the observed research domain, and pinpoint new directions of research. In this study, the systematic mapping study method was utilized to determine how SMS as a method has spread and was utilized during the first decade since its conceptualization. In general, it was found that the SMS method is still at its early phase in utilization, and is mainly used in software engineering and healthcare studies, but also in several other scientific domains. SMS research and the scientific outputs rely on transparent protocols when conducting the actual search and identification process, and so far, the applied protocol and research procedure correlates strongly with the application domain; different domains have their own protocols. The SMS method can be recommended, for example, when the aim is to gain knowledge on how a specific topic is studied and where there are research gaps. There are still areas that are debated or where successful implementation is difficult, the biggest problems being the amount of work it requires and possible lack of quality analysis of the articles.

Software Development in Small Software Companies: Exploring the Usage of Procedures, Techniques, Methods and Models in Practice
2021 2nd European Symposium on Software Engineering, 2021
Small software companies have a challenge with utilizing process tools, which affects practice wi... more Small software companies have a challenge with utilizing process tools, which affects practice with significant quality-related challenges. This affects the software industry significantly because SSCs dominate the industry, and most of all, over 80 percent of software products are produced by SSCs. This cross-sectional survey was conducted in 3 countries attracting 115 respondents with the primary objective of investigating the software practice concerning the utilization of process tools in SSCs. The study focused on the tools used in requirements engineering and software testing as critical process areas for quality software products. Our findings indicate that the number of personnel intertwines with the complexities arising from lengthy procedures of the tools and processes, aggregating into difficulty in tool usage. Due to the constant evolution of practices, the volatility in processes also causes slow adoption of other tools, for instance, testing that must accompany the main engineering tools during a project. These findings are significant in informing theory and communicating to the practitioners what they should do regarding process tools.

Online Appendix for "Profile-Based Algorithm for Personalized Gamification in Computer-Supported Collaborative Learning Environments
This snapshot of our "ludusengine" GitHub repository is an Online Appendix for the GHIT... more This snapshot of our "ludusengine" GitHub repository is an Online Appendix for the GHITALY 2017 conference paper "Profile-Based Algorithm for Personalized Gamification in Computer-Supported Collaborative Learning Environments". Please find more information in the conference paper (link available in the metadata box), or the "README.md" file in the repository (direct download of the attached zipfile or click on the GitHub link). Paper references: Knutas, A., van Roy, R., Hynninen, T., Granato, M., Kasurinen, J., & Ikonen, J. (2017). Profile-Based Algorithm for Personalized Gamification in Computer-Supported Collaborative Learning Environments. In 1st Workshop on Games-Human Interaction (GHITALY 2017). http://ceur-ws.org/Vol-1956/ Knutas, A., van Roy, R., Hynninen, T. et al. Multimed Tools Appl (2019) 78: 13593. https://doi.org/10.1007/s11042-018-6913-5

What Concerns Game Developers? A Study on Game Development Processes, Sustainability and Metrics
2017 IEEE/ACM 8th Workshop on Emerging Trends in Software Metrics (WETSoM), 2017
It can be argued, that software development and game development share a number of features in th... more It can be argued, that software development and game development share a number of features in their process models, such as the need to design, develop and test software functionalities. However, while the software engineering (SE) models work successfully supporting the software development, their practical application for game development is frequently unsuccessful. To understand this problem and number of other aspects such as Green IT and business models, we conducted a survey with the game industry organizations. Based on our observations on the SE practices, the game industry applies mostly the agile process models or nothing at all, their major concerns for business were mobile development, digital marketing, employees with specific abilities and keeping innovation in their business, and their minor concerns were eco-impact elements, software reusability and financing. Based on our results, we identified areas which would warrant more studies to support the game industry practices, eco-aspects and business.
Survey Data For "Software Testing: Survey Of The Industry Practices
Dataset for the surveys presented in our article "Software Testing: Survey of the Industry P... more Dataset for the surveys presented in our article "Software Testing: Survey of the Industry Practices."

Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education, 2018
Testing and quality assurance are characterized as the most expensive tasks in the software life ... more Testing and quality assurance are characterized as the most expensive tasks in the software life cycle. However, several studies also indicate that the industry could enhance product quality and reduce costs by investing in developing testing practices. Software engineering educators can bridge the gap between formal education and industry practices to produce more industry-ready graduates, by observing the industry in action. To find out the current state of industry, we conducted a study in software organizations to assess how they test their products and which process models they follow. According to the survey results, the organizations rely heavily on test automation and use sophisticated testing infrastructures, apply agile practices even when working with mission-critical software, and have reduced the use of formal process reference and assessment models. Based on the results, this paper identifies a number of key learning objectives in quality assurance and software testing disciplines that the industry expects from university graduates. The principles of constructive alignment are used to present learning goals, teaching methods, and assessment methods that align with the industry requirements. 1
In this paper we present an approach for personalizing gamification to the needs of each individu... more In this paper we present an approach for personalizing gamification to the needs of each individual person. We designed the personalization for computer-supported collaborative learning environments by synthesizing three existing design frameworks: the lens of intrinsic skill atoms, gamification user type hexad and heuristics for effective design of gamification. The result of the design process is a context-aware and personalized gamification ruleset for collaborative environments. We also present a method for translating gamification rulesets to machine-readable classifier algorithm using the CN2 rule inducer and a framework for connecting the produced algorithm to collaborative software. Lastly, we present an example software for personalized gamification that was produced by applying the process presented in this paper. ACM Classification

International Journal of Computer Applications, 2017
Fundamentally, computer science and its courses are considered difficult to learn, since so many ... more Fundamentally, computer science and its courses are considered difficult to learn, since so many concepts has to be grasped before anything worthwhile can be achieved. To make the things even more difficult, there also is a drive to cut costs on the teaching work, to minimize the amount of teaching staff and in general, steer the course modules towards web-based learning and assisted self-study. In this study, the objective is to assess the different tools and approaches available for constructing an online-enabled course on software testing and quality assurance (QA), based on two different course implementations to provide experiences and information. Based on our observations, the most important factors in teaching a course in software testing with an assisted self-study approach is to offer practical exercises using real software projects, discuss real-world scenarios in the lectures to maintain the student motivation, offer equal services to both online and offline students and discuss both the management and practical work aspects of the testing work.

Evolution of computer game developer organizations
Journal of Advances in Management Research, 2015
Purpose – The purpose of this paper is to identify the peculiarity of computer game organizations... more Purpose – The purpose of this paper is to identify the peculiarity of computer game organizations and their human resources. It presents a stage model including four phases covering the growth from demo group to full business. This study extends the research on how computer game organizations are formed and what it takes them to grow to financially self-sufficient. The study also broadens the understanding of the beginning phase of an organization. Design/methodology/approach – The paper utilizes the grounded theory research method with 34 interview sessions among 11 computer game organizations. The interviewed persons include chief executive officers, designers and developers. Findings – This paper presents empirical findings on what a computer game organization go through when they evolve from demo group phase, which is not discussed in existing literature, to full business. The authors observed that the core team is formed over a game designer and one or more developers. The team...

Challenges and Improvements, 2011
The objective of this industry study was to shed light on the current situation and improvement n... more The objective of this industry study was to shed light on the current situation and improvement needs in software test automation. To this end, 55 industry specialists from 31 organizational units were interviewed. In parallel with the survey, a qualitative study was conducted in 12 selected software development organizations. The results indicated that the software testing processes usually follow systematic methods to a large degree, and have only little immediate or critical requirements for resources. Based on the results, the testing processes have approximately three fourths of the resources they need, and have access to a limited, but usually sufficient group of testing tools. As for the test automation, the situation is not as straightforward: based on our study, the applicability of test automation is still limited and its adaptation to testing contains practical difficulties in usability. In this study, we analyze and discuss these limitations and difficulties.
Lecture Notes in Business Information Processing, 2014
In this multiple case study we interviewed six Finnish computer game companies to find out what e... more In this multiple case study we interviewed six Finnish computer game companies to find out what elements are included in their business models. We identified the key elements and used the analytical hierarchy process to rank the elements. We found out that computer game startups see their business model as a synonym to a revenue model and/or a business plan. In our in-depth analysis we identified nine key elements (human capital, marketing, key partners, financing, customer relationship, key activities, innovation process, key resources and customer segment) that have operative importance to these companies. These elements are the building blocks for a business model in the computer game domain. These findings provide improved knowledge on how business models of game companies could be constructed.

Keywords: POP-I.A. learning to program POP-II.A. novices POP-III.D. visualization The teaching of... more Keywords: POP-I.A. learning to program POP-II.A. novices POP-III.D. visualization The teaching of fundamental programming skills is a field that extensively uses different kinds of tools to enhance learning experience. These tools come in several sizes, offering wide range of different equipment or approaches to the teaching of introductory programming curricula. At the same time, computer sciences, and programming courses in particular, suffer from high drop-out rates and falling student grades. Students lose interest on programming because of several complex models and structures have to be learned before anything visually impressive can be created. This problem is intensified by the new multimedia environments like games and applets, whereas command line programs and data algorithms have lost impact and are not considered interesting. So can visualization tools be used to increase the student motivation and create motivational tasks to promote interest towards programming? This p...

Abstract. [Context/motivation] Game development is characterized by a high level of creativity wh... more Abstract. [Context/motivation] Game development is characterized by a high level of creativity when compared to other fields of software development. Games cover a multitude of themes and genres, and represent a heterogeneous group of different products with varying requirements and business goals. [Question/problem] Requirements engineering (RE) should be relevant to game development, but is this true and if it is, how does game industry apply RE in practice? [Principal ideas/Results] We interviewed 27 software professionals in seven organizations to understand how requirements engineering is applied in game developing organizations. The results suggest that in game development business practicalities and drive for "fun" dominate the areas associated with requirements engineering. Additionally, game development organizations apply approaches and methods that are comparable to requirements engineering and requirement management, but do not consciously apply common RE pract...

It has been estimated that more than two million students started computing studies in 1999 and 6... more It has been estimated that more than two million students started computing studies in 1999 and 650,000 of them either dropped or failed their first programming course. For the individual student, dropping such a course can distract from the completion of later courses in a computing curriculum and may even result in changing their course of study to a curriculum without programming. In this article, we report on how we set out to rehabilitate a troubled first programming course, one for which the dropout statistic and repercussion was evident. The five-year longitudinal case study described in this article began by systematically tracking the pass rate of a first programming course, its throughput, as proposed by the Theory of Constraints. The analyses of these data indicated three main problems in the course: programming discipline difficulty, course arrangement complexity, and limited student motivation. The motivation problem was approached from the Two-Factor Theory point of vi...
User experience is a key aspect when designing a software product. This applies especially when t... more User experience is a key aspect when designing a software product. This applies especially when the use of the service requires a cognitive load from the user, such as in online learning systems. In this paper, we present initial results that can serve as source material for creating preference profiles for users, based on their personal information and teamwork preferences to enhance usability aspects of software systems. Based on our studies on student behavior during a learning experience, we present the plan for a solution which combines these two approaches. Author
Plagiarism networks: finding instances of copied answers in an online introductory programming environment
We followed the submissions of automatically evaluated weekly programming assignments on an intro... more We followed the submissions of automatically evaluated weekly programming assignments on an introductory programming course and searched for identical solutions submitted by students. Our dataset covers three iterations of the course, from 2014 to 2016. From this systematic longitudinal sampling, we were able to scan for plagiarism patterns and build social networks of shared answers. As a result, we present the social networking graphs of identical student-submitted answers over the past three years in which the course has been arranged.

Journal of Software Engineering and Applications
The post-release maintenance is usually the most expensive phase in the software product lifecycl... more The post-release maintenance is usually the most expensive phase in the software product lifecycle from the first design concepts to the end of product support. To reduce the costs related to post-release maintenance, we propose a run-time framework for measuring software quality characteristics applying the ISO/IEC 25000 software quality and software quality in use models as the starting point. Measurement probes are linked into the software during the development phase and used to collect quality information during the run time. As a proof-of-concept, we implemented measurements in an open-source software project to demonstrate the utility of the framework. As a result, this paper presents a framework for collecting runtime metrics and measuring software quality-in-use with a systematic interface. Additionally, examples of measurement scenarios are presented.
Uploads
Papers by Jussi Kasurinen