Towards an abitlity model for software engineering apprenticeship

Abstract Despite recent efforts to improve the effectiveness of software engineering education, most approaches do not equip students with non-technical skills and fail to be practice-oriented. Brest University provides the software engineering by immersion paradigm as an alternative to other education systems. Shifting to the constructivism paradigm as far as possible, this education system is entirely based on a 7-month project, performed by a 6-students team within a virtual company and tutored by an experienced software engineer. The ISO/IEC 12207 standard is a reference framework of software engineering processes. This standard provides the basis of our reference decomposition into processes/activities/tasks and apprenticeship scenes. Issued from professional didactics, the analysis of activity distinguishes two kind of activity: productive and constructive. The former is work-oriented while the latter helps the actor to improve his/her own practice. Hence, constructive activity is apprenticeship and personal development. Analysing apprenticeship scenes provides an ability model of our immersion system. The model is defined in terms of its constituent competencies areas, each of which is further defined in terms of its constituent competencies families; a family corresponding to an activity of the reference decomposition. Each family is associated with a set of cohesive abilities. The ability model establishes a structure that directly supports the personal and team construction process of the knowledge and skills required to practice engineering of a software project. Each student periodically fills this structure while auto-analysing the tasks performed and him/her achievement level with the abilities defined in the model. This periodic inventory is supported by eCompas, a tool intended to manage development, assessment and value-added of competencies over the course of a curriculum or a professional career.