Original author: Scott W. Ambler original: http://www.ambysoft.com/UserinterfaceDesign.pdf Sender: LOOSE_WENT Publish Type: Translate Release Date: 2004-01-09 For most people, the user interface is the software itself. Therefore, the skills and techniques that master the user interface design are the most intuitive factors that make the software to the market. Original comes from http://www.ambysoft.com/UserInterfaceDesign.pdf. For application, a basic reality is that the user interface is user-oriented. Users need to develop applications developer to meet their needs and are easy to use. Too many developers think they are art geniuses. They don't try to follow the user interface design standards, or the flowers make the product easy to use; instead, they mistake to write a more destacious code or use a set of inde fun color schemes. Important matter. Constantine (1995) pointed out that good user interfaces allow people to use applications without reading user manual or training. The importance of interface design has such a reason: First, the more intuitive user interface, the more easy to use, the more you use it. Because the interface is better, the easier training users will reduce the ding training cost; the more excellent interfaces, the less users, reduce customer support costs. Second, the more excellent interfaces, users like to use, enhance the satisfaction of developers' work. I. User Interface Design Skills and Technology This section will help improve the design of object-oriented interface. l, consistency, consistent, or. The most important thing you can do is to ensure the consistency of user interface operation. For the list box, if you double-click on item, some events occur, then double-click the items in any other list box, there should be the same event. All the location of all window buttons should be consistent, the wording of the labels and messages should be consistent, and the color scheme should be consistent. User interface-determination makes it possible to reduce training and support costs in the user's operations for interface operations. 2. Establish standards and follow. The only way to maintain consistent ways in application software is to establish design standards and follow. The best way is to take a set of industry standards to supplement their own special needs. Existing industry standards, such as IBM standards (1993) and Microsoft standards (1995), usually 95% to 99% needed. Industry standards, just use existing results, making your application or feel more like other applications that users have purchased or established. The user interface design standard should be established in the defined infrastructure phase (Atablet, 1998). 3, clarify the rules. Users should know how to use the software you develop for them. The consistency of software operations indicates that you only need to explain it. This is much easier than one step in detail how to use the application software. 4, while supporting a hand and skilled hand. The library catalog symbols for the general user of the library system, maybe it is enough, but for the skilled users, such as a book administrator, it is likely that it is not so effective. The library administrator is a special training that can be found in a complex query system, so it should consider establishing a set of query interfaces to meet their unique needs. 5, interfacial switching is important. If you switch from a screen to another, the user will be discouraged and give up. This software is meaningful when the screen process is consistent with the workflow you want to complete. Due to different users of different users, application software needs to have sufficient flexibility to support them different ways. At the modeling phase, the interface flow diagram can be used to simulate the flow between the screen. 6, the layout on the interface is very important.
In the West, people are from left, from top to read, based on people's habits, the organization's organization should also be from left and down. The layout of the screen widget should also be carried out in a manner that users are familiar. 7, information and label wording should be appropriate. The text displayed on the screen is the main source of information. If the text is worse, the user's understanding will be very bad. To use a complete wording and sentence, do not use abbreviations and code to make text easy to understand. The message wording should be active, showing the user in the control and prompts how to use the software correctly. For example, which message below is more attractive: "You entered the error message" or "account should be 8 digits"? In addition, the message wording should be consistent and the location displayed on the screen is consistent. Although such a message "Enter the name" and "should enter the account", it is inconsistent with the problem. According to the word of the first message, the better words of the second message should be "entering an account", which makes two messages. 8, understand the widget. Using the appropriate widget for the appropriate task, first help enhance the consistency of the application, it may make it easy for application software. The only way to learn how to properly use the widget is to read and understand the user interface standards and guidelines you have adopted. 9. Do not blindly from other software. Unless you know that an application is followed by your user interface standards and guidelines, you must never confirm that it is all right. Despite the look at how people do, get some ideas is a good idea, but before you know how to distinguish between user interface design, you have to pay God. Too many developers mistakenly imitate the user interface of other application software, and those interfaces are designed and worse. 10, color use should be appropriate. Use color to be cautious. If you are used, use an indicator. The problem is that some users may be a color-blindness. If you use a color to highlight some things on the screen, if you want the color-blind user noticing, you need to do some other work to highlight it, such as displaying one next to it. symbol. The use of colors is also consistent to make the entire application share the same feeling. In addition, on different platforms, the color of color is not satisfied with one system, and it often looks very bad on the other system. On the show, we often hear the show: "It can be very good on the machine in my family." 11, follow the principle of comparison. Integrate with colors in your application, make sure the screen readability. The best way is to follow the comparison principle: using dark text on light background, using light text on dark background. Blue text is easy to read with white as a background, but it is difficult to identify in red for background. The problem is not enough to contrast between blue and red, and there is a big contrast between blue and white. 12, the font is appropriate. Vintage English fonts may look proper in Shakespeare's script cover, but it is difficult to recognize on the screen. Use those readable fonts such as Serif or Times Roman. In addition, the use of fonts is consistent. Frugation, effectively use two, three fonts of the screen look much better than the screen that uses five or six fonts. Remember that each change in the size of the font is changed, the style or color is used in different fonts. 13, ash away, not removed. At some moment, users often only access certain functions of the application software. Before deleting an object, select it first, deepen the user's psychological model, and the software should do something with the delete button and / or menu item. The button should be removed or grayed? Gray off it, never remove it! When the user does not use it, it will make the user to establish an accurate psychological model for how to use the application. If only a small part or menu item is removed, it is difficult to establish an accurate psychological model because the user only knows what is currently available, and not knowing is not available. 14. Use a non-destructive default button. Usually each screen define a default button, if the user presses the Enter key to call this button.
The problem is that sometimes the user will accidentally tap the auto keys, and the result is activated. The default button must not have potential destructive, such as deletion or saving (maybe the user doesn't want to save at all). 15. Regional arrangement. When the screen has multiple editing areas, these areas should be organized with visual effects and efficiency. As shown in Figure 1, the title of the editing area is the best way. In other words, to make the left boundary of the editing area on a straight line and arranged up and down. The corresponding label should be aligned and placed next to the editing area. This is a neat and effective way of the organizational area on the screen. 16, the data is aligned. For a list of data, the usual method is that the number of winds in the whole point is aligned, the string left is aligned. 17, the screen cannot be crowded. The crowded screen makes it difficult to understand, so it is difficult to use. Experimental Results (Mayhew, 1992) The overall cover of the screen should not exceed 40%, and the screen cover in the group should not exceed 62%. 18, effective combination. Logicallyly associated items should be combined on the screen to display its association. Conversely, any items that are unrelated to each other should be separated. This is also possible to packet / or use the box in the project collection interval. 19, open the window at the operating focus. When the user doubles an object to display its editing / details screen, the user's attention is also concentrated here. Therefore, it is meaningful to open the window here. 20. The pop-up menu should not be the only source. If the main function is hidden, users can't learn how to use software. Developers' most discouraged practices are the abuse of pop-up menus, also known as context-related menus. A typical method using a mouse is to display a hidden pop-up menu to provide access to the screen area specific feature for the current work.
Second, prototype establishment and skills (1) Establishing prototype establishment prototype is an iterative analysis technology, in which users participate in the entity model of screen and reports. The purpose of the prototype is to display the possible design of the application software user interface. Figure 2 shows the steps established by the prototype. ● Determine user needs. The development of prototype depends on user needs, and demand determines the business objects that the system must support. Demand can be collected by interviews and in modeling stages (such as CRC Responsibilities), use cases and class map modeling stages. ● Establish a prototype. Develop the screens and reports required for users in the original tool or advanced language. The most beneficial advice this phase is not to spend a lot of time to write "good" code, because after evaluating the prototype, you are likely to discard these code. ● Evaluate prototypes. An assessment needs to be evaluated after the establishment of a version of the prototype. The main purpose is to verify whether the prototype meets user needs. Trim basic results should be determined when assessment: the success of prototypes, the failed and omissions. After the prototype is evaluated, some parts should be discarded, and some partially want to modify, even add a new part. ● Determine if it is completed. When there is no new demand during the assessment, or only a small amount of irrelevant requirements, the prototype establishment process can end. (2) Skills and technology of prototypes, find real objects. A good user interface is like an immersive. Therefore, it should be a starting point to determine how the user is in the real world. 2, the actual user works together. Participating in the best candidates for the original prototype are those actual users after the development of application software. These people are the biggest beneficiaries that the system successfully achieved, which is also their needs. 3, set the schedule and execute it. Set the schedule to determine when to evaluate the prototype with the user. Doing so, I have set up the expectations and forced myself to do this. It is a win-win situation. 4, use prototype tools. Flower to buy the prototype tool that allows you to quickly integrate the screen. Because the code to be written quickly, even if the code generated by the prototype tool is different, it is not much more concerned with the type of code you plan to further develop. 5, users participate. Just try the car before buying a car, the user should try it before the application of software development. In addition, the user can quickly determine if the system meets the requirements by personally trial prototype. A good way is to let users use the prototype as the actual system and use some use cases. 6. Understand the fundamental business. Before developing prototypes that support business, you need to understand the fundamental business. To talk to the main user, read the internal document of the business process, reading some of the documents that competitors implement. The more you understand the business, the more likely, it is possible to establish prototypes that support its business. 7. Different levels of prototype. Three different types of prototypes can be sequentially developed. Hand-painted original, used to display basic / probably function; computer prototype, used to display the screen, but does not include the data to be displayed: Eventually the data screen containing the display. From simple start, avoid spend a lot of time in those things that are likely to be discarded. As the prototypes are gradually close to the final solution, they will increase their complexity, and if the prototype is constantly being improved, the user will have a more clear understanding of how the application will actually operate. 8, don't work hard on the code. At the beginning of the establishment of a prototype process, with the in-depth of the business, many work can be discarded. Therefore, spend a lot of efforts to write the code that is likely to not keep. Third, interface flow chart ● Interface flowchart shows the user interface between the user interface components, the screen and reports of the application, the user interface is the system itself. Although the user interface prototype often causes the developer to be trapped in the masht of the actual operation, it is just a means of describing the user interface. User interface prototypes cause developers to miss the high-level relationships and interactions between the application interface object (usually the screen). Interface flowchart The developer simulates these high-level relationships. ● Interface Flow Chart Help Developer Verify User Interface Design Figure 3 is an interface flow diagram of a fixed order system. The box represents a user interface object (screen, report or form), arrows indicating possible flows between screens. For example, through the main menu screen, you can go to the customer query screen or order login screen.
Once you enter the order login screen, you can go to the product query screen or a customer order login screen. The interface flow chart can easily display the high-level profile of the application interface. Since the interface flow chart provides a high-level view of the system interface, developers can quickly understand the system expected operational process. It provides the viewing angle of verifying the user interface of the application software. For example, does a screen process make sense? Why can't you enter the customer order directory screen from the customer editing screen? Which directory contains all the order made by a customer? In addition, why not get the same directory from the perspective of the product? Some cases, What orders identify which orders contain some of the products, especially futures products, or those that have been unavailable. The interface flow chart can also be used to determine the consistency of the user interface. Take Figure 3 as an example, select the print command, generate a client summary report and print order, from the view, at least for printing, the user interface is consistent. Fourth, Popular Shan End Early Developers, especially system analysts, prototype developers, and programmers to build user interfaces, should deal with human factors en-gineering --- hfe and based on development platform The industry standard user interface has a understanding of the cemetery. For example, any developer based on Win32 platform should have and read Microsoft User Interface Guide (Microson 1995). Never forget, the user interface is software, not the database, not a network, nor the developers written by the cool Java code. Based on the above insights, it can be said that there is no qualification to develop software! Therefore, developers must do: First, reading this article is just a good start, but also need further education. You can start from an instephption course of user interface design, covering people from engineering, symbols, psychological models, screen design foundations, and report design foundations. If you want to develop an object-oriented user interface (Object-Oriented User Interfaces) It is recommended to read the book of the book of the BUILDING OBJECT Applications That Work (Ambler, 1998a) of this article. Second, spend two days to learn the user interface standard based on the development platform. The existing user interface standard includes many common operating systems, including the general user interface criteria for Internet development. Once again, if you don't have such courses, you have to do related learning. In short, each developer should understand the basic principles of user interface design. 5. Summary below We will design the main skills of the user interface as follows: 1. General Guide ● The consistent user interface is a key, ● Setting up interface standards and follow, ● Adopting industry standards, also make your application look Or the software developed with other institutions more consistent with other institutions, ● Classify the software operating rules to users. With consistency, the rules will only be concise, ● Supporting hands-on hands also supports skilled hand; ● Text wording, positive, to use full name, ● Do not blindly from other software " ; ● Show shortcuts on the desktop; ● Reflections on the business object and its corresponding interface object, not from the application software itself; ● Interface objects should be visually, sensory and behavior should be in real world performance Consistent.