Teaching Software Project Management through
Team Projects with Simulation-Based Training
Amir Tomer and Michal Iluz
Project management is taught in most software engineering programs. While the general theory and skills of Project Management is applicable to all kinds of projects, Software projects still have their unique attributes, constraints and methods. As software in usually developed in project teams, project team building should be crucially exercised. This article describes a Software Project Management course which was developed to face three challenges: (1) to adapt the general theory of PM to the SW context, (2) to train students in working as, and (3) to provide hands-on real-life experience with managing a project. The first challenge is met by a unique adaptation of the PMBOK  to the context of software projects. This is done by incorporating specific SW methods into the general PM Knowledge Areas. For example, applying Function Point Estimation and COCOMO to Cost Management, agile life-cycles to Integration Management, CMMI to Quality Management, and more. For meeting the second challenge the students are divided into Project Management Teams, each of which comprises a Project Manager, a Chief Engineer/Architect and a Quality Manager. As a team they have to submit a Project Management Plan which evolves throughout the term and includes all the ingredients of a PMP, according to a specified template, based on an ISO standard . By assigning different roles to the team members they are encouraged to discuss and resolve conflicts from their different aspects: management, engineering and quality. The third challenge is met by using a novel Project Team Builder (PTB) simulator , which enables the Project Management Teams to investigate and modify their plans through various scenarios, by introducing planning alternatives and coping with unexpected events (e.g. staff resign) which are randomly injected according to their pre-defined risk assessment. The PTB simulator, which was awarded "Product of the year" by the PMI in 2008, is unique by combining both traditional project attributes (such as cost and schedule) and product attributes (such as system performance). This enables to validate and examine their debates over planning conflicts. Data collected from feedbacks of more than 100 students over 5 terms show very high students' satisfaction and high evaluation of the relevance of the course to their future employment.
Keywords: simulation-based training; simulation-based education; project management; software engineering, team project management