
This document is a brief introduction to the visual features of the Eclipse based Useme editor clients. It is meant to give you a general overview of the plugins, without going into any specific details. It provides a high level description of the main components of the user interface, along with corresponding screenshots that show the interface in some detail.
Information on the Useme publication tool will be provided shortly.
You might also be interested in a succinct overview on the Useme's features and raison d'etre or in a more in depth introduction to the tool.
Useme is an open source collaborative tool for the capture, management and publication of requirements documents. It is based on the use case technology and it leverages the Eclipse platform. Many Useme clients may interact with a central repository that stores Useme projects, each containing the requirements documents that have been defined for that project. Useme is composed of two types of clients, namely a set of editor clients, which are Eclipse plugins, one for each type of supported requirements document, and a web based publication tool. The editor clients allow the analysts in the development team to define and subsequently manage the documents in the requirements model for any given development project, whereas the publication tool ensures quick and timely delivery of all work performed on the documents.
Whilst all work on the server side, such as the installation of a Useme server or the creation of Useme projects residing on it, are the responsibility of the Useme administrator, the Useme users (typically covering the role of analysts) are responsible for the definition and management of requirements documents through the Useme editor clients.
Eclipse is rapidly becoming the platform of choice for integrated development processes. The utilisation of Eclipse based plugins for the definition of the requirements documents enables smooth and efficient communication and collaboration between different roles in the software development team.
Furthermore the collaborative nature of Useme is a real time one: Useme ensures that the project that is stored on the server is maintained up to date with the modifications of all analysts that are simultaneously working at the definition of the requirements model. Conversely, Useme ensures that all analysts working on a given project are automatically provided with an up to date and synchronised snapshot of the project, without requiring any manual intervention on the part of the analysts.
Useme utilises highly structured, form based editors that have been custom designed to support the correct and valid definition of different types of requirements documents. These editors allow to specify structural relationships between documents or document elements, along with their stereotypes, directly in the appropriate textual context within each document. This is made possible by the utilisation of rich text, namely text that can accept what we refer to as smart links, which are the physical manifestation of structural relationships within the document’s text. When the documents are published, these smart links are represented as real HTML hyperlinks, enabling the reader to easily follow the connectivity of the requirements model. Once defined by the analysts, these hyperlinks are automatically maintained by Useme throughout all changes of the requirements model, thereby ensuring the model’s integrity and its consistency with the textual document specifications.
Please refer to the Introduction to Useme for a more complete description of what Useme is about.
The Eclipse based Useme editors are composed of a number of views and specialized editors, collected in an Eclipse perspective named Useme perspective, as shown in the figure below.
Useme perspective. Click for large image.The main UI components are the following ones:
Useme also contributes wizards and menus to the Eclipse workbench menu bar when the context is appropriate.
We would particularly like to thank Lokesh Dhakar for having created and made available the Lightbox script, a snazzy piece of Javascript code which we use in this document to present the detailed and enlarged snapshots upon request.