11,403 research outputs found
Serious Games for Software Refactoring
Software design issues can severely impede software development and maintenance. Thus, it is
important for the success of software projects that developers are aware of bad smells in code
artifacts and improve their skills to reduce these issues via refactoring. However, software refactoring
is a complex activity and involves multiple tasks and aspects. Therefore, imparting competences
for identifying bad smells and refactoring code efficiently is challenging for software engineering
education and training. The approaches proposed for teaching software refactoring in recent years
mostly concentrate on small and artificial tasks and fall short in terms of higher level competences,
such as analysis and evaluation. In this paper, we investigate the possibilities and challenges of
designing serious games for software refactoring on real-world code artifacts. In particular, we propose
a game design, where students can compete either against a predefined benchmark (technical debt) or
against each other. In addition, we describe a lightweight architecture as the technical foundation for
the game design that integrates pre-existing analysis tools such as test frameworks and software-quality
analyzers. Finally, we provide an exemplary game scenario to illustrate the application of serious
games in a learning setting
Serious Refactoring Games
Software design issues can severely impede software development and maintenance. Thus, it is important for the success of software projects that developers are aware of bad smells in code artifacts and improve their skills to reduce these issues via refactoring. However, software refactoring is a complex activity and involves multiple tasks and aspects. Therefore, imparting competences for identifying bad smells and refactoring code efficiently is challenging for software engineering education and training. The approaches proposed for teaching software refactoring in recent years mostly concentrate on small and artificial tasks and fall short in terms of higher level competences, such as analysis and evaluation. In this paper, we investigate the possibilities and challenges of designing serious games for software refactoring on real-world code artifacts. In particular, we propose a game design, where students can compete either against a predefined benchmark (technical debt) or against each other. In addition, we describe a lightweight architecture as the technical foundation for the game design that integrates pre-existing analysis tools such as test frameworks and software-quality analyzers. Finally, we provide an exemplary game scenario to illustrate the application of serious games in a learning setting
Effectiveness of Persona with Personality Traits on Conceptual Design
Conceptual design is an important skill in Software Engineering. Teaching conceptual design that can deliver a useful product is challenging, particularly when access to real users is limited. This study explores the effects of the use of Holistic Personas (i.e. a persona enriched with personality traits) on students' performance in creating conceptual designs. Our results indicate that the students were able to identify the personality traits of personas and their ratings of the personalities match closely with the intended personalities. A majority of the participants stated that their designs were tailored to meet the needs of the given personas' personality traits. Results suggest that the Holistic Personas can help students to take into account personality traits in the conceptual design process. Further studies are warranted to assess the value of incorporating Holistic Personas in conceptual design training for imparting skills of producing in-depth design by taking personalities into account.10 page(s
Learning while Competing -- 3D Modeling & Design
The e-Yantra project at IIT Bombay conducts an online competition, e-Yantra
Robotics Competition (eYRC) which uses a Project Based Learning (PBL)
methodology to train students to implement a robotics project in a step-by-step
manner over a five-month period. Participation is absolutely free. The
competition provides all resources - robot, accessories, and a problem
statement - to a participating team. If selected for the finals, e-Yantra pays
for them to come to the finals at IIT Bombay. This makes the competition
accessible to resource-poor student teams. In this paper, we describe the
methodology used in the 6th edition of eYRC, eYRC-2017 where we experimented
with a Theme (projects abstracted into rulebooks) involving an advanced topic -
3D Designing and interfacing with sensors and actuators. We demonstrate that
the learning outcomes are consistent with our previous studies [1]. We infer
that even 3D designing to create a working model can be effectively learned in
a competition mode through PBL
Imparting Global Software Development Experience Via an IT Project Management Course: Critical Success Factors
The rapid trend towards global sourcing of software development has put increased pressure upon U.S. educational institutions in order to provide such experience and relevant skill sets to their students. This presentation describes one such initiative between a Marquette University and Management Development Institute aimed at providing experience in global software development to their students. For others interested in undertaking such initiatives, this paper discusses some dos and dontâs
Developing High Performance Computing Resources for Teaching Cluster and Grid Computing courses
High-Performance Computing (HPC) and the ability to process large amounts of data are of
paramount importance for UK business and economy as outlined by Rt Hon David Willetts
MP at the HPC and Big Data conference in February 2014. However there is a shortage of
skills and available training in HPC to prepare and expand the workforce for the HPC and
Big Data research and development. Currently, HPC skills are acquired mainly by students
and staff taking part in HPC-related research projects, MSc courses, and at the dedicated
training centres such as Edinburgh Universityâs EPCC. There are few UK universities teaching
the HPC, Clusters and Grid Computing courses at the undergraduate level. To address the
issue of skills shortages in the HPC it is essential to provide teaching and training as part of
both postgraduate and undergraduate courses. The design and development of such courses is
challenging since the technologies and software in the fields of large scale distributed systems
such as Cluster, Cloud and Grid computing are undergoing continuous change. The students
completing the HPC courses should be proficient in these evolving technologies and equipped
with practical and theoretical skills for future jobs in this fast developing area.
In this paper we present our experience in developing the HPC, Cluster and Grid modules
including a review of existing HPC courses offered at the UK universities. The topics covered in
the modules are described, as well as the coursework projects based on practical laboratory work.
We conclude with an evaluation based on our experience over the last ten years in developing
and delivering the HPC modules on the undergraduate courses, with suggestions for future work
- âŠ