Introduction Engineering education accreditation agencies of US, UK, Australia, Japan, and Singapore have transformed their accreditation process from the traditional resource-based approach to outcome-based approach. Competencies such as ability to apply knowledge, design skills, problem solving skills, technical competence, ability to work in multidisciplinary teams, communication skills, sensitivity towards global, societal, and environmental issues, sensitivity towards ethical and professional issues, and readiness for lifelong learning have been identified as necessary (Goel 2006a). Goel (2006b) has classified core engineering and general professional competencies with reference to the requirements of Indian IT industry. Problem solving ability has been rated as the pivotal skill. Nine critical competencies include a mix of engineering and general professional skills. These are analysis/methodological skills, basic engineering proficiency, development know-how, teamwork skills, English language skills, presentation skills, practical engineering experience, leadership skills, and communication skills. Consequently, it is mandatory that all courses in engineering curricula should consciously and directly contribute towards the development of these competencies. Today, organizations have offices in multiple locations with teams interacting across various geographical sites, sometimes even in different time zones. Big software projects are divided across locations, and people across different sites are expected to combine their individual works to complete the project work. Further, programmers need to develop the ability to comprehend the programs developed by others and also to write programs that can be easily comprehended by other programmers. Increasing dependence on large amounts of Free and Open Source Software (FOSS) makes it even more crucial. However, a serious shortcoming of the typical undergraduate engineering education process is neglecting to train students to work with other programmers. Usually in a four-year engineering course, collaborative effort and teamwork is done only in the later years, i.e., in the third and fourth year. Even then the collaboration is driven more by division of labor due to size rather than complexity. Many a times, the assignment or project is designed after forming the groups in the classroom, when the teacher knows the strength of a particular group. Such approaches do not necessarily develop teamwork skills. Researchers have felt the need for a way to facilitate students to work together with clearly defined boundaries (Cliburn, 2003). Collaborative learning focuses on the role of peer work for educational success. Vygotsky in his seminal social development theory proposed that social interaction plays a fundamental role in the process of cognitive development (Goldfarb, 2001). One of key assumptions of Brunner's model of constructivist learning is a social enterprise (Driscoll, 2004). Pask's Conversation theory is founded on the idea that learning occurs through conversations with instructors or peers (Kutay, 2005). As per the social learning theory of Bandura, gaining insights into others' practices can be a valuable experience (Ladyshewsky & Ryan, 2002). Incorporating social learning theory into their experiment, these authors report that peer coaching provided the learners the benefits of enhanced knowledge, cognition, and metacognition. Lave and Wenger (1991) proposed situated learning theory on the central idea that learning involves a process of engagement in a 'community of practice.' From the perspective of this theory, learning is not seen as the acquisition of knowledge by individuals, but as a process of social participation (Smith, 2007). Dillenbourg (1999) elaborated on collaborative learning as follows: ... a situation in which particular forms of interaction among people are expected to occur, which would trigger learning mechanisms, but there is no guarantee that the expected interactions will actually occur. …
Read full abstract