Table of Contents Previous Chapter The Andrew II Project: Printing

The Andrew II Project:
Printing

J. Peter Neergaard
Computing Services
December 12, 1992

SECTION 1 Introduction

1.1 Overview

This document describes the functional requirements for the Andrew II Printing Project. The purpose of the project is to provide authenticated printing across the PC, Mac, and Unix environments at Carnegie Mellon. The solution must provide a native "look and feel" for all platforms, and be transparent to the user community.

The goals of the project also include enhancements to the current printing environment. These enhancements include improved tools for management, monitoring, and tracking. They would also provide improved resource management through quota and access controls. Dependencies on the local file system should be minimized.

1.2 Organization

The Requirements are divided into three sections: administrative, user and
system operator.

1.3 Contact

If you have any questions about the requirements, or if you are interested in providing or developing part or all of the Carnegie Mellon Printing System, please contact:

Mark Held
markh+@cmu.edu
(412) 268-5158

J. Peter Neergaard
jpn+@cmu.edu
(412) 268-3568

David Markley
markley+@cmu.edu
(412)268-7816

Aaron Wohl
n3liw+@cmu.edu
(412)268-5032

Fax to
(412) 268-4987

SECTION 2 Requirements

Features described in the Specific Requirements fall into three different categories --- Mandatory, Highly Desirable, and Desirable.

2.1 Administrative Issues

2.1.1 Authentication
It is mandatory that the printing system:
2.1.2 Printcap Server
It is mandatory that the printing system:
The printcap file would be automatically maintained and distributed as a backup to the printcap server. If the printcap server were unreachable, the printing systems would be able to get information through the traditional file lookup. It is also necessary to maintain the printcap file for utilities which rely on it for their alternate interfaces to the printing environment.
2.1.3 Access Server
It is mandatory that the printing system:
2.1.4 Accounting
There is a need to track true printing usage. This information needs to be accessible not only by administrators, but also by the access servers. The accounting data would need to be updated regularly in order to allow the access server to correctly grant/reject requests based on quota restrictions.

It is mandatory that the printing system:

It is desirable that the printing system:
2.1.5 Store and forward
It is highly desirable that the printing system:
2.1.6 Network administrative tools
It is mandatory that the printing system:
It is highly desirable that the printing system:
It is desirable that the printing system:
2.1.7 Cross Realm Printing
It is highly desirable that the printing system:
2.1.8 No AFS dependencies
It is mandatory that the printing system:

2.2 User Issues

2.2.1 Native look and feel
It is mandatory that the printing system:
2.2.2 lpr/lpd compliant
It is mandatory that the printing system:
2.2.3 Completion notification
It is mandatory that the printing system:
2.2.4 Error notification
It is mandatory that the printing system:
The user also needs to be notified when the software determines that a job should not be printed. This could occur when a user prints a job of an unknown format, in which case an appropriate filter would not be available. This would also catch the case of printing a binary file, which if not caught, could waste a lot of time and paper.
2.2.5 Queue display
It is mandatory that the printing system:
2.2.6 Job control
It is mandatory that the printing system:
2.2.7 Paper types - by command
It is highly desirable that the printing system:
2.2.8 Encryption
It is desirable that the printing system:

2.3 System Operator Issues

2.3.1 Queue monitoring:
It is mandatory that the printing system:
2.3.2 Multiple queues per printer
It is highly desirable that the printing system:
2.3.3 Multiple printers per queue
It is highly desirable that the printing system:
2.3.4 Priority/Emergency printing:
It is desirable that the printing system: