We investigate how a collaborative software development paradigm in the workplace can be adapted for collaborative project-based learning in the classroom. The paradigm, called Mob Programming, where a group of co-located developers work on one problem concurrently, inspires Online Mob Programming which structures groups of 3-6 students collaborating online, in a platform integrated with automated support for role rotation. Results from this study comparing OMP scaffolding with self-organization in a university computer science course shows OMP scaffolds help students adopt OMP roles without a significant drop in group product quality.
more »
« less
An Intelligent-Agent Facilitated Scaffold for Fostering Reflection in a Team-Based Project Course
This paper reports on work adapting an industry standard team practice referred to as Mob Programming into a paradigm called Online Mob Programming (OMP) for the purpose of encouraging teams to reflect on concepts and share work in the midst of their project experience. We present a study situated within a series of three course projects in a large online course on Cloud Computing. In a 3x3 Latin Square design, we compare students working alone and in two OMP configurations (with and without transactivity-maximization team formation designed to enhance reflection). The analysis reveals the extent to which grading on the produced software rewards teams where highly skilled individuals dominate the work. Further, compliance with the OMP paradigm is associated with greater evidence of group reflection on concepts and greater shared practice of programming.
more »
« less
- Award ID(s):
- 1822831
- PAR ID:
- 10104105
- Date Published:
- Journal Name:
- Proceedings of the 20th Meeting of Artificial Intelligence in Education (AIED2019)
- Format(s):
- Medium: X
- Sponsoring Org:
- National Science Foundation
More Like this
-
-
Computer science pedagogy, especially in the higher education and vocational training context, has long-favored the hands-on practice provided by programming tasks due to the belief that this leads to better performance on hands-on tasks at work. This assumption, however, has not been experimentally tested against other modes of engagement such as worked example-based reflection. While theory suggests that example-based reflection could be better for conceptual learning, the concern is that the lack of practice will leave students unable to implement the learned concepts in practice, thus leaving them unprepared for work. In this paper, therefore, we experimentally contrast programming practice with example-based reflection to observe their differential impact on conceptual learning and performance on a hands-on task in the context of a collaborative programming project. The industry paradigm of Mob Programming, adapted for use in an online and instructional context, is used to structure the collaboration. Keeping with the prevailing view held in pedagogy, we hypothesize that example-based reflection will lead to better conceptual learning but will be detrimental to hands-on task performance. Results support that reflection leads to conceptual learning. Additionally, however, reflection does not pose an impediment to hands-on task performance. We discuss possible explanations for this effect, thus providing an improved understanding of prior theory in this new computer science education context. We also discuss implications for the pedagogy of software engineering education, in light of this new evidence, that impacts student learning as well as work performance in the future.more » « less
-
Prior research in Team-Based Massive Open Online Project courses (TB-MOOPs) has demonstrated both the importance of effective group composition and the potential for using automated methods for forming effective teams. Past work on automated team assignment has produced both spectacular failures and spectacular successes. In either case, different contexts pose particular challenges that may interfere with the applicability of approaches that have succeeded in other contexts. This paper reports on a case study investigating the applicability of an automated team assignment approach that has succeeded spectacularly in TB-MOOP contexts to a large online project-based course. The analysis offers both evidence of partial success of the paradigm as well as insights into areas for growth.more » « less
-
Commitment is a multi-dimensional construct that has been extensively researched in the context of organizations. Organizational and professional commitment have been positively associated with technical performance, client service, attention to detail, and degree of involvement with one’s job. However, there is a relative dearth of research in terms of team commitment, especially in educational settings. Teamwork is considered a 21stcentury skill and higher education institutions are focusing on helping students to develop teamwork skills by applied projects in the coursework. But studies have demonstrated that creating a team is not enough to help students build teamwork skills. Literature supports the use of team contracts to bolster commitment, among team members. However, the relationship between team contracts and team commitment has not been formally operationalized.This research category study presents a mixed-methods approach towards characterizing and operationalizing team commitment exhibited by students enrolled in a sophomore-level systems analysis and design course by analyzing team contracts and team retrospective reflections. The course covers concepts pertaining to information systems development and includes a semester-long team project where the students work together in four or five member teams to develop the project deliverables. The students have prior software development experiences through an introductory systems development course as well as multiple programming courses. The data for this study was collected through the team contracts signed by students belonging to one of the 23 teams of this course. The study aims to answer the following research question: How can team commitment be characterized in a sophomore-level system analysis and design course among the student teams?A rubric was developed to quantify the team commitment levels of students based on their responses on the team contracts. Students were classified as high or low commitment based on the rubric scores. The emergent themes of high and low commitment teams were also presented. The results indicated that the high commitment teams were focused on setting goals, effective communication, and having mechanisms in place for timely feedback and improvement. On the other hand, low commitment teams did not articulate the goals of the project, they demonstrated a lack of dedication for attending team meetings regularly, working as a team, and had a lack of proper coordination while working together.more » « less
-
Metacognition is widely acknowledged as a key soft skill in collaborative software development. The ability to plan, monitor, and reflect on cognitive and team processes is crucial to the efficient and effective functioning of a software team. To explore students' use of reflection--one aspect of metacognition--in undergraduate team software projects, we analyzed the online chat channels of teams participating in agile software development projects in two undergraduate courses that took place exclusively online (n = 23 teams, 117 students, and 4,915 chat messages). Teams' online chats were dominated by discussions of work completed and to be done; just two percent of all chat messages showed evidence of reflection. A follow-up analysis of chat vignettes centered around reflection messages (n = 63) indicates that three-fourths of the those messages were prompted by a course requirement; just 14\% arose organically within the context of teams' ongoing project work. Based on our findings, we identify opportunities for computing educators to increase, through pedagogical and technological interventions, teams' use of reflection in team software projects.more » « less
An official website of the United States government

