Xuse User Guide: Overview
This document covers the basics of using Xuse, what all the document files are, how they relate to each other and what commands to run to create, maintain and generate project documentation.
Getting Started
If you just want to get going with Xuse to see what sort of output it generates using the template project see the getting started guide.
Xuse architecture
Whilst it is not essential to understand the Xuse architecture it is helpful to have an overview so that you can understand the way to edit requirements and publish the resulting HTML.
Xuse is essentially built on the premise that requirements, use-cases and other supporting documentation can be written and maintained in XML files. The files are knitted together and transformed into documentation via Java and XSLT.
The Xuse XML files and the XML structure are described in the relevant sections of this user guide (e.g. xuse-requirements.xml
). Their relationship with each other is shown at a high level below:
When working with Xuse you need to edit the XML files with new content and re-generate documentation as and when required. To make sure your files are backed up and not corrupted it is recommended that you frequently version control your files in a version control system such as CVS or Subversion.
Basic project structure
At this stage it is assumed that you have installed Xuse and set-up a new project.
You should see a project structure similar to the following (note in this case the example project is called xuse-demo and the project HTML generation script has been run which has created additional folders
The following table describes the different directories:
Folder path | Description |
---|---|
lib [optional] |
An optional folder for (neatly) storing the required libraries (saxon, xuse.jar) to run Xuse |
src/actors |
Folder containing the actors.xml file with definitions of all actors associated with use-cases. |
src/requirements |
Folder containing the xuse-requirements.xml file with definitions of all requirements for the current project. This folder also contains the stakeholders.xml file with definitions the requirement stakeholders. |
src/resources |
Folder containing the glossary.xml file with definitions of the project glossary as well as a user dictionary file that can be used to override some of the standard Xuse text. |
src/use-cases |
Folder containing the Use-cases. Use-cases may be directly in this folder or in sub-folders that reflect the use-case package structure. |
target |
Folder containing the generated (HTML) files. Note the folder is only present once document generation has been run at least once. |
xusexsds |
Generated folder containing the XML Schemas for Xuse XML files. This folder and the contents should not need to be edited or moved. Note the folder is only present once document generation has been run at least once. |