Your SlideShare is downloading. ×
Training Nielsen
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Training Nielsen

509
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
509
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • The Nielsen Version
  • The goal of heuristic evaluation is to identify usability problems in a system. The heuristic evaluation method employs a set of usability principles, called heuristics, to guide the evaluators in identification of usability problems. Each evaluator inspects the interface and checks the compliance of the interface with the heuristics. Heuristic evaluation is performed individually by each evaluator and then the results from different evaluators are aggregated into a set of usability problems.
  • During heuristic evaluation, you can freely explore an interface and identify problems or you can use scenarios to focus on a specific part of the system. In this study, we will use scenarios to limit the scope of the evaluation. You can walk through the steps of each scenario and perform them on the interface once or multiple times. Also, you are free to explore other parts of the interface to become familiar with the interface. But we are only interested in identifying problems related to the provided scenarios. For each problem that you identify, you should specify 4 components: First, the problem itself. Second, the scenario in which you identified the problem. Third, the heuristic (or heuristics) with which you found the problem. You might find problems that can’t be associated to a heuristic. For those problems, just record the problem, scenario.
  • As we are going to evaluate an IT security management tool, I want to give you a quick background about this class of applications. IT security tools are components in the design, development, and maintenance of a secure information technology infrastructure. Tools like network firewalls, intrusion detection systems, and identity and access management systems are examples of IT security management tools. The environment in which these tools work has certain characteristics. First, it is complex. Everyday, new security issues arise in this environment that need to be addressed in a timely fashion. Many tasks of security administrators are not routine, and require knowledge and expertise. Second, this environment is collaborative. It means that different stakeholders in the organization need to collaborate with each other to perform their tasks. Third, the stakeholders involved in IT security management have different background. There are security administrators, managers, employees, and external contractors who need to collaborate with each other to perform IT security management tasks.
  • As I want to present heuristics, I will give examples about how they can be used to identify problems in an IT security management tool. The IT security management tool that I will use as a running example for this part of my presentation is a network firewall. A network firewall can be a dedicated appliance, or software running on a computer. The firewall inspects network traffic passing through it, and denies or permits passage based on a set of rules. The main functionality of a firewall is filtering the packets based on certain characteristics like the source address, destination address, port, or protocol. To do this, a firewall uses a set of rules and tries to do a certain action to packets that match a rule. For example, a rule might be “block every connection from 123.123.100.100”. At first glance, it may seem that the firewall has only one stakeholder, the security administrator who manages it. But, the tool impacts different employees in the organization. One employee might require a certain type of traffic for doing his job while others might not. Managers might want to receive reports about the performance of the firewall. Multiple security administrators might want to add rules to the firewall to address security needs of their division. In summary, using the network firewall involves complexity, collaboration, and stakeholder diversity.
  • Now I will present the heuristics you will be using today. For each heuristic, I will describe it and give an example of how it can be applied to an IT security management tool, in this case, a network firewall. There are 10 heuristics that I will describe. They are called Nielsen’s heuristics and you might have seen them before. I will go through them in this tutorial to review the heuristics for you and give examples of how they can be applied to IT security tools.
  • The system should keep users informed about what is going on in the system, through appropriate feedback within reasonable time, so that users can accurately determine the right action to perform on the system and also can determine the result of their actions.
  • Assume that the security practitioner is auditing the firewall. He observes these two rules written in the firewall rule configuration file. As these rules are conflicting, the security practitioner can’t determine if the firewall allows connections to 192.168.0.1 port 22 or not. But, if the firewall provides a graphical view of its state that shows the connections that go through the firewall, the security practitioner can easily understand the status of the system.
  • Users can understand the system if it matches what the users know from the real world. [Nielsen heuristic itself with modifications] Therefore, the system should speak the users' language, with words, phrases, and concepts familiar to the user, rather than using system-oriented terms. It should follow real-world conventions, making information appear in a natural and logical order.
  • Assume there is rule in the firewall that says inbound connections on eth0 network interface should be blocked. So from the viewpoint of the security admin, inbound connections might mean connections that come from outside world into the organization’s network. But the firewall is developed in a way that inbound means connections that enter eth0, and eth0 is a network interface that connects to the internal network. Therefore inbound connections to eth0 might mean connections that come from the internal network. Here we have a mismatch between what seems logical in the real world and how the system works.
  • Users often make mistakes in choosing their actions. Therefore there should be a way for users to exit an undesirable state. Supporting undo or redo is an example of a shortcut for exiting such an unwanted state.
  • Assume the security practitioner just deleted 3 rules from the firewall by mistake. The system should provide an easy way for the user to recover those deleted rules such as providing an undo feature or providing a backup version of the rules.
  • When using a system, users should not have to wonder whether different words, situations, or actions mean the same thing. It is better if the system can follow platform conventions and terminology which are familiar to the user.
  • In the firewall, there are two ways to manage the firewall rules. The security admin can edit the rules either in a text file of the rules or through the graphical user interface of the tool. There should be a consistency in the two methods. For example, the terminology in both files should be the same. Here, in the text file the term “inbound” is used; and in the GUI the term “incoming” is used. This might lead to mistakes by security admins.
  • Even better than good error messages is a careful design that prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.
  • Assume the security admin is going to add a rule that allows connections on port 22 to subnetwork 1. But there is another rule in the firewall that prohibits connections on port 22 for the whole network. In this case, the firewall can show a warning to the security practitioner, that adding such a rule might be a mistake.
  • Minimize the user's memory load by making 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.
  • Assume the security admin wants to add a rule to the firewall rule set. The system can provide him with a text box to enter the rule like in this figure. But the security admin (unless he has been working with the firewall for years) needs to switch back and forth between the interface and the help file to know the syntax and the order of writing the rule.
  • Different users might use system in different ways. For example a novice user might prefer to go through more steps that help him do the tasks successfully, but an expert user might prefer a very straightforward way for performing an action that he is familiar with. Therefore, it would be good if the tool provides customization in a way that helps users tailor their frequent actions and choose the way they want to perform their tasks.
  • Assume that the security admin now gets more familiar with the firewall. He wants to easily paste certain rules into the firewall. The interface on the top, while helps him to understand and comply with syntax, does not allow him to directly paste whole rules into the system. But the second interface, on the bottom, allows this. Therefore, the system should provide the security admin the flexibly to choose what interface he wants to use. If he is comfortable with writing rules himself, the bottom interface might do the job faster.
  • 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.
  • Aesthetic and minimalist design could be achieved in a firewall by providing a well-designed user interface. The interface should show the information that security admins really need, no more or less. For example, in the top picture, there are no visual icons for the different components of firewall rules and there are empty rules that filled the screen. On the bottom interface, the rules are demonstrated by visual cues and only existing rules are shown.
  • Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.
  • Assume the security admin is going to add a rule that allows connections on port 22 to subnetwork 1. When he adds the rule, the system shows an error. As you can see in the picture, the error does not help the security practitioner understand why the rule can’t be added to the system or what he should do. Now if the system provides the reason of the error and provide suggestions for improvement, it would help the security practitioner. For example, the first and the second error messages describe the reason of the error. The third error message, gives suggestions as well.
  • Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.
  • Recall the rule adding interface from the previous examples. It would be good if the system can provide a link to the help document or display a pop-up window that describes the logic behind each rule, the range of possible values, and the different parameters.
  • Now that we have covered the heuristics, I want to give you a quick overview on the system that you are going to evaluate. The system is an Identity Management System. I will start by describing the functionality of the system through an example.
  • Assume a new employee just joined neteauto, a big car insurance company, as a sales rep. The company wants her to be productive right away. So they want to give her access to the resources in the organization, but only those resources that she really requires. Neteauto uses an identity management system to manage the identities of this employee and the access privileges she needs across multiple systems. An Identity management system can automatically create identities for users on different systems and allow users to access basic services like email and active directory.
  • Now, assume she wants to access certain records in the sales system. She can initiate a request inside the identity management system. This request goes through a workflow and is approved by her manager (the VP of sales). After the manager’s approval, a member of the IT security team implements her request by granting her access to the records.
  • This system can also provide facilities for auditing. A security admin can start a certification process in the IdM system. By certification, we mean auditing the privileges of employees to check that they only have access to the resources that they need. In this process, the manager receives a notification that he should certify the privileges of 4 of his employees. So he goes through the list of roles for these 4 employees and checks if they should possess these roles or not. After the verification, those roles that are not legitimate are revoked from the users.
  • I will now briefly go through the interface of the tool we are going to evaluate. It is called CA Identity Manager.
  • Transcript

    • 1. Heuristic Evaluation Tutorial
    • 2. Heuristic Evaluation
      • Goal: Identifying usability problems in existing systems
      • Checking compliance with a set of usability principles
      • Performed individually
      • Results will be aggregated
    • 3. Heuristic Evaluation
      • The scope is limited to scenarios
      • You can go through the interface several times
      • You should specify:
        • The problem
        • The task
        • The heuristic(s)
    • 4. IT security management (ITSM) tools
      • IT security management tools are components in the design, development, and maintenance of a secure information technology infrastructure.
        • Examples: network firewall, intrusion detection system, identity and access management system
      • Characteristics of the ITSM environment
        • Complex, collaborative, people with different backgrounds
    • 5. Example ITSM Tool
      • Firewall as a running example
      • Filtering packet based on certain characteristics
      • Firewall use rules for this purpose
        • E.g. block every connection from 123.123.100.100
    • 6. HEURISTICS
    • 7. 1 - Visibility of system status
      • The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.
    • 8. 1 - Visibility of system status : example Firewall rules: Block all connections to the range(192.168.0.1 - 192.168.0.255) Allow connections to 192.168.0.1 port 22 Firewall Security Admin
    • 9. 2 - 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. It should follow real-world conventions, making information appear in a natural and logical order.
    • 10. 2 - Match between system and the real world : example Firewall rules: eth0 inbound on port 22 block eth 0 eth 1 Security Admin
    • 11. 3 - 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.
    • 12. 3 - User control and freedom : example Firewall rules: A X B X C X Firewall
    • 13. 4 - Consistency and standards
      • Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions and terminology which are familiar to the user.
    • 14. 4 - Consistency and standards : example Firewall rules file: eth0 inbound … block Block all incoming connections on eth 0 Block all incoming connections on eth 1 Block all incoming connections on eth 2 … Firewall UI: Firewall Security Admin
    • 15. 5 - Error prevention
      • Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.
    • 16. 5 - Error prevention : example Firewall rules: Block all connections on port 22 Allow connections on port 22 for subnetwork1 Are you sure … ? Security Admin
    • 17. 6 - Recognition rather than recall
      • Minimize the user's memory load by making 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.
    • 18. 6 - Recognition rather than recall : example Firewall Security Admin Write the rule in the following text box: Write the rule in the following: interface From To Port
    • 19. 7 - 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.
    • 20. 7 - Flexibility and efficiency of use : example Security Admin Write the rule in the following text box: Write the rule in the following: interface From To Port
    • 21. 8 - 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.
    • 22. 8 - Aesthetic and minimalist design : example Security Admin
    • 23. 9 - 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.
    • 24. 9 - Help users recognize, diagnose, and recover from errors : example Allow connections on port 22 for subnetwork1
      • Error
      • Error 22
      • Error – rule can’t be added
      • Error – Rule is in conflict with the rule number 34
      • Error – The port number is not valid
      • Error – The port number should between 1~1024
      Firewall Security Admin
    • 25. 10 - 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. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.
    • 26. 10 - Help and documentation : example Write the rule in the following: interface From To Port ? Security admin Firewall Firewall UI Write the rule in the following text box:
    • 27. IDENTITY MANAGEMENT SYSTEM
      • The target system for heuristic evaluation
    • 28. Identity management system Neteauto Sales rep. Source: Identity Lifecycle Management Flash Demo (http://www.ca.com/us/identity-management.aspx#documents)
    • 29. Identity management system Sales rep. VP Sales Security admin Previous sales reports IdM System
    • 30. Identity management system Certification Process Notification IdM System VP Sales Security admin Employees
    • 31.
      • System Demo