2018 · 16 citations · 11 references
ComputingComputer ScienceKnowledge SharingSoftware EngineeringTeamworkCollaborative LearningCollaborative Learning EnvironmentsComputer-supported Cooperative WorkSmall-group LearningSoftware Project ManagementSoftware Development MethodologySoftware Engineering Education
Collaborative development approaches (e.g., pair programming, coding dojo, and hackathons) have gained increasing attention in recent years, mostly because they help to share knowledge during software development activities and might shorten development cycles and increase the quality of software products. Collaborative development approaches bring also the potential benefit to contribute to learning activities. For instance, novices might participate on collaborative development sessions in order to learn new development practices, tools, and techniques used in a software development project. Besides these potential benefits, little is known about the perception of students engaged in collaborative development efforts. Therefore, in this paper we investigate whether or not the engagement of students in collaborative development efforts contributes to the learning process of software development practices and techniques, as well as the perceived benefits and challenges related to collaborative software development activities. To this end, we first performed several of coding dojo sessions during a period of 18 months. These development sessions have been conducted within the context of a real software modernization effort, which aims to modernize two enterprise systems of the Brazilian Army. After that, we carried out a qualitative study where the participants (students, software developers, and software architects) answered a survey, in order to understand the learning benefits of using coding dojo in software development activities. The results so far are encouraging. Coding Dojos allowed professors and software architects to seamless share their experience in software development with the students. According to the answers, the methodology created a better environment for the team, allowing better discussions and ideas to be shared and implemented. This has helped the team members to solve problems easier than by themselves, bringing additional benefits, such as steep the learning curve in programming languages, usage of development tools, understanding the requirements, and code refactoring.
11
RANK ANALYSIS OF INCOMPLETE BLOCK DESIGNS
Ralph A. Bradley, Milton E. Terry · Biometrika · 1952 · 1.4K citations
The challenge of problem-based learning
IJ Taylor, HC Burgess · 1997 · 697 citations
A Systematic Mapping Study in Microservice Architecture
Nuha Alshuqayran, Nour Alí, Roger Evans · 2016 · 396 citations · Full text
Engineering, Systems Engineering, Enterprise Architecture +11