General Criteria

Source: Jef Raskin, "General Criteria" (28 September 1979)-- in "The Macintosh Project: Selected Papers from Jef Raskin (First Macintosh Designer), Circa 1979," document 6, version 2.
Location: M1007, Apple Computer Inc. Papers, Series 3, Box 10, Folder 1.

1. Major Concepts

The most important goal (after the operational goals set out in Document 3), in my opinion is for this computer to have a selling price of $500 or less. If it is significantly more expensive than this, there will be little to differentiate it from some of our other personal computer. Macintosh is designed to be much easier to use than existing computers, and it must be provided with a range of pre-programmed applications that the average person will find alluring.

1.1 Packaging

The package must be compact (13" width, 13" depth, 5" height maximums), lightweight (under 10 lbs), and robust (it would be desirable that a three foot drop onto a solid floor cause at most cosmetic damage). Since the cost analysis seems to indicate that a display, a disk, or a printer cannot be part of the package (Document 5), these and other peripherals should be attachable to the basic unit. It is imperative that Macintosh not evolve into a tangle of wires. Therefore it is probably necessary for each peripheral to attach to the basic unit both mechanically and electrically, allowing a daisy-chain bus and therefore an open-ended number of peripherals. Figures 4, 5 and 3 show some possible physical arrangements. The IEEE 488 bus might be considered as part of the definition for this application. This would allow the basic computer, with video, RF, phone and one RS-232 outlet to have a very attractive price, with relatively inexpensive match ing peripherals. Markkula's intriguing suggestion that the units be connected by radio links rather than physical ones should also be investigated. It may be less expensive than the present suggestion. The problem of FCC regulations and the need for separate power supplies remain open questions. The modular packaging concept allows us to offer, for example, a variety of displays as technology permits. A strong defeciency of modular packaging is that we would have to write s oftware that can work in a variety of configurations. This greatly increases the cost to produce software, and presents marketing and diagnostic problems as well.

1.2 Portability

Aside from the size and weight constraints, it would be especially beneficial if the unit could be used portably. One of the add-on packages could be a battery pack with, if necessary, an inverter. The power supply itself could be in one of the add-on packs, giving the user the choice of an AC supply or a DC supply and charger. If no display is built in, the user has the option of carrying a smaller package, and using a home TV. Most home black and white TVs can support 64 characters per line. I have tested this using the Poly 88 computer, which is a 64 character, upper/lower case machine.

1.3 Learnability

Macintosh must be easy to use. The keyboard should be typewriter-like, with no computer jargon on the key-tops. Nonetheless, it must be able to generate the entire ASCII code-set. But it will be the design of the software and manuals that will have the greatest effect on the ease with which the computer will be used--coupled with the expectations generated in the user by our advertising and the current personal computer milieu. A separate set of documents will cover software and manual design, and yet another will have to discuss advertising strategy.

1.4 Serviceability

Macintosh must be serviceable: Wil Houde would like to give a one year unlimited warranty with the machine. What is required is a long MTBF. In the presence of the strong price constraint we cannot merely take the path of high quality components for whatever design we come up with--we must restrict the ambition of the design so that we can afford to build it well. The modular approach taken above is both a help and a hindrance to reliability: each of the parts will be designed independently, and to different restraints, they can even have different warrantees. On the other hand, there is now a set of electrical and mechanical connections that otherwise would not be there. Since the signal may pass through a number of boxes, a failure in an intermediate module might affect the operation (and the diagnosis) of another unit. A single-box design puts many electronic and mechanical pieces together, thus significantly increasing the probability of a failure of the whole device in a given time period. It can be argued that if any of the modules fail in a modular design, any program that uses that module cannot run anyway, and the entire machine is lost in spite of the modularity. On the other hand, it is easier to manage the shipment and servicing of a single box. The software reliability of a single-box system is also greater. Serviceability is also a function of the quality of the manuals. A separate document will discuss the on-line and off-line manuals

1.5 Maintainability

Ease of repair is a function of simplicity, accessibility, modularity and the design of diagnostic software and procedures. Aside from having the design monitored by our service and repair personnel, the designs being considered seem inherently maintainable. We should consider setting up a system programming effort to write a set of diagnostic routines as part of the Macintosh project.

1.6 Produceability

At all times, our production engineers will be consulted on the design of the computer. The fundamental design should be single board, with an integral keyboard if possible.

2. Software design criteria

2.1 Learnability

There is one quality that software can have to improve learnability: consistency. That one attribute is probably more important than the details of what we are consistent about. Consistency also minimizes the size of our manuals, and decreases the time it takes to write and test software. It increases the time it takes to design a system, since all aspects of the software, from the commend level to every application program must be considered in setting up the design parameters.

2.2 Maintainability

All the software for Macintosh must be written under the same system and in the same language. The operating system will probably be a descendant of SOS, and the language will probably be PASCAL. (This should not prejudice the choice of user languages).

2.3 Reliability

We expect that we shall sell hundreds of thousands of Macintosh computers. It should be a guiding principal that software goes out as the result of a program designed in the spirit of the NASA "zero defect" program since it will become uneconomical to update programs once they are sold or delivered as part of the system.

Document created on 4 April 2000;