Skip Navigation
York U: Redefine the PossibleHOME | Current Students | Faculty & Staff | Research | International
Search »FacultiesLibrariesCampus MapsYork U OrganizationDirectorySite Index
Future Students, Alumni & Visitors
1996 Technical Reports

Developing a UAN Browser in ClockWorks: a Case Study of Incremental Development using the Clock Methodology

Eric Telford

Technical Report CS-96-03

York University

June 19, 1996


The User Action Notation (UAN) is a notation for specifying how a user performs tasks using a given interactive software system. An accurate and complete UAN specification provides a clear description of what tasks the user needs to perform to accomplish his goals, and how the user will interact with the system to accomplish those tasks. This provides the software developer with a clear direction for implementing the system's behaviour, and a reference against which the success of the system design and implementation can be measured. However, it is the exception, rather than the rule, that a thorough and accurate specification of the tasks the user needs to perform is completed before implementation work begins. The reality of interactive software development is that specification and implementation are not chronologically distinct stages. Rather, they are interleaved, as the developer moves back and forth between them, incrementally refining both the system implementation and the system design. If the UAN specification of the system evolves along with the implementation and design, the specification continues to serve a vital role, ensuring that the evolving system continues to meet the needs of the user. Unfortunately, due to the structure of the notation, it is hard to edit or even read a complex UAN specification using standard text-processing tools. Because UAN specifications are hard to maintain, they tend to be abandoned during the incremental system development process, or simply left to the end of the process and used as a documentation tool. This report documents my experience developing a UAN browsing tool using the ClockWorks development environment. ClockWorks is designed to support the incremental method of development discussed above, which I refer to as the "lazy programmer" method. The report contains a critique of how well ClockWorks supports this method, and shows how the use of UAN can be incorporated in the specification/implementation cycle.

Download paper in PDF format.

The documents distributed by this server have been provided by the contributing authors as a means to ensure timely dissemination of scholarly and technical work on a noncommercial basis. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by each author's copyright. These works may not be reposted without the explicit permission of the copyright holder.