Most of the software is in line with the realization model
To design a software that reflects the implementation model, it is easy to: each function a button, one input field for each data, one page, a page of each code module, a dialog box, which is too common in the software world. While adequately reflecting the results of the engineers, it is not related to the user's goals, and the tasks that need to accomplish these goals. Just like Terry Gilliam's similar 1984 movies, "Brazil" (a movie full of jokes), which is only alienated by the user and put them paste them.
Software, which is designed by engineers, is the implementation model. If the engineer, those who know how to work the most clear software, the software interaction design, often the performance model will be very consistent with the realization model. For engineers, such models are reasonable, true and correct; unfortunately, they have no help and effects for users. Most users don't care about how the program is actually implemented. The user interface follows the case of implementing the model rather than the user's psychological model, and an appropriate example can be found in the popular software fax product. Every step in the process is annoying in different steps, and users have to control, and these are useless from the user's perspective. The communication with the user is completely logical to comply with the internal interior. There is a different dialog for each possible user action. This information is prompted to users when the program is convenient, and is provided when it is natural. If we want to send a fax, we either send a person who has entered into the program, or gives a new person who has not yet entered the name. However, this program complies with implementation model: The code to perform the two functions is in different modules, so the program provides a separate dialog for each function. In this way, in order to select a person or enter a name, we have to proceed with two two ways, although choice and enter your name is a primary function of the program. The designer did not think of the steps of the user in establishing and sending a fax, but only the steps that the program had to be converted to the interface. This has a better way to deal with this problem: When we enter the name and number of new faxes, the program should be automatically recorded. The main window of the program should display the name list of the previous fax recipient, so we can quickly select the people we want from. The interface of Windows is also slipped into the implementation model from time to time. Resource browser strives to make all memory in your computer look like a unified system, however, to convey this intent to the user, these memory should also be unified. However, their behavior is dependent on the physical characteristics of a particular drive. If you drag a file from a directory to another in the same hard drive, the program will be interpreted as movement, that is, the file will remove and join the new directory from the old directory, basically close to the psychological model. However, if you drag the file from the C disk to the D disk, this action will be interpreted as a copy, that is, the file is added to the new directory, but does not move from the old directory. This is consistent with the way to achieve the model-file system actual work: When the operating system shifts the file from a directory from a directory, it is just repositioning the entry in the entry table of the disk file. There is no practical clearance and writing file. However, when a file is moved to another physical drive, you must copy data to the new drive to the new drive. To comply with the user's psychological model, the original file should be cleared after copy, although this and the model realized model are different. Because the file is dragged from a hard disk to another for copying is a conditial behavior, especially from the hard disk, such as the ZIP disk, such as the moving media, such as the ZIP disk, many people will not realize that this is one of the realization model. side effect. When computer development, logical volumes are not just physical drivers, this side effect is no longer useless, because we have to remember the different behaviors of each volume.
Mathematical thinking leads to interface interaction design of the model to isolate the realization model to the user. One technique is suitable for solving the problem of constructive software, does not mean that it is also suitable for the user's psychological model. Just like your car is welded by metal parts, it does not mean that you have to learn to be solder skills. The data structure and algorithm used to express and process information in the software are reasonable tools based on math algorithm. All programmers are trained for these algorithms, such as recursive, hierarchical data structures (? Hierarchical data structures) and multi-threaded. The problem occurs when the user interface also tries to accurately express these recursive, hierarchical data, or multi-threaded concepts. Mathematical style is a model trap that is particularly easy to step into. Mathematical thinking can solve programming problems, so programmers naturally use these mathematical models as the appropriate terms of the inventive user interface. Nothing is more free than this. Design trick users do not know Boolean logic.
For example, one of the oldest and most useful tools in programmers is a Boolean. It is a simple mathematical system, which is very convenient to describe thousands of things inside the digital computer strict "open or off". The Boolean Demplete is only two main operations: with (and) and or (or). The problem is also the And and OR in English, and they usually have the opposite of the Boolean and OR for those who are not programmers. If the program uses a Boolean symbol to express yourself, the user misunderstand it can be imagined. For example, this problem often appears when querying the database. If we want to choose from the employee files and people in Texas, we will say in English, "Looking for all employees in Arizona and Texas" ("Find all my employees" ("Find all my Employees" In Arizona and Texas. "In the database, the correct expression in the database," Looking for employees in Arizona or Texas. "(" Find Employees in Arizona Or Texas) No employee will live at the same time. In two states, "Looking for employees in Arizona and Texas", it is meaningless in Boolean operations, always returns empty results. Database query programs, or any programs with the same nature, that is, Boolean operations and users, must be severely subject to serious user interface issues. It is not reasonable to look forward to seeing this confusion. Users can be well mastered in English, then why they have to express things in a language of unfamiliar, annoying, redefined keywords?