Software Usability

A tantárgy neve magyarul / Name of the subject in Hungarian: Szoftver termékek felhasználhatósága

Last updated: 2010. november 10.

Budapest University of Technology and Economics
Faculty of Electrical Engineering and Informatics

Mérnök informatikus szak

BSc képzés

Course ID Semester Assessment Credit Tantárgyfélév
VISZA091   3/1/0/v 4  
3. Course coordinator and department Dr. Wiener Gábor,
Web page of the course www.cs.bme.hu/....
4. Instructors
Name

 

Position

 

Department

 

Gábor BOJÁR

 

Lecturer

 

Department of Computer Science and Information Theory

 

György JUHÁSZ

 

Lecturer

 

Department of Computer Science and Information Theory

 

5. Required knowledge There are no prerequisites for this course. It is a principal aim of the course to demonstrate that usable software can be created without extensive theoretical background, just as great dishes can be cooked without being an expert in food chemistry. 

 

The tools and methods used are simple and low-tech; basic user-level computer skills are sufficient for this course.

 

7. Objectives, learning outcomes and obtained knowledge This course enables and encourages students to create user-friendly solutions regardless of their manual creative skills or design experience. We achieve this by increasing sensitivity to users’ real problems and developing analytical and design skills to solve them. 

 

In addition, by simulating processes of real-life software design, students will gain insights into the practice of user-centered design under difficult organizational, budget and deadline constraints. They will also improve their teamwork and presentation skills. 

 

Finally, the course aims at raising student awareness of cognitive sciences, usability engineering and related disciplines. 

 

 

8. Synopsis Students walk the path from an idea to a sophisticated and detailed prototype of an interactive system. Along the way, they collect theoretical knowledge via learning-by-doing and trial-and-error, as opposed to formal lectures about fine details of the discipline. 

 

Students learn how to avoid the most common pitfall of software development projects that prevent delivered systems from being fully-utilized – or used at all: the lack of proper understanding of the users of the system, their current and future needs, and the lack of verification of concepts and early designs. 

 

The course is organized along two threads. 

 

Thread 1: Design Workshop 

 

In the main thread, students form teams to develop user interfaces in a series of workshops which take them along the most important steps of the design process. See the table below for more details about the themes and schedule of the workshops. Each workshop starts with a brief introduction to the goals and methods of the workshop, but most of the time is dedicated to intensive teamwork with the assistance of the instructor. 

 

Weeks 1-3 are dedicated to choosing platforms for each team and defining the design challenges. This is followed by the analysis of users and their needs, preferences, and thinking, without any actual design activity. 

 

In weeks 4-5, students create preliminary design sketches. To wrap up this block, teams present their results to the class, for comment, criticism, and discussion. 

 

Weeks 5-11 are spent with increasingly detailed design activity, with iterative rounds of testing and design changes. At the end of this block, the final results are presented once again to classmates in an open discussion. 

 

In weeks 12-13, in a rapid round of design sessions, students adapt their designs to an alternative platform (such as creating a mobile version of a desktop application), or design a companion product on another platform. 

 

In week 14, teams finish all designs and prepare for the final exam, which is a presentation of their designs and decisions to a board of professors and industry experts. 

 

Thread 2: Usability Analysis Sessions   

 

From week 3 through week 12, a series of lectures will be delivered by invited experts from the software industry. In these sessions, students analyze competing applications or web services and identify successful design solutions or failures which make these tools easy or difficult to use. 

 

In addition, lecturers provide insight into domain specific design and usability issues, present their own failures and mistakes, and motivate students to find solutions to such problems via hands-on practice. 

 

Domains covered include architectural CAD, search engines, GPS navigation, streaming video and other important hot areas in the IT industry. Guest lecturers are senior designers, researchers and developers from successful international companies such as Graphisoft, Nav N Go, and Ustream. 

 

In addition to the lectures and workshops, students are expected to spend at least 2 extra hours per week in teams on campus, completing and refining what they produced in the preceding workshop, to ensure that all teams progress at an equal pace. 

 

Content and schedule: 

 

Week 1

 

Course intro. Design practice of a simple device.

 

 

 

Basic principles of usability and user-centered design. Forming teams for the workshop.

 

Week 2

 

Platform and design challenge selection. User and task analysis: personas, stories, workflows.

 

 

 

User and task analysis workshop.

 

Week 3

 

Analysis session 1

 

 

 

Card sorting workshop.

 

Week 4

 

Conceptual design workshop.

 

 

 

Analysis session 2

 

Week 5

 

Team design presentations 1 - open discussion of questions and issues

 

 

 

Prototyping methods and tools. Prototyping workshop

 

Week 6

 

Analysis session 3

 

 

 

User interface guidelines. Design development workshop.

 

Week 7

 

Analysis session 4

 

 

 

Evaluating user interfaces. Heuristic evaluation workshop.

 

Week 8

 

Analysis session 5

 

 

 

Preparations for user testing. User testing workshop.

 

Week 9

 

Analysis session 6

 

 

 

User testing workshop.

 

Week 10

 

Analysis session 7

 

 

 

Design development workshop.

 

Week 11

 

Analysis session 8

 

 

 

Team design presentations 2 - open discussion of questions and issues

 

Week 12

 

Alternative platform selection and start of redesign. Platform-specific design issues.

 

 

 

Analysis session 9

 

Week 13

 

Design development workshop.

 

 

 

Design development workshop.

 

Week 14

 

Design development workshop - Final design consultation

 

 

 

Student design presentations and evaluation (2+ hours)

 

9. Method of instruction Lectures (including guest lectures) with hands-on practice and analysis, project-based creative sessions in groups, prototype and design creation on paper and with simple software tools. 

 

10. Assessment At the end of the semester, student groups are required to present their design task along with the final prototype (or product), which is subjected to in-situ heuristic evaluation and an overall assessment by invited external experts.

 

 

Grading will be based on the following criteria:

 

  •         Class participation & activity on the analysis sessions                     30            points

     

  •         Class participation & activity on the design sessions                       20            points

     

  •         Usability qualities of the design solution                                          30            points

     

  •         Graphic qualities and interactivity of the submitted prototype          20            points

     

 

12. Consultations You can reach the instructor at the following e-mail address for consultation:

 

György JUHÁSZ: gyuri.juhasz@ergondesign.hu

 

13. References, textbooks and resources Steve Krug, Don't Make Me Think! A Common Sense Approach to Web Usability, New Riders, 2006.

 

14. Required learning hours and assignment
Number of contact hours

 

56

 

Preparation to the classes

 

24

 

Preparation to the tests

 

 

Homework

 

40

 

Assigned reading

 

 

Preparation to the exam

 

 

Total

 

120

 

15. Syllabus prepared by
Name

 

Position

 

Department

 

György JUHÁSZ

 

Lecturer

 

Department of Computer Science and Information Theory