The Study of Gamification Application Architecture for Programming

0 downloads 0 Views 438KB Size Report
Level 1: Java programming language material. First distribution of java ... The elements of gamification are exercise and solution, exam, scoring system, top 1, ...
The Study of Gamification Application Architecture for Programming Language Course Firas Layth Khaleel

Noraidah Sahari@ Ashaari

Center for Software Technology and Management (SOFTAM) Universiti Kebangsaan Malaysia and Tikrit University College of Computers and Math +6 03 - 8741 6627 [email protected]

Center for Software Technology and Management (SOFTAM) Universiti Kebangsaan Malaysia Faculty of Information Science and Technology +6 03 - 8921 6645 [email protected]

ABSTRACT Students sometimes find it hard to learn new programming languages. They often confront unfamiliar programming terms and are required to visualize the processes that happen in the computer memory. Weak students find this a burden and end up memorizing the processes without understanding them and their working. This situation invariably leads students to get low grades in their programming subjects. Some researchers suggested that an enjoyable approach must be adopted in learning difficult subjects. Studies have shown that applying gamification elements in websites engages users. “Gamification” refers to the use of game elements in a non-game context to increase engagement between humans and computers. This research try to solve the problem by apply gamification elements in programming language course as a new architecture of Gamification application to increase the effectiveness of learning and enhance the understanding of students'.

Categories and Subject Descriptors K.8.0 [Personal Computing]: Games; H.5.m [Information Interfaces and Presentation (e.g., HCI)]: Miscellaneous;

General Terms Design, Theory.

Keywords Gamification, Game-ased learning, Game elements, Gamification elements, motivational, engagement and effectiveness.

1. INTRODUCTION Enrollment data at the computer science and software engineering undergraduate programs revealed that many students have dropped out in their first and second semesters [1][2][3]. One of the problems encountered was the students were not interested in programming language course and found that this course was difficult. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. IMCOM 15, January 8–10, 2015, BALI, Indonesia. Copyright 2015 ACM 978-1-4503-3377-1…$15.00. http://dx.doi.org/10.1145/2701126.2701222

Tengku Siti Meriam Tengku Wook Center for Software Technology and Management (SOFTAM) Universiti Kebangsaan Malaysia Faculty of Information Science and Technology +6 03 - 8921 6078 [email protected]

Amirah Ismail Center for Software Technology and Management (SOFTAM) Universiti Kebangsaan Malaysia Faculty of Information Science and Technology +6 03 - 8921 6712 [email protected]

In 2010, [4] explained that one reason why students struggle in learning programming language is because they do not focus on their lessons, that is, they think of the trivial things instead of concentrating on the essential ones. In the point of view of their lecturers, many teaching materials used in the university discount the essential issues of programming courses. This circumstance has led to bad coding habit, which has caused the students to unconsciously write inadequate codes from the beginning [5]. Several researchers [4-13] tried to solve these issues by conducting different methods, such as Web-Based Java Programming Language, 3D animation, mobile learning application, game-based learning, and visualization but still no significant improvement are shown. Many students cannot easily understand the content of programming language and thus fail in programming language subjects. [9, 4, 10] elucidated that an approach, which can be easily understood and can be implemented in an enjoyable manner must be adopted in learning difficult subjects. The elements of games and fun factor influence the general outcome of the course and make it an interesting subject for students. Previous research also identified that in some institutions, the curriculum of programming language does not incorporate any game elements, or if there is such, it is not enough or it does not induce fun. This situation has led to the conception of the concrete problem, that is, students deem that the strategies of teaching and learning programming language are ineffective and that the course itself is not interesting. In 2012, [14] suggested that combining gamification with social media result to successful engagement, and effective learning of new employees, which leads to lower costs and high levels of productivity. Therefore, this study attempts to explore the missing elements of games (gamification) and fun factor to make the course of programming language interesting for students and increase their learning efficiency.

2. GAMIFICATION “Gamification” refers to the use of game elements (game thinking) in a non-game context to increase engagement between humans and computers, as well as solve problems with high quality, as exemplified by modern electronic applications [15,16,17,22,23]. In 2011, [18,24,25,26] defined gamification as a process of game thinking and game mechanics that engage users and solves problems. In 2013, [19,27,28] argue that gamification can be thought of as using pieces of games to motivate learners, but the real definition of gamification involves using game-based mechanics, aesthetics, and game thinking to engage people, motivate action, promote learning, and solve problems. In 2011, [20] predicated that by 2015, more than 50% of organizations that

manage innovation processes will gamify those processes. By 2014, a gamified service for consumer goods marketing and customer retention will become as important as Facebook, eBay, or Amazon, and more than 70% of Global 2000 organizations will have at least one gamified application.

3. ARCHITECTURE OF GAMIFICATION APPLICATION According to [18] in 2011, the key elements required to build each application related with the use of any game element in nongame context should consider the following: x

Mechanics

x

Dynamics

x

Aesthetics

3.1 The Contents of Gamification Architecture There are three main important contents in this architecture as below. 1.

User: (students).

2.

Data: data means Java learning materials.

3.

Approach: i.e., gamification.

The architecture of gamification application is presented as a learning application. The levels are distributed depending on the gamification elements and the Java learning materials, (see Figure 1).

The result of architecture gamification application includes the mechanics, which are tools of the gamification elements that combine with the content of programming language materials to increase the effectiveness of students and to make the course of programming language interesting. Dynamics are the interactions of the users with mechanics (gamification elements). Aesthetics of the application pertain to how the gamification uses the feelings of the user during interaction, leading to the development of an attractive user interface design. The architecture of gamification is designed based on the problem statement as mentioned in section 1. The architecture comprises one main approach (gamification) to increase the effectiveness and interest of students. We choose this method to solve the problem. The architecture of gamification application should be easy to understand. (Figure 1) shows the architecture and gamification process and provides further explanation on the level of structure implementation. This architecture of gamification application will explain the entire process.

1.

Level 1: Java programming language material.

First distribution of java titles or topics or lectures (this responsibility is for the staff or lecturer). The outcome of this level is to focus on the essential and not on trivial things. 2.

Level 2: Gamification elements.

The elements of gamification are exercise and solution, exam, scoring system, top 1, top 5, or top 10, dashboard, reporting, and goal. The outcome of this level is to increase the practice on the given example, to memorize and understand the reserved word and understand the concepts, programming structure, OOP, GUI, and fundamentals of programming. 3.

Level 3: Interface design.

Interface design of all elements of gamification, such as exercise and solution, exam, scoring system, top 1, top 5, or top 10, dashboard, reporting, and goal.

Figure 1. The Architecture of Gamification Application.

The preceding section presents the architecture of gamification application design as a learning application. This design intends to increase user effectiveness and interest within a fun and enjoyable learning environment to yield high student productivity. These levels are presented in more detail below.

x

3.2 The detailed inside the levels 3.2.1 The level of (division of Java material) Distribution (Topics in one chapter): This distribution classifies the materials according to each chapter. Java materials are displayed based on each topic in any given chapter.

3.2.2 The level of (Gamification elements) This level has the Gamification elements as below.

Goal: After all the stages, the program aims to improve the learning process, increase understanding and perception, foster competition and cooperation, and encourage social cohesion among students. At the same time, this program aims to produce high quality students equipped with advanced knowledge, a vision for the future, and the ability to find better solutions to the problems at a much rapid pace.

3.2.3 The level of (Interface Design) This level will design interface based on each elements of Gamification as below. x

Interface design of the exercise and solution: This interface incorporates the important factors that motivate students to persevere and continue to advance further. The interface aims to simultaneously foster competition and cooperation among students.

x

Interface design of the incorporate a method (marks/points of results) them to persevere and future.

x

Exercise and Solution: At this stage, tests with solutions are created for each completed chapter. The purpose of this sub-phase is to increase student learning in all aspects that pertain to this chapter or the lecture topic.

x

Exam: Thereafter, tests are conducted based on the learning content of each chapter or lecture topic. In this phase, a comprehensive test is prepared to evaluate and rank the students.

x

Scoring system: This system calculates and awards the student a point for each correct answer and speed of exam completion.

x

Interface design of the scoring system: This page displays how the system calculates the marks given to each student.

x

Top 1, Top 5, and Top 10: The program ranks the students with the highest scores and ranks them in groups (e.g., Top 1, Top 5, or Top 10). The results shall be displayed in the main menu. This ranking aims to enhance competition and cooperation among students, leading to increased learning and greater productivity among all students.

x

Interface design of the Top 1, Top 5, and Top 10: This feature can hopefully encourage students to achieve better marks to qualify in these rankings.

x

Interface design of the dashboard: The dashboard is an attractive feature that aims to inform the student about his/her academic and practical progress for a given (particular subject) and provide him/her an idea regarding how much more effort is necessary to progress to the next level.

x

Interface design of the reporting: This feature encourages students to compete and improve their performance by sending regular reports to (i.e., from the lecturer) for all lectures or semesters.

x

Interface design of the goal: This element is the final step of this phase to indicate that the student has successfully achieved the goal of the project.

x

Dashboard: This element, also known as “Smart Bar,” contains the basic profile of each student. The Smart Bar is divided into time points corresponding to the semester (or particular subject). The dashboard shows the progress record of the student, displaying the test scores, lecture participation, and so on. This feature aims to increase social relations among students, leading to increased understanding among. To calculate the status of each student based on their profiles, the total marks (M) and the total number of lectures for one semester (L) are computed. Using these variables, the status of a student is computed using the given equation: Status of a student = [û (M) / û (L)] *1/100.

x

Exam: This interface should to display the test results of the students and encourage achieve better marks in the

4. EFFECTIVENESS OF GAMIFICATION According to [21] in 2012, a new method that omits Gamification from social networks can lead to the following effects:

This equation calculates the total marks of a student for one subject and one semester divided by 100 to obtain a percentage value.

x

Decreased user engagement

x

Decreased user participation

Reporting: This element is one of the most important stages, which also aims to increase the diligence and creativity of a student during a semester. At the end of the term, all students and staff will receive a report, displaying all information on the progress of the student during the semester or the entire years of study.

x

Decline in student achievements

In other words, not using Gamification in designing an application can lead to failure, especially because the goal is to foster a sense of playfulness in a non-game environment to increase user engagement and learning (see Table 1), presents the results of

omitting Gamification (i.e. the point system) before and two weeks after in a chosen social network (Enterprises). Table 1. Results of omitting the point system before and after two weeks [21] Points Deployed

Points Removed

Total (#user)

Total (#user)

Photo

4502 (2.6)

2926 (1.7)

Lists

1277 (1.0)

780 (0.64)

Profile comment

8983 (5.5)

4056 (2.5)

Photo comment

2598 (2.9)

1348 (1.5)

List comment

1770 (2.5)

873 (1.2)

4.1 DISCUSSION Gamification is an integral part of an application because it can ensure effectiveness, as demonstrated in the results shown in Table 1 (Thom et al., 2012), which presents the decrease in photo comments from 4,502 to 2,926 and the decrease in users from 2,600 to 1,700, as well as the decrease in list comments from 1,770 to 873 and the decrease in users decrease from 2,500 to 1,200. In the field of learning, the benefits of gamification elements cannot be ignored because the main goal is to increase user effectiveness and understanding within a fun and enjoyable learning environment, thereby yielding high user productivity. Based on the results in (Table 1), the present research will try to solve the problem through a Gamification approach because to verify the effectiveness of applying a Gamification approach to students. Finally, the effectiveness of applying Gamification approach as mentioned in (Table 1), led to use gamification approach for solve the problem. Finally, based on previous researches, I derive new definition of Gamification, is an approach that uses game elements with fun factors in order to solve a given problem within an enjoyable learning environment (see Figure 2) .

5. CONCLUSION To make learning for programming language better, this research introduced In-depth study of the problems related to the understanding of the programming language for students of Computer Science Department and other departments. This research proposes to apply Gamification approach in order to increase the effectiveness of learning programming language as well as to enhance the understanding of student. And also based on the result of (see Table 1), this research try to apply the Gamification architecture for learning application and the expected result should be higher quality in learning of programming language and more effectiveness.

6. ACKNOWLEDGMENTS This work was supported from Universiti Kebangsaan Malaysia / Faculty of Information Science and Technology - Research Center for Software Technology and Management - Multimedia Software and Usability Research Group 2014, JPT-KPM ID: 68910-78756 FRGS 2014-2.

7. REFERENCES [1] Guo, Minzhe, Kai Qian, Li Yang and Prabir Bhattacharya. 2010. Work in progress- A real time Java programming online assessment system. Frontiers in Education Conference (FIE), IEEE. [2]

Adorjan, Alejandro and Ines Friss de Kereki. 2013. Multiple Intelligence approach and competencies applied to Computer Science 1. Frontiers in Education Conference IEEE.

[3] Ambrósio, Ana Paula, Fábio Moreira Costa, Leandro Almeida, Amanda Franco and Joaquim Macedo. 2011. Identifying cognitive abilities to improve CS1 outcome. Frontiers in Education Conference (FIE), IEEE. [4] Dai, Kaiyu, Yiming Zhao and Ronghua Chen. 2010. Research and Practice on Constructing the Course of Programming Language. Computer and Information Technology (CIT), IEEE 10th International Conference on, IEEE. [5] Yu, Pengfei and Lijun Yang. 2010. Programming skills training in programming language courses. Educational and Information Technology (ICEIT), International Conference on, IEEE. [6] Funabiki, Nobuo, Yousuke Korenaga, Toru Nakanishi and Kan Watanabe. 2013. An extension of fill-in-the-blank problem function in Java programming learning assistant system. Humanitarian Technology Conference (R10-HTC), IEEE. [7] Funabiki, Nobuo, Yukiko Matsushima, Toru Nakanishi, Kan Watanabe and Noriki Amano. 2013. A Java Programming Learning Assistant System Using Test-Driven Development Method. IAENG International Journal of Computer Science 40(1).

Figure 2. The Gamification Elements.

[8] Funabikiy, N, Yousuke Korenaga, Yukiko Matsushima, Toru Nakanishi and Kan Watanabe. 2012. An Online Fill-in-theBlank Problem Function for Learning Reserved Words in

Java Programming Education. Advanced Information Networking and Applications Workshops (WAINA), 26th International Conference on, IEEE.

[18] Zichermann, Gabe and Christopher Cunningham. 2011. Gamification by design: Implementing game mechanics in web and mobile apps, O'Reilly Media, Inc.

[9] Chang, Maiga. 2010. Web-Based Multiplayer Online Role Playing Game (MORPG) for Assessing Students' Java Programming Knowledge and Skills. Digital Game and Intelligent Toy Enhanced Learning (DIGITEL), Third IEEE International Conference.

[19] Kapp, Karl M. 2013. The Gamification of Learning and Instruction Fieldbook: Ideas Into Practice, John Wiley & Sons.

[10] Tan, Phit-Huan, Choo-Yee Ting and Siew-Woei Ling. 2009. Learning difficulties in programming courses: undergraduates' perspective and perception. Computer Technology and Development. ICCTD'09. International Conference. [11] Tigrek, Seyitriza and Mohammad Obadat. 2012. Teaching smartphones programming using (Android Java): Pedagogy and innovation. Information Technology Based Higher Education and Training (ITHET), International Conference on, IEEE. [12] Heckman, Sarah, Thomas B Horton and Mark Sherriff. 2011. Teaching second-level Java and software engineering with Android. Software Engineering Education and Training (CSEE&T), 2011 24th IEEE-CS Conference. [13] Magee, John J and Li Han. 2013. Integrating a science perspective into an introductory computer science course. Integrated STEM Education Conference (ISEC), IEEE. [14] Depura, Krishna and Mohit Garg. 2012. Application of Online Gamification to New Hire Onboarding. Services in Emerging Markets (ICSEM). Third International Conference on, IEEE. [15] Deterding, Sebastian. 2012. Gamification: designing for motivation. Interactions 19(4): 14-17. [16] Deterding, Sebastian, Dan Dixon, Rilla Khaled and Lennart Nacke. 2011. From game design elements to gamefulness: defining gamification. Proceedings of the 15th International Academic MindTrek Conference: Envisioning Future Media Environments, ACM New York, NY, 9-15. DOI=http://doi.acm.org/10.1145/2181037.2181040. [17] Deterding, Sebastian, Miguel Sicart, Lennart Nacke, Kenton O'Hara and Dan Dixon (2011). Gamification. Using gamedesign elements in non-gaming contexts. PART 2nd Proceedings of the 2011 annual conference extended abstracts on Human factors in computing systems, ACM New York, NY, 2425-2428. DOI=http://doi.acm.org/10.1145/1979742.1979575.

[20] Gartner. 2011. Gartner Says By 2015, More Than 50 Percent of Organizations That Manage Innovation Processes Will Gamify Those Processes. Retrieved 25 Jun, 2014, from www.gartner.com/newsroom/id/1629214. [21] Thom, Jennifer, David Millen and Joan DiMicco. 2012. Removing gamification from an enterprise SNS. Proceedings of the ACM 2012 conference on Computer Supported Cooperative Work, ACM New York, NY, 1067-1070. DOI=http://doi.acm.org/10.1145/2145204.2145362. [22] Browne, Kevin, Christopher Anand and Elizabeth Gosse. 2014. Gamification and serious game approaches for adult literacy tablet software. Entertainment Computing 5(3): 135146. [23] de-Marcos, Luis, Adrián Domínguez, Joseba Saenz-deNavarrete and Carmen Pagés. 2014. An empirical study comparing gamification and social networking on e-learning. Computers & Education 75(0): 82-91. [24] Hamari, Juho and Jonna Koivisto. 2014. Measuring flow in gamification: Dispositional Flow Scale-2. Computers in Human Behavior 40(0): 133-143. [25] Hanus, Michael D. and Jesse Fox. 2015. Assessing the effects of gamification in the classroom: A longitudinal study on intrinsic motivation, social comparison, satisfaction, effort, and academic performance. Computers & Education 80(0): 152-161. [26] Jones, Brooke A., Gregory J. Madden and Heidi J. Wengreen. 2014. The FIT Game: preliminary evaluation of a gamification approach to increasing fruit and vegetable consumption in school. Preventive Medicine 68(0): 76-79. [27] Koivisto, Jonna and Juho Hamari. 2014. Demographic differences in perceived benefits from gamification. Computers in Human Behavior 35(0): 179-188. [28] Seaborn, Katie and Deborah I. Fels. 2015. Gamification in theory and action: A survey. International Journal of Human-Computer Studies 74(0): 14-31.

The author has requested enhancement of the downloaded file. All in-text references underlined in blue are linked to publications on ResearchGate.

Suggest Documents