MOTIVATING AND ORIENTING NOVICE STUDENTS TO VALUE INTRODUCTORY SOFTWARE ENGINEERING Daniel Port, Chris Rachal, Jia Liu University of Hawaii x 2, USA; Nanjing University, China Our Novice Students Were Poorly Oriented and Motivated to Study SWE “I’ve been successful without all this.” “The instructor was enthusiastic about content but sometimes the content wasn’t interesting to me and other students” “All this process stuff just gets in the way of programming ” “Why do we need to do so much documentation?” Palpable Consequences… Seriously?!? I learned a lot in this course The instructor stimulated me to think about the subject matter US After course survey: # type / total responses • • • • poor class performance Negative perception of course from students negative perception from employers of student preparation for jobs students not pursuing or poor success with software engineering careers But We Know Software Engineering is Important For Our Students! … I thought I would spend most of my time programing, but it’s all about requirements, documentation, and project management just like you said. I wish I paid more attention in ITM353.” We Tried … We knew there was a problem, but were not sure exactly what is was. We tried the usual prescriptions: Real-client projects Adopting agile methods New textbooks purporting modern, innovative learning approaches Infusing software engineering concepts into prerequisite courses (Introductory Programming) Active Learning / engagement / in-class activities Some Improvement! • • • New textbook Real-projects Infusion The instructor stimulated me to think about the subject matter 4.6 4.4 I learned a lot in this course 4.55 Infusion into ITM352 4.5 Infusion into ITM352 4.45 4.4 4.2 4.35 4 4.3 campus college your dept your class 3.8 campus 4.25 college 4.2 3.6 your dept 4.15 3.4 spring 2005 spring 2006 Fall 2007 spring 2008 your class 4.1 spring 2005 spring 2006 Fall 2007 spring 2008 But … Also quality of work did not improve substantially With real-projects students did tend to appreciate SWE but only after “being burned” or “after the fact” Not always a positive experience frustration, discouragement, resentment Poor application of material 1st time around, retention A survey after the course was over found students had: little understanding of the relevance and utility of the course material low motivation and interest in the course lack of confidence and enthusiasm in pursuing software engineering jobs after graduation Lack of Motivation and Orientation Primary problem is that novice students tend to lack motivation and are poorly prepared (oriented) to appreciate the study and practice of software engineering. From the start of the course need to foster: Intrinsic motivation (self-fulfillment, enjoyment, satisfaction) Extrinsic motivation (perceptions of current and future success) BIG CLUE: The more experienced the student, the more motivated and oriented they tended to be from from from the start DUH?!? But Why? Educational Psychologists Say … Students should be given an opportunity to explore for themselves the how the course material can help achieve future goals. This is the future time perspective (FTP) Students should acquire an understanding of the instrumental value of present behavior (IVPB) for future goals. Barbra Grosses book “Tools for Teaching” suggests: Give frequent, early, positive feedback that supports students' beliefs that they can do well. (FPF) Ensure opportunities for students' success by assigning tasks that are neither too easy nor too difficult. (EZ) Help students find personal meaning and value in the material. (PMV) Create an atmosphere that is open and positive. (OPA) Help students feel that they are valued members of a learning community. (LC) Four Engagements Developed four “early awareness engagements” specifically to implement suggestions Done before topics that have been difficult to motivate (e.g. SDLC, project roles) Practical, quickly and easily implemented within any kind of course, high-impact, low-effort Engagement 1: Interview a Professional ASSIGNMENT 1 Your task is to interview an “MIS professional” about SAD (Systems Analysis and Design) topics. The main question to answer is: “What should a successful MIS person know about SAD?” 1) You will work with up to two partners, as assigned. Your team will choose an MIS professional to interview, or you may request to interview an MIS professional you know personally. You will contact the MIS professional assigned to your team as soon as possible and set up an interview time. You may interview by phone, but in person interview is recommended if possible. http://itm-vm.shidler.hawaii.edu/itm353/asst1.html Sign-up Example Example Results Topic MIS Pro Priority Your Interest MIS Pro Priority Your Interest MIS Pro Priority Chris,Lauren 1 Your Interest 1 Henry, Matt 1 1 Chris, Erick 1 1 1 1 2 2 1 1 11. Systems Design 1 1 1 1 2 1 5. Fact-Finding Techniques for Requirements Discovery 2 2 1 1 1 2 1. Information System Building Blocks 2 2 1 2 1 2 6. Modeling System Requirements with Use Cases 2 2 1 2 1 16. User Interface Design 2 3 2 1 9. 2 2 1 19. Systems Operations and Support 1 1 8. 2 12. Application Architecture and Modeling MIS Pro Priority Your Interest MIS Pro Priority Your MIS Pro Your Interest Priority Interest 2 2 Adam, Chad 2 2 Yexi, Mike 1 1 1 1 1 2 2 MIS Pro std Yours 1 1.20 0.45 1.20 3 2 1.43 0.79 1.40 1 1 2 1.43 0.79 1.40 3 2 3 2 1 1.43 0.49 1.80 3 3 2 3 2 2 1.57 0.79 2.20 2 3 3 1 1 2 3 1.57 0.79 2.40 2 2 3 2 1 1 1 2 1.71 0.76 2.00 2 1 2 3 3 2 3 1 1 1.71 0.76 2.00 1 1 2 3 1 3 1 1 3 2 1.71 0.79 2.00 2 1 2 1 1 3 3 2 2 3 2 1.71 0.82 2.00 1 1 2 1 2 3 3 3 1 2 2 3 1.71 0.76 2.20 15. Input Design and Prototyping 1 3 2 1 2 2 3 2 2 2 3 2 1.86 0.69 2.00 2. 2 2 2 2 1 2 2 2 3 1 2 1.86 0.69 2.00 13. Database Design 1 1 2 2 2 3 2 2 2 3 2 1.86 0.90 2.00 10. Feasibility Analysis and the System Proposal 2 2 1 1 1 1 3 3 2 2 3 2 2.00 0.82 1.80 18. Systems Construction and Implementation 2 3 1 1 2 2 3 3 2 2 2 1 2.00 0.76 2.00 7. 2 2 1 2 1 1 3 2 2 2 3 3 2.00 0.82 2.00 17. Object-Oriented Design and Modeling Using the UML 2 3 2 2 2 2 3 3 2 3 1 1 2.00 0.76 2.20 14. Output Design and Prototyping 2 3 2 1 2 2 3 2 2 1 2 3 2.14 0.38 2.20 4. Systems Analysis 3. Project Management Object-Oriented Analysis and Modeling Using the UML Process Modeling Information Systems Development Data Modeling and Analysis Perry, Vaughn 3 2 3 3 Other Should we have some programming exercises throughout the course so you can keep up your hard-won programming skills? In the past I have received post-course feedback expressing frustration that there was no programming for nearly the entire semester and some students "forgot" how to program. Then at the end of the course, their team project required them to do some programming and they had to re-learn PHP. Yes: No: Other ideas: IT Application Security Should the class have a real-client team project? In the past this has been very useful for putting a lot of the abstract material and concepts into actual practice. Yes: No: Other ideas: Other Guest speakers on special topics - how many? what topics? who? No: Other ideas: We have access to a number of industry popular tools such as MSProject and Visio. They are complicated and take time to learn. Should we have some training in their use or just make them available? Yes: Yes: No: Other ideas: Student teaching. I have found that when you have to prepare a class, you learn a lot and appreciate the material more. Should we have teams of students prepare and present course topics (with my help of course)? Yes: No: Other ideas: ITM353 Fall 2008 Topics 1. Information System Building Blocks 2. Information Systems Development ■ = light/no focus 3. Project Management ■ = heavy focus 4. Systems Analysis 5. Fact-Finding Techniques for Requirements Discovery 6. Modeling System Requirements with Use Cases 7. Data Modeling and Analysis X guest speakers (ITS, HA, ???, ???) 8. Process Modeling Student team teaching (max 3 people) 9. Object-Oriented Analysis and Modeling Using the UML Class long team project (optional real-client) 11. Systems Design Small programming assignments related to topics 10. Feasibility Analysis and the System Proposal 12. Application Architecture and Modeling 13. Database Design 14. Output Design and Prototyping 15. Input Design and Prototyping 16. User Interface Design 17. Object-Oriented Design and Modeling Using the UML 18. Systems Construction and Implementation 19. Systems Operations and Support Engagement 2: Subject Matter and Real-World Job Skills (back to the) Future Value Exercise is linked to a discussion of project planning and roles and planning for their semester-long projects. In these projects the students had to adopt various project roles (project leader, infrastructure analyst, business analyst, etc.) and this exercise convinced them that such positions really did exist in the world, and helped them understand the kinds of skills that they would need to undertake such a position. In 10 minutes the students would collectively gather dozens of job descriptions, which were later viewed using this same PHP script. As a group we would then review the collected job descriptions to reinforce the kinds of duties, skills, and knowledge that employers associating with each position. Students are excited to see the list of potential jobs they might be eligible for in the future pile onto the screen during class! Engagement 3: Live Throughs Any student that can provide a feasible and convincing recommendation for implementing the system within the next 30 minutes (recall that they were expected to review the case study long before class) will immediately be awarded an A+ and is excused from any further work in the course. REAL The Questions Not Asked … • Have not given automatic A+ yet • Leads to very productive discussions and insights into SWE Productive Discussions! Engagement 4: Making A Sandwich and the SDLC #9 the instructor stimulated me to think about the subject matter #7 I learned a lot in this course 4.6 4.4 4.9 Infusion into ITM352 Early Awareness Early Awareness 4.7 4.2 Infusion into ITM352 4.5 4 campus college your dept your class 4.3 3.8 4.1 campus college your dept your class 3.9 3.6 3.4 Oh, by the way, I now enjoy teaching this class. 3.7 spring 2005 3.5 spring 2006 Fall 2007 spring 2008 Fall 2008 spring 2009 Thank you for listening and I’m happy to share the details of the four engagements. % Class Days #14 The Instructor Sets High Standards Attended spring 2005spring 2006 Fall 2007 spring 2008 Fall 2008 spring 2009 4.9 4.8 4.7 So? campus Early Awareness college your dept your class 4.6 WoW! Infusion into ITM352 4.5 100% 95% 90% 85% 80% 75% 70% 65% spring spring Fall spring Fall spring 2005 2006 2007 2008 2008 2009 4.4 4.3 4.2 4.1 spring 2005 spring 2006 Fall 2007 spring 2008 Fall 2008 spring 2009