next up previous contents
Next: The team Up: How to write Previous: How to write

Synopsis

The process of writing a device server is an iterative one (see figure 4). It starts off with the device documentation and a set of specifications which describe what is required. Often these specifications will not contain anything about logical devices and their commands nor about the class hierarchies. This is natural because of the specifications do not come from a device server programmer but from a user. It is the job of the device server programmer then to understand what the device represents and how it should be defined logically. At this stage the programmer should start thinking about class hierarchy and structure. Maximum use should be made of existing device classes, either as superclasses or as sub-objects (refer to the list of existing DSUGs for more information about device classes). Once the device has been well understood and defined thought should go into the commands to be implemented. At both stages the programmer should confer with the user to see whether the proposed implementation corresponds with the user's requirements and eventual evolutions of the software. The next stage is designing the software and writing the documentation. Only once these two tasks have been finished should coding start. The final phase is testing the code - never deliver untested software to the client.

Hopefully after going through the seven stages the programmer has a device server ready to be used. However the world is not a perfect place - the device might not correspond to what the user had in mind or the user might change his mind. Consequently even if the device server is ready and tested it might be necessary to modify it, add new functionalities to it or even rewrite it. Do not be afraid to go back to stage 1 and start again. The important thing is to deliver useful software which does the job well. The process should be repeated as often as necessary.

  
Figure 4: The iterative procedure for writing a device server



next up previous contents
Next: The team Up: How to write Previous: How to write



Andy Goetz
Tue Jan 28 13:58:13 MET 1997