Collaborative wiki for a few of us. Fork of lines.love.
# Multiple settings

Required by pattern Explorable interface
May require patterns Cooperating windows, Garden of windows, Command control center (C&C)

 ...one form of Explorable Interface involves systems that support multiple tasks, often without a single focus. Packages such as desktop publishing systems, desktop operating environments, integrated development environments and animation systems, perform many different (but related) tasks to get the job done.

==> The system needs to perform multiple related tasks to achieve the user's desired goal. <==

When more than one task must be performed to get the job done, the tasks must work together seamlessly. This means multiple applications, modules or windows are required to cooperate.

Even though the system is bound together by a single purpose, different tasks operate on different data or work in different settings.

A desktop publishing system must tie together many cooperating tasks in order to get the job done. What if you want to print a document and continue editing before the print job has completed? The print task must cooperate with the editing task. Should you have to save your document before spell checking it? Can you move around in your document during the spell checking process? The spell checker may be a major task or even a seperate application from the document editor.

Therefore:

==> Provide each major task with its own setting and use navigational tools to tie them together. These settings must cooperate and work together, without requiring the user to halt or quit tasks to reach each other. <==

Framemaker is a desktop publishing system that contains cooperating tasks. You can print a document before saving it and popping up the spell checker window doesn't prevent you from accessing other tools or your document.

More dramatic examples are provided by Integrated Development Environments, such as Smalltalk. You can seamlessly transition between editing, browsing and execution. None of these tasks require another to be shut down or halted.

In theatre terminology, multiple settings is defined as more than one setting on a stage at the same time. Jonnie Mobley provides the following example [Mobley92]:

    In this century, English playwright Alan Ayckbourn has used a multilevel setting for several of his plays. In "How the Other Half Loves", two couples have their living rooms on the stage at the same time. The couples pass without seeing each other. At one point, two dinner parties, on different nights but involving the same guests, are enacted simultaneously with the table at center stage being in each couple's dining room. The timing by the actors must be impeccable to make it work, but it provides a delightful farce, due in no small part to the ingenuity of the multiple settings.

Just as we would shift our concentration to and from each dinner party, a user needs a mean of navigation to shift from one task or setting to another. While the _focusing_ of tasks is mostly controlled through user initiated navigation, all tasks must cooperate in order to pull off our _farce_.

Contrast this pattern with Single setting, but keep in mind that a multiple setting application can be seen as a collection of these. Regardless, you will need to define your Garden of windows, Cooperating windows and a Command control center to tie them together...