| SGML in Transition | Table of contents | Indexes | Improving the Accessibility of SGML Documents | |||
| Hajagos Lani |
Human Factors Engineering: Creating a Productive Environment for Authoring SGML Documents |
Abstract: |
| Two key measurements of the success of any SGML system are cost reduction and user satisfaction. This paper examines implementation details that can affect ease of training, ease of use, and overall productivity; and suggests various techniques for enhancing both productivity and user satisfaction. It also looks at how to take advantage of emerging technologies to provide additional capabilities for leveraging and reusing information. |
Measuring the Success of an SGML-based System |
| A system of any type is judged a success if it meets the goals for which it was implemented. Typically, the most important goals are cost and time savings. User satisfaction, although usually not an explicit goal, is another way of measuring success. |
| User satisfaction is an important factor in overall success for a number of reasons: |
| On the other hand, if users are happy with the tools that have been provided to them, they will take advantage of the features that offer productivity enhancements and become instrumental in realizing the goals of the system. |
| For all of these reasons, it's important to consider how to achieve user satisfaction when designing a system. This can be a challenge with an SGML-based system, since it generally places additional responsibilities on users, while giving them less control over the process. Not only must the content be correct and communicate effectively, but the user must insert markup in order to structure the document. Often, the DTD used is highly structured and contains numerous tags whose usage is not clear. Users may feel that their creativity is restricted by the requirement to conform to a particular DTD. |
Making the System User-friendly |
| There are a number of steps that can be taken to enhance user satisfaction. The most important is to involve users in the system design. |
| It is typical to have one or two individuals representing the user community on the team which designs a system. Such narrow representation is usually inadequate. Chances are, the team members may not be truly representative of the user community at large. The problem is that the user community is not monolithic. It is comprised of a number of groups which have differing environments and requirements. |
| So, what to do? It is impractical to have all the users involved in system design--nothing would ever get done. However, it is possible to have various drafts of the design reviewed by a larger group. This approach is predicated on a number of suppositions: |
Avoid Over-design |
| It's often a temptation to try to build the "ultimate" system, that provides a highly tailored and automated environment. We justify such a design by arguing that it will prevent mistakes and result in enhanced productivity. The problem is, writing is a messy business. Pre-defined processes don't always fit. Users may become frustrated, because they can't achieve what they want, and often have to "fake out" the system. |
| A better approach is to start simple, and provide a flexible environment. Over time, the system can be enhanced with automated procedures that experience has shown to be useful. |
Tailor the DTD |
| Industry-standard DTDs such as DocBook or TIM are interchange DTDs. This means that they have been designed to facilitate interchange of information between organizations. In order to accomplish this, the interchange DTD must broad enough to accommodate the variations in documents of the same class. |
| Using an interchange DTD for authoring is abad idea. The content creator will have to deal with many elements that are irrelevant to his or her documents. This can lead to confusion and inappropriate/inconsistent use of tags. |
| In addition, using the interchange DTD means more work for the content creator. If there are several valid choices for insertion, the content creator must choose one. If only one is valid, the editing tool can insert the element automatically. |
| With a little analysis up front, it's possible to subset an interchange DTD so that it works better for the authoring environment. |
Enhancing the Environment |
| Once your basic environment is working, it's important to look at how to further enhance productivity. An obvious area is in assisting the content creator to find and use information. |
| SGML promises to enable information reuse. But, reusing information presupposes several conditions: |
| Investing in tools that will assist users in locating and reusing information will greatly enhance productivity, as well as make on-going maintenance of the information substantially more efficient. Some tools, such as component-level document management systems, are commercially available. Others may have to be custom developed. |
Going to the Next Level |
| Document management systems certainly facilitate reuse of information--but only the information that resides in that system's data base. However, most organizations have multiple information systems, all of which are potential sources of reusable information. These can include |
| Accessing and using that information, however, is a challenge. |
| Each system typically has its own storage format, and its own interface. Therefore, a content creator may have to master multiple interfaces and filters in order to find and use the information. Even more of a challenge is keeping up with changes in the source information. How do you know whether the tolerances you have just detailed in a maintenance procedure have changed when the component design was modified. |
| Using information from diverse sources requires the following functionality. |
Unified search mechanism |
| The WWW provides an excellent example of a unified search mechanism across a vast body of information. Search systems such as InfoSeek and Yahoo provide varying levels and methods of querying the world of web sites. Imagine the same paradigm for even more diverse information sources. A content creator could query for a type of information without knowing or caring what type of system in resides in. |
| The WWW has provided another instructive example: even though Web sites boast differing designs, the mechanisms for navigating through them are intuitively obvious, enabling the first-time visitor to explore the site and down-load information. A similarly obvious mechanism should be provided for exploring an organization's various information bases. |
Robust filtering mechanism |
| We all know that SGML facilitates reuse of information. However, it's not realistic to think that all of an organization's information bases will utilize SGML anytime soon. So, a mechanism must be provided whereby various information sources--from relational data base tables to engineering design files to spread sheets--can be tapped. The mechanism may be as simple as a displayer for engineering graphics. However, it may have to be more intelligent if the goal is to extract information from an engineering design file or a relational database and put it into table form in a document. |
| The objective of the filtering mechanism is that the content creator should not have to know or care about the format of the source data. The filtering mechanism should be able to identify the format and convert it as necessary for use in the document. |
Linking Information Sources |
| Perhaps the greatest challenge is keeping documentation up to date as the device being documented changes. SGML's entity mechanism provides a good model. However, information can't always be simply incorporated as an entity in a document. |
| Consider, for example, a diagnostic procedure. The various steps of a procedure may instruct the technician to test for specific voltages. However, the precise voltage information resides in the engineering design file, as a parameter of a particular component. Instead of trying to incorporate the voltages by reference, it may be simpler to simply create a link or pointer to the information source. With such a pointer, it's possible to automatically query the source to determine whether anything has changed. With closer integration, it would also be possible for the information source to notify the document owner of changes. |
| HyTime provides a robust mechanism for creating these links and pointers into a diverse information set. |
Summary |
| As we have seen, there are many ways to provide a friendly, efficient, and powerful environment for content creators. Some are simply a matter of good system design. Others involve new sets of tools not yet available. It's a challenge for all of us. |
| SGML in Transition | Table of contents | Indexes | Improving the Accessibility of SGML Documents | |||