10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September 2010 First experience in teaching HCI course Dusanka Boskovic Faculty of Electrical Engineering University of Sarajevo
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Content Background Organisation Course of study Some statistics Conclusion
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 HCI Course Background: capstone project within “ante-Bologna” course Digital Computers and Software Organization Introduced 2009/2010 Master studies at Automatic Control and Electronics Department, 3rd semester, elective course D. Boskovic and Nihad Borovina Learning outcome: –Human Computer Interface - Design and implementation Designing HCI as approach to develop usable software
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 What? Fundamental concepts of HCI Human factor Interaction and interface classification User interface design methods –User cantered methods –Task oriented methods –Prototyping Interface design patterns Evaluation approaches Theoretical concepts Textbook: Jenifer Tidwel: Designing Interfaces: Patterns for Effective Interaction Design, 2005.
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 What? Input: A lot of theoretical concepts Output: Change in a way of student thinking And a lot of practical work to be done on the way
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 How? Give students something to think about Surprise them Expose to effects of good and bad designs Send a clear message with assignments and lab exercises
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Mental models
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Course organisation 10 lectures (2 hours) 12 lab exercises (3 hours) 24 students AE 27 students CI Attendance (10 points) 4 Homework assignments: (20 points) Project: (30 points) –Project documentation –Application –Evaluation of another project Final exam (40 points)
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Assignments Weeks 1 - 7: –HW1: Looking for an interface –HW2: GOMS method –HW3: Sensor network prototype – design patterns Week 8: Midterm exams Weeks 9 – 14: –Project documentation –HW4: Heuristic evaluation of a web page –Project implementation
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Lab exercises Discussing examples of a good and bad interface Tests for measuring accessibility and visibility, human factors Designing a prototype for a TV remote control Space organization evaluation Designing ATM interface prototype and discussion
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Lab exercises Designing ATM interface prototype and discussion Smart home remote control paper prototype Complex data visualisation Animation techniques Project inception, planning and implementation
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 1: Looking for interface Looking for good or bad examples of user ‘interface’ Not software, but device, map your finding to select one selected interaction principle Problem with stating I LIKE or I DISLIKE Message: think as a user, remember feeling happy or frustrated 23 students AE average grade students CI average grade 4.5
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Lab: Memory test Students were presented with screenshot of a commonly used application which they could observe for a 30 seconds and than they had to answer some questions that will show what they have noticed and remembered
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Memory test
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Memory test Questions about user interface details for applications students use daily Message: how to draw attention, how to distract user, user memory span
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Lab: Space issues Measuring areas of a web page Tool: MS Paint Some of UI features can be easily measured and quantified
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Lab: Paper prototyping Smart home remote control Customers and developers teams One customer per developer team –Customers define requirements, not detailed and too specific –Developers make paper prototype –Customer evaluates prototype with developers team –Customer and developers present the solution
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 2: GOMS GOMS – goal, operator, method and selection Working in pairs Students defined goals and operators One student performed task – other analysed interaction
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 2: GOMS 23 students AE average grade students CI average grade 4.3 Messages: there are interaction analysis methods that are formal, detailed, think of time needed, applicability, results achieved,...
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 3: Prototype Sensor network – design patterns
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 3: Prototype Sensor network design patterns
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 4: Evaluation Ten usability heuristics (J. Nielsen) –Visibility of system status –Match between system and the real world –User control and freedom –Consistency and standards –Error prevention –Recognition rather than recall –Flexibility and efficiency of use –Esthetical and minimalist design –Recovering from errors –Help and documentation
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Homework 4: Evaluation Message: If you are not part of a solution you are part of a problem 24 students AE average grade 4.2 2o students CI average grade 3.4 Grades related to number and quality of identified problems, problems not identified, quality of recommendations
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Projects Open for student proposals Projects from other courses welcomed or applications for master thesis Implementation language: open (C++; C#; Java; Matlab) Project proposal – rationale for a project Demonstrated adoption of UI design principles – visibility, consistency, patterns applied
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Exam Report Questionnaire: every lesson with several questions (2-7) Provide answers related to the project –Describe their typical user –Describe method used in design, and rationale for method selection
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Statistics HW1HW2HW3HW4 AE CI students AE average grade students CI average grade 8.6
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Projects statistics Project documentation – 5 or 0 (5 points) Implementation (20 points) –24 students AE average grade 14.5 –27 students CI average grade 18.5 Evaluation –24 students AE average grade 4.5 –27 students CI average grade 4.7
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Statistics Final grade –24 students AE average grade 9.4 –27 students CI average grade 8.6
10th Workshop "Software Engineering Education and Reverse Engineering" Ivanjica, Serbia, 5-12 September /29 Conclusion Very successful – for us –Learned a lot –Gained a lot of useful material –Some problems can be anticipated - more strict rules for hw submittance –Homework grading will change (more points for HW3 and HW4) Students rated the course with high grades Messages delivered successfully