PBL in Team Applied to Software Engineering Education Liubo Ouyang Software School, Hunan University email@example.com CEIS-SIOE, 18-20 January 2006, Harbin
Introduction • Traditionally, teachers only give lectures on classroom and arrange final testing, which have many defects because that is far away from real project developing. • There is great gap between software engineering graduates and industry demanded employee. • College of software engineering should focus on project practice training.
Problem-Based Learning(PBL) • was first proposed by Barrows, a neurology professor of Medicine School, MeMaster University at late 1960s. • PBL is a teaching method characterized by inciting students learning motivation based on group talking and communication and then enabling them understanding the course’s content thoroughly. • PBL is one of the best bridges between theory and practice of teaching.
Problem-Based Learning(PBL) • Summarily, PBL possess following characters: (1) Teaching material should come from or be related with real world projects. (2) When conducting PBL to courses teaching, students and teachers learn, work, evaluate corporately and interactively, keep adjusting and optimizing the course materials. (3) PBL focus on inciting students’ self-learning motivation but much class lecture and appointed textbook reading. (4) PBL impulse students working corporately, enable them acquiring abilities for solving real problem. By systemic training, enhance students learning roundly and achieve course target.
Features of SE curriculum • Only by giving lecture about theory without practicing, students could not really understand software engineering criteria and specification. • It is almost impossible for students to experience a whole project thoroughly because learning time is limited. • As software system becoming more complex and large, software development must be carried out based on team working, which demands software engineers work corporately with other members.
Framework of PBLT Problem Preparation Team Evaluation Team Organization Results Submission Self-Learning Software Development Team Communication
Problem Preparation (1) • Software projects come from real world; prepare a project for each team. • Ensure all technologies and skills used in project have been taught during the past training for students; further demanding on technologies and skills to them is permitted. • Core knowledge and technology for the course should be explained simply ahead.
Problem Preparation (2) • Guarantee that project can be done in 12 weeks for a team consisted by 3-5 students and 20 hours per week for each member. • Documents for this course including all standard document templates involved in software project. Project report, evaluation and assessment rules should be established. • Assign mentor and user for each project clearly. User can be real user, other stakeholders or the mentor if needed. Ensure the duty for each role is clear.
Team Organization • Organize a team by 3-5 members. • In the first meeting, declare team duty and assign each member a role and corresponding responsibility. • Analyze and decompose the project. • Make project develop plan; set up at least 3 milestones. • Make team working plan and discipline. • Mentor guarantee the process and makes response to members’ questions.
Self-Learning • Object of self-learning is decided by students themselves but assigned by mentor. • Daily learning logs is required filling in by students, format and items of logs under guidance of mentor. • Daily learning logs must record students’ questions and their answers. • Mentor should meet with students regularly to analyze and explain their problems and give them enough introductions about needed technologies.
Team Communication • Team members communicate with each other on the spot of team meeting held at least once a week. • All team members are required to take part in the meeting and talk about the problems occurred. • All meeting process should be written into logs. • Team members can also communicate with others by telephone, E-Mail, letter and so on. • Mentor or users can be invited or volunteer to attend the meeting and all they do is just answer students’ questions.
Software Development • Role and duty for each member are clear. • Documentation is required, such as requirement specification, design specification, testing plan and report and so on. In documents, represent all adopted software technologies and methods and the reasons why those were selected. • Coding and testing. • Peer reviewing of code.
Results Submission • At least handing in 3 project executive reports for each project. • All final documents involved with project development and point out each member’s contribution to the project. • All meeting records. • Each member’s learning logs. • Usable software products. • Project summary.
Team Evaluation • Team member evaluates each other. • Users evaluate team and team member. • Users evaluate software products. • Mentor evaluates team and team member. • Mentor evaluates final results submitted. • Mentor gives marks to each member.
Conclusion • Using PBLT in education can cultivate students’ self-learning abilities, will incite their interests and enhance their abilities obviously during practical working. • Executing PBLT is a challenge to instructors (mentors). The challenge includes how to propose a proper project, how to organize a sound teaching schedule, how to set up right check-points during the process, and finally how to give objective and reasonable evaluation for each student. • All those aspects should be researched during the real teaching process and improved continuously.
Thanks you! Welcome you to Hunan University