LZW Compression Grant Friedline Robert Frankeny Thomas Sutcavage.

Slides:



Advertisements
Similar presentations
DEVELOPING A METHODOLOGY FOR MS3305 CW2 Some guidance.
Advertisements

Member FINRA/SIPCThursday, November 12, 2009 Resource Menu Changes - Report User Experience Study | Kevin Cornwall.
EST/CSE/ISE 323 Spring 2011 Tony Scarlatos
Ch 11 Cognitive Walkthroughs and Heuristic Evaluation Yonglei Tao School of Computing and Info Systems GVSU.
11 HCI - Lesson 5.1 Heuristic Inspection (Nielsen’s Heuristics) Prof. Garzotto.
Electronic Communications Usability Primer.
Multimedia and the World Wide Web
MScIT HCI Web GUI design. IBM’s CUA guidelines - taster Design Principles Each principle has supporting implementation techniques. The two design.
Part 4: Evaluation Days 25, 27, 29, 31 Chapter 20: Why evaluate? Chapter 21: Deciding on what to evaluate: the strategy Chapter 22: Planning who, what,
AJ Brush Richard Anderson
Interactive Systems Technical Design
Testing your design Without users: With users: Cognitive walkthrough
Today’s class Group Presentation More about principles, guidelines, style guides and standards In-class exercises More about usability Norman’s model of.
Evaluation Through Expert Analysis U U U
Heuristic Evaluation.
Usability 2004 J T Burns1 Usability & Usability Engineering.
Evaluation techniques Part 1
Heuristic Evaluation of Usability Teppo Räisänen
Human-Computer Interaction
PART A Emac Lisp   Emac Lisp is a programming language  Emacs Lisp is a dialect.
1 SKODA-AUTO.CZ prototype evaluation Poznań, 23th of March 2015.
Heuristic evaluation IS 403: User Interface Design Shaun Kane.
Heuristic Evaluation: Hotels.com
User Centred Design Overview. Human centred design processes for interactive systems, ISO (1999), states: "Human-centred design is an approach to.
Mario Čagalj University of Split 2013/2014. Human-Computer Interaction (HCI)
SAMPLE HEURISTIC EVALUATION FOR 680NEWS.COM Glenn Teneycke.
INFO3315 Week 4 Personas, Tasks Guidelines, Heuristic Evaluation.
CS 4720 Usability and Accessibility CS 4720 – Web & Mobile Systems.
Chapter 26 Inspections of the UI. Heuristic inspection Recommended before but in lieu of user observations Sort of like an expert evaluation Heuristics.
Basic Principles of HCI Lecture Requirements Analysis Establish the goals for the Website from the standpoint of the user and the business. Agree.
Nielsen’s Ten Usability Heuristics
Usability Evaluation/LP Usability: how to judge it.
10 Usability Heuristics for User Interface Design.
Usability Expert Review Anna Diubina. What is usability? The effectiveness, efficiency and satisfaction with which specified users achieve specified goals.
Multimedia Specification Design and Production 2012 / Semester 1 / week 5 Lecturer: Dr. Nikos Gazepidis
Design 2 (Chapter 5) Conceptual Design Physical Design Evaluation
Mahindra Infotainment System Heuristic Evaluation v1.0 Maya Studios July 6, 2010.
Evaluating a UI Design Expert inspection methods Cognitive Walkthrough
Information Systems and Organisations
 What to “know”? ◦ Goals of information visualization. ◦ About human perceptual capabilities. ◦ About the issues involved in designing visualization for.
Usability 1 Usability evaluation Without users - analytical techniques With users - survey and observational techniques.
Developed by Tim Bell Department of Computer Science and Software Engineering University of Canterbury Human Computer Interaction.
June 5, 2007Mohamad Eid Heuristic Evaluation Chapter 9.
CENG 394 Introduction to HCI Usability Heuristics.
Heuristic Evaluation Short tutorial to heuristic evaluation
Alan Woolrych My Background Currently – Research & Liaison Officer (DMN) From 1 st January 2003 Usability Researcher with.
CMSC 345, Version 1/11 S. Mitchell 1 Usability and User Interface Design.
RUGGAAMUFFIN Requirements analysis and design Shane Murphy.
Usability Heuristics Avoid common design pitfalls by following principles of good design Nielsen proposes 10 heuristics, others propose more or less. Inspect.
Basic Elements.  Design is the process of collecting ideas, and aesthetically arranging and implementing them, guided by certain principles for a specific.
Ten Usability Heuristics with Example.. Page 2 Heuristic Evaluation Heuristic evaluation is the most popular of the usability inspection methods. Heuristic.
CS 575 Spring 2012 CSULA Bapa Rao Lecture 6. Agenda for today Review of previous meeting Student Comments Heuristic Evaluation Presentation Team reports.
COGNITIVE WALKTHROUGH Vigneshwar Poojar. The cognitive walkthrough is a formalized way of imagining people’s thoughts and actions when they use an interface.
User Interface Evaluation Heuristic Evaluation Lecture #17.
© 2016 Cognizant. © 2016 Cognizant Introduction PREREQUISITES SCOPE Heuristic evaluation is a discount usability engineering method for quick, cheap,
Ten Usability Heuristics These are ten general principles for user interface design. They are called "heuristics" because they are more in the nature of.
Discount Evaluation User Interface Design. Startup Weekend Wellington CALLING ALL DESIGNERS, DEVELOPERS AND IDEAS FOLK: Startup Weekend returns to Wellington.
User Interface Design SCMP Special Topic: Software Development
Human Computer Interaction Slide 2
Heuristic Evaluation 3 CPSC 481: HCI I Fall 2014
A NEW FACE OF THE TECHNICAL COMMUNICATOR – UX IS OUR STRENGTH – WE DESIGN TO WRITE BY CHRIS GANTA © 2016, STC INDIA CHAPTER.
Unit 14 Website Design HND in Computing and Systems Development
Heuristic Evaluation Jon Kolko Professor, Austin Center for Design.
One-timer?. A new face of the technical communicator – UX is our strength – we design to write.
10 Design Principles.
User Interface Design.
Nilesen 10 hueristics.
CSM18 Usability Engineering
User Interface Design SCMP 368: Software Development Spring 2018
Some Usability Engineering Methods
Presentation transcript:

LZW Compression Grant Friedline Robert Frankeny Thomas Sutcavage

Client Dr. Michael Spring, professor at University of Pittsburgh School of Information Science The “users” for this applet will be current students of Dr. Spring classes and students in the Information Science program

Client / User Requirements Encoding (AKA compression) shall display the character typed and the corresponding dictionary code saved Decoding (AKA decompression) stage shall show the code dictionary being processed and the resulting output

Background LZW compression was originally programmed by Abraham Lempel and Jacob Ziv Terry Welch made modification 1984 which increased its usability Dictionary is built to alias each group of elements in the string

Project Goal Develop a Web-based, Java applet, that can be used by a student to learn the basic concepts of LZW compression

Task Analysis User Goals TASKS, ACTIONS, and WIDGETS 1. Start Applet 2. Compression 3. Decompression 4. Restarting

The LZW applet Demo Robert Frankeny

Encoding

Decoding

User Study Main type of user study was doing interviews Interviewed 10 students questions which we felt would best provide heuristic feedback

User Study Do you understand what the applet is doing? Yes (8 responses) Yes (8 responses) No (2 responses) No (2 responses) The “no” responses were not sure where the original string to be decoded came from. After explanation that the original string was arbitrary, understanding for its purpose became less of an issue. The “no” responses were not sure where the original string to be decoded came from. After explanation that the original string was arbitrary, understanding for its purpose became less of an issue.

User Study Does it feel like any buttons are missing from fulfilling the goal? No (7 responses) No (7 responses) Yes (3 responses) Yes (3 responses) Of the “yes” responses, 2 inquired about the possibility of encoding a string manually. 1 inquired about a way to manually modify the original dictionary. Of the “yes” responses, 2 inquired about the possibility of encoding a string manually. 1 inquired about a way to manually modify the original dictionary.

User Study Are the comment descriptions that appear on the applet informative? Yes (9 responses) Yes (9 responses) No (1 response) No (1 response) The “no” response suggested that some animations be used. The “no” response suggested that some animations be used.

User Study At any point, do you become stuck as to what to do next? Yes (7 response) Yes (7 response) No (3 responses) No (3 responses) Of the “no” responses, some users were tempted to click inside the text fields that were used for visual purposes only. Of the “no” responses, some users were tempted to click inside the text fields that were used for visual purposes only.

Interface Drafts and Prototypes Example Applet available on the web for LZW Applet available on the web for LZW Showed level of compression Showed level of compression Did not show decode function Did not show decode function

Interface Drafts and Prototypes Prototype 1 impractical to design an educational tool to display an extensive dictionary impractical to design an educational tool to display an extensive dictionary encoding and decoding can be better shown using a smaller sample dictionary encoding and decoding can be better shown using a smaller sample dictionary Clear Button and an Encoding/Decoding Toggle Button provided desirable options Clear Button and an Encoding/Decoding Toggle Button provided desirable options

Interface Drafts and Prototypes Prototype 2 incorporated comments displayed directly on the applet incorporated comments displayed directly on the applet elaborate on the calculations being derived behind the scenes in an effort to convey the encoding/decoding method to the user in an interactive way elaborate on the calculations being derived behind the scenes in an effort to convey the encoding/decoding method to the user in an interactive way

Interface Drafts and Prototypes Prototype 3 review with Dr. Spring and a review of our user surveys combined to produce a few modifications for the final prototype review with Dr. Spring and a review of our user surveys combined to produce a few modifications for the final prototype Dr. Spring suggested that we should read in a string instead of having the user input a manual string Dr. Spring suggested that we should read in a string instead of having the user input a manual string

Interface Drafts and Prototypes Prototype 4 (final version) Following another meeting with Dr. Spring, the fourth prototype evolved. This version contains two dictionaries, one for encode, one for decode. This version moved from Box layout to border layout. The clear button has be replaced with a Start over button. The Start over button can be used to back up to see the prior process. The input is hard coded. This assures repeating character strings. It also prevents the user from entering an illegal character (this prototype has limited dictionary capabilities). The display boxes have been set to read-only. This was done because some users were temped to type in the display box.

Heuristic Analysis Speaking the User’s Language Using Simple and Natural Dialogue Providing Feedback Error Prevention

Heuristic Analysis strongest of these Heuristics appeared to be Providing Feedback and Speaking the User’s Language weaker of our Heuristics appeared to be Using Simple and Natural Dialogue

Heuristic Analysis by Jakob Nielsen Visibility of system status The system should always keep users informed about what is going on, through appropriate feedback within reasonable time. The system should always keep users informed about what is going on, through appropriate feedback within reasonable time. Match between system and the real world The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order. The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order. User control and freedom Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. Support undo and redo. Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. Support undo and redo. Consistency and standards Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions. Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.

Heuristic Analysis Error prevention Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Recognition rather than recall Make objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate. Make objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate. Flexibility and efficiency of use Accelerators -- unseen by the novice user -- may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions. Accelerators -- unseen by the novice user -- may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.

Heuristic Analysis Aesthetic and minimalist design Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility. Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility. Help users recognize, diagnose, and recover from errors Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution. Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution. Help and documentation Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation.

Implementation Java applet technology Java components JButtons JButtons JTextAreas JTextAreas Box Layout design Box Layout design

Final User Meeting Dr. Spring April 22, 2003 impressed with our execution of the algorithm impressed with our execution of the algorithm expressed that he could have given us some more requirements at the start to enhance the product expressed that he could have given us some more requirements at the start to enhance the product

Limitations of the System Due to time constraints we were unable to come up with code snippets to cover all of the possible issues. The input sting to be encoded is fixed. The dictionary is not customizable.

Future Enhancements animations along with comments concerning the system’s actions ability to edit the original dictionary and or encode a string manually user preferences

Group Contributions Grant Friedline Wrote Event Handler & Prototyping Wrote Event Handler & Prototyping Initial Prototype Coding Initial Prototype Coding HTML page for Applet HTML page for Applet Interview questions and corresponding heuristics Interview questions and corresponding heuristics Robert Frankeny User Study User Study Final Prototype Coding Final Prototype Coding HTML page for Applet HTML page for Applet Thomas Sutcavage Testing Testing Prepared PowerPoint Slides Prepared PowerPoint Slides Wrote Report Wrote Report Help guide HTLM Help page Help guide HTLM Help page