About Face 2.0(c) The Essentials of Interaction Design

About 15 years ago, Microsoft began proselytizing a new method for organizing the functions in a Windows application. The company called this the multiple document interface, or MDI. It satisfied a need apparent in certain categories of applications, namely those that handled multiple instances of a single type of document simultaneously. Notable examples were Excel and Word.

Microsoft backed up its new standard with code built into the operating system, so the emergence of MDI as a standard was inevitable. For a time in the late 80s and early 90s, MDI was regarded by some at Microsoft as a kind of cure-all patent medicine for user interface ills. It was prescribed liberally for all manner of ailments.

These days, Microsoft has turned its back on MDI and embraced single document interface, or SDI. It seems that MDI didn't fix all the problems after all.

If you want to copy a cell from one spreadsheet and paste it to another, opening and closing both spreadsheets, in turn, is very tedious. It would be much better to have two spreadsheets open simultaneously. Well, there are two ways to accomplish this: You can have one spreadsheet program that can contain two or more spreadsheet instances inside of it. Or you can have multiple instances of the entire spreadsheet program, each one containing a single instance of a spreadsheet. The second option is technically superior but it demands high-performance equipment.

In the early days of Windows, Microsoft chose the first option for the simple, practical reason of resource frugality. One program with multiple spreadsheets (documents) was more conservative of bytes and CPU cycles than multiple programs, and performance was an issue then.

Unfortunately, the one-program–multiple-documents model violated a fundamental design rule established early on in Windows: Only one window can be active at a time. What was needed was a way to have one program active at a time along with one document window active at a time within it. MDI was the hack that implemented this solution.

Two conditions have emerged in the years since MDI was made a standard. First, well-meaning but misguided programmers tragically abused the facility. Second, our computers have gotten much more powerful—to the point where multiple instances of programs, each with a single document, are very feasible. Thus Microsoft has made it clear that MDI is no longer politically correct, if not actually doomed.

The winds of change at Microsoft notwithstanding, MDI is actually reasonable enough, as long as it is not abused. The main way to abuse it is to have more than one type of document window in a single program. Figure 25-2 shows this clearly. The CompuServe Navigator program offers a dozen or more different types of document windows, making it very difficult to understand what is going on (and AOL does this today). This is one of the main reasons why many designers would like to see the facility abandoned. But there is nothing wrong with MDI in a sovereign application, such as a word processor or spreadsheet, as long as there is only one type of document and the minimize/pluralize functions are suppressed in favor of choosing fully maximized documents from the Window menu or perhaps from a set of tabs. Otherwise, confusion sets in as functions lose their sharp edges, and navigation becomes oppressive. The reason for enforcing these limitations is twofold. First, as document windows of different types are selected, the menus must change to keep up. The user depends on the permanency of menus to help keep him oriented on the screen. Changing them bleeds away this reliability. Second, everything described in our earlier discussion about minimizing, maximizing, and pluralizing windows goes double for document windows inside an MDI application. The user is forced to manage little windows inside a big window, a truly heinous example of excise. It is much better to go cleanly from one window to the next. Going from one fully maximized spreadsheet to another fully maximized spreadsheet is powerful and effective.

Today there is little effective difference between MDI and SDI, as Microsoft implements them. In most Microsoft applications, you can go either to the Window menu or the Taskbar to change from spreadsheet to spreadsheet, and you can go to the Taskbar to change from Excel to Word.

Категории