Propchange:
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/svn-log/log.svn.xml
------------------------------------------------------------------------------
svn:eol-style = native
Modified:
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/todo.html
URL:
http://svn.apache.org/viewvc/forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/todo.html?rev=425340&r1=425339&r2=425340&view=diff
==============================================================================
---
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/todo.html
(original)
+++
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/todo.html
Tue Jul 25 02:07:44 2006
@@ -3,9 +3,9 @@
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="Apache Forrest" name="Generator">
-<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-version" content="0.8">
<meta name="Forrest-skin-name" content="pelt">
-<title>Todo List (v0.8)</title>
+<title>Todo List</title>
<link type="text/css" href="skin/basic.css" rel="stylesheet">
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
@@ -38,25 +38,13 @@
<!--+
|start Project Logo
+-->
-<div class="projectlogo">
-<a href=""><img class="logoImage" alt="Plugin: Project Info input"
src="images/project.png" title="org.apache.forrest.plugin.input.projectInfo
plugin for Apache Forrest"></a>
+<div class="projectlogoA1">
+<a href=""><img class="logoImage" alt="Plugin: projectInfo input"
src="images/project.png" title="org.apache.forrest.plugin.input.projectInfo
plugin for Apache Forrest"></a>
</div>
<!--+
|end Project Logo
+-->
<!--+
- |start Search
- +-->
-<div class="searchbox">
-<form action="http://www.google.com/search" method="get" class="roundtopsmall">
-<input value="mydomain" name="sitesearch" type="hidden"><input
onFocus="getBlank (this, 'Search the site with google');" size="25" name="q"
id="query" type="text" value="Search the site with google">
- <input name="Search" value="Search" type="submit">
-</form>
-</div>
-<!--+
- |end search
- +-->
-<!--+
|start Tabs
+-->
<ul id="tabs">
@@ -123,12 +111,39 @@
<a href="http://forrest.apache.org/docs/plugins" title="Index of Forrest
Plugins">Plugins Index</a>
</div>
</div>
-<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title"
class="menutitle">Projects</div>
+<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title"
class="menutitle">Documentation</div>
<div id="menu_1.2" class="menuitemgroup">
-<div onclick="SwitchMenu('menu_1.2.1', 'skin/')" id="menu_1.2.1Title"
class="menutitle">Navigation Indexes</div>
+<div onclick="SwitchMenu('menu_1.2.1', 'skin/')" id="menu_1.2.1Title"
class="menutitle">User</div>
<div id="menu_1.2.1" class="menuitemgroup">
-<div onclick="SwitchMenu('menu_1.2.1.1', 'skin/')" id="menu_1.2.1.1Title"
class="menutitle">All</div>
-<div id="menu_1.2.1.1" class="menuitemgroup">
+<div class="menuitem">
+<a href="docs/user/useCases/changeLogFeatures.html">Change Log</a>
+</div>
+<div class="menuitem">
+<a href="docs/user/useCases/useCaseFeatures.html">Use Cases</a>
+</div>
+<div class="menuitem">
+<a href="docs/user/useCases/all.html">All Cases</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.2.2', 'skin/')" id="menu_1.2.2Title"
class="menutitle">Developer</div>
+<div id="menu_1.2.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="docs/developer/useCases/changeLogFeatures.html">Change Log</a>
+</div>
+<div class="menuitem">
+<a href="docs/developer/useCases/useCaseFeatures.html">Use Cases</a>
+</div>
+<div class="menuitem">
+<a href="docs/developer/useCases/all.html">All Cases</a>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.3', 'skin/')" id="menu_1.3Title"
class="menutitle">Projects</div>
+<div id="menu_1.3" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.3.1', 'skin/')" id="menu_1.3.1Title"
class="menutitle">Navigation Indexes</div>
+<div id="menu_1.3.1" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.3.1.1', 'skin/')" id="menu_1.3.1.1Title"
class="menutitle">All</div>
+<div id="menu_1.3.1.1" class="menuitemgroup">
<div class="menuitem">
<a href="projectDetails/projectDetails.html" title="Project details for
projectInfo">projectInfo</a>
</div>
@@ -136,14 +151,14 @@
<a href="projectDetails/projectDetails.forrest.html" title="Project details
for Apache Forrest">Apache Forrest</a>
</div>
</div>
-<div onclick="SwitchMenu('menu_1.2.1.2', 'skin/')" id="menu_1.2.1.2Title"
class="menutitle">Java</div>
-<div id="menu_1.2.1.2" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.3.1.2', 'skin/')" id="menu_1.3.1.2Title"
class="menutitle">Java</div>
+<div id="menu_1.3.1.2" class="menuitemgroup">
<div class="menuitem">
<a href="projectDetails/projectDetails.forrest.html" title="Project details
for Apache Forrest">Apache Forrest</a>
</div>
</div>
-<div onclick="SwitchMenu('menu_1.2.1.3', 'skin/')" id="menu_1.2.1.3Title"
class="menutitle">Language Indexes</div>
-<div id="menu_1.2.1.3" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.3.1.3', 'skin/')" id="menu_1.3.1.3Title"
class="menutitle">Language Indexes</div>
+<div id="menu_1.3.1.3" class="menuitemgroup">
<div class="menuitem">
<a href="projectDetails/Java_lang.html" title="All projects using
Java">Java</a>
</div>
@@ -155,8 +170,8 @@
</div>
</div>
</div>
-<div onclick="SwitchMenu('menu_1.2.2', 'skin/')" id="menu_1.2.2Title"
class="menutitle">Page Indexes</div>
-<div id="menu_1.2.2" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.3.2', 'skin/')" id="menu_1.3.2Title"
class="menutitle">Page Indexes</div>
+<div id="menu_1.3.2" class="menuitemgroup">
<div class="menuitem">
<a href="projectDetails/lang-index.html" title="A list of all projects,
indexed by language">Index by Language</a>
</div>
@@ -168,10 +183,7 @@
</div>
</div>
</div>
-<div id="credit">
-<hr>
- This is documentation for current version v0.8
- (<a href="http://forrest.apache.org/versions/index.html">More</a>)</div>
+<div id="credit"></div>
<div id="roundbottom">
<img style="display: none" class="corner" height="15" width="15" alt=""
src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
<!--+
@@ -186,10 +198,6 @@
|start content
+-->
<div id="content">
-<div title="Portable Document Format" class="pdflink">
-<a class="dida" href="todo.pdf"><img alt="PDF -icon"
src="skin/images/pdfdoc.gif" class="skin"><br>
- PDF</a>
-</div>
<div class="trail">Font size:
<input value="Reset" class="resetfont" title="Reset
text" onclick="ndeSetTextSize('reset'); return false;" type="button">
<input value="-a" class="smallerfont" title="Shrink
text" onclick="ndeSetTextSize('decr'); return false;" type="button">
@@ -282,7 +290,7 @@
</div>
<div class="copyright">
Copyright ©
- 2004-2005 <a href="http://www.apache.org/licenses/">The Apache
Software Foundation.</a>
+ 2004-2006 <a href="http://www.apache.org/licenses/">The Apache
Software Foundation.</a>
</div>
<!--+
|end bottomstrip
Added:
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/changeLogFeatures.xml
URL:
http://svn.apache.org/viewvc/forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/changeLogFeatures.xml?rev=425340&view=auto
==============================================================================
---
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/changeLogFeatures.xml
(added)
+++
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/changeLogFeatures.xml
Tue Jul 25 02:07:44 2006
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<useCases>
+ <title>Uses Cases for Change Log management features of
org.apache.forrest.plugin.input.projectInfo</title>
+
+ <useCase>
+ <title>Write status.xml File</title>
+ <description>
+ <p>Status.xml if an XML file that records the actions that have been
taken in each release
+ of a project. You can then generate a Change Log from that file using
the projectInfo
+ plugin.</p>
+
+ <section>
+ <title>Justification</title>
+
+ <p>Provide a central location and a semi-structured format for
recording
+ actions taken during project development. This file can then be used
to
+ generate various views on the changes in a release. For example:</p>
+
+ <ul>
+ <li>Changes between releases</li>
+ <li>Developers involved in a release</li>
+ <li>Release notes</li>
+ </ul>
+ </section>
+
+ </description>
+
+ <steps>
+ <step>
+ <title>Create/open a status.xml file</title>
+ <description>
+ <p>In your favourite XML editor either create a new file
+ or open an existing status.xml file. The default location of these
files
+ within a Forrest content object is in the project root. This file
should
+ conform to one of the status.xml schemas. The root element for this
+ document is <code>status</code>.</p>
+ </description>
+ <result>You have either a blank status.xml document or an existing one
ready for editing.</result>
+ </step>
+
+ <step>
+ <title>Create a developer list</title>
+ <description>
+ <p>In order to attribute changes to a specific developer it is
neceessary to create
+ a <code>developers</code> element. Within this element you should
add a single
+ <code>person</code> element for each develop who works on the
project.</p>
+ </description>
+ <result>Each developer is identified in the status.xml file.</result>
+ </step>
+
+
+ <step>
+ <title>Create a contexts list</title>
+ <description>
+ <p>Each action within a release is given a context to help classify
changes.
+ When reports are created the context of an action is used to create
a more
+ readable report in which similar actions are grouped together. You
can
+ specify any contexts you like within the <code>contexts</code>
element.</p>
+ <p>Common contexts used in an software development project are:</p>
+ <source><![CDATA[
+<contexts>
+ <context id="code" title="Changes to the Code Base"/>
+ <context id="docs" title="Changes to Documentation"/>
+ <context id="admin" title="Changes to Project Administration"/>
+ <context id="design" title="Changes to Design"/>
+ <context id="build" title="Changes to Build"/>
+</contexts>
+ ]]></source>
+ </description>
+ <result>The status.xml file describes the sufficient contexts to group
common
+ actions together.</result>
+ </step>
+
+ <step>
+ <title>Create a changes element</title>
+ <description>
+ <p>Actions that describe the changed in a release are placed within
+ a <code>changes</code>.</p>
+ </description>
+ <result>Status.xml holds an changes element that will group all
release
+ information.</result>
+ </step>
+
+ <step>
+ <title>Create a release element</title>
+ <description>
+ <p>The details of each release are enclosed within a
<code>release</code> element,
+ so you need to create that now.</p>
+ </description>
+
+ <result>You have the container for your current development
release.</result>
+ </step>
+
+ <step>
+ <title>Create a notes element</title>
+ <description>
+ <p>Each release can have a <code>notes</code> section. This is used
+ to provide descriptive text at the start of many reports. The notes
+ should describe the release in fairly high level detail, it should
+ not describe any change descriptions, these will be added in the
+ next step.</p>
+ </description>
+
+ <result>You have a user focussed description of the project and this
release.</result>
+ </step>
+
+ <step>
+ <title>Add actions taken during the development cycle</title>
+ <description>
+ <p>During the development cycle for the release
<code>action</code> elements
+ should be added for each significant contribution to the
release.</p>
+
+ <p>If the change is of particular significance and you woul dlike
it to appear
+ in the release notes generated by the projectInfo plugin you
should set the
+ <code>importance</code> attribute to <code>"high"</code>.</p>
+ </description>
+
+ <result>Each significant change in this development cycle is
describe in a
+ <code>action</code> element.</result>
+ </step>
+
+ <step>
+ <title>Generate the change log</title>
+ <description>
+ <p>To generate a changelog from your status.xml file you need to
request
+ <code>/changes.html</code> or <code>changes.pdf</code> or whatever
format
+ you have enabled within Forrest using output plugins.</p>
+
+ <p>Note that the projectInfo plugin provides a special RSS output
format
+ of. Technically, this should not be part of an input plugin and
therefore
+ it may be moved at a later date. However, you will always be able
to
+ generate the RSS feed by requesting <code>changes.rss</code>.</p>
+
+ <p>You can generate a change log for a specific version by
specifying a
+ version number in the request, for example,
<code>changes_0.1.html</code>.</p>
+ </description>
+
+ <result>Your project is able to generate a changelog.</result>
+ </step>
+ </steps>
+ </useCase>
+</useCases>
Propchange:
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/changeLogFeatures.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added:
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/useCaseFeatures.xml
URL:
http://svn.apache.org/viewvc/forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/useCaseFeatures.xml?rev=425340&view=auto
==============================================================================
---
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/useCaseFeatures.xml
(added)
+++
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/useCaseFeatures.xml
Tue Jul 25 02:07:44 2006
@@ -0,0 +1,376 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<useCases>
+ <title>Uses Cases for the Use Case management features of
org.apache.forrest.plugin.input.projectInfo</title>
+
+ <useCase>
+ <title>Write Use Case Documentation</title>
+ <description>
+ <p>Write semi-structured use case documents so that they can be reused
in a variety of ways.
+ This use case describews a process for writing such documents. This
document is derived from
+ such a <a href="useCaseFeatures.source.xml">source document</a>.</p>
+
+ <section>
+ <title>Justification</title>
+
+ <p>A use case describes a unit of work. It is typically used in the
design
+ stages of a software project. It is very useful for describing what an
applicaiton must
+ do and what patchs through the system can be taken.</p>
+
+ <p>By bringing this information together in a semi-structured document
we can use it in many
+ different ways. For example:</p>
+
+ <ul>
+ <li>Requirements Documentation</li>
+ <li>Developer Documentation</li>
+ <li>User Documentaiton</li>
+ <li>Functionality Matrices</li>
+ <li>Task Lists</li>
+ </ul>
+ </section>
+
+ </description>
+
+ <steps>
+ <step>
+ <title>Create/open a Use Case file</title>
+ <description>In your favourite XML editor either create a new file
+ or open an existing use case file. The default location of these files
+ within a Forrest content object is
<code>/content/documentation/useCases/**.xml</code>
+ </description>
+ <result>You have either a blank use case document or an existing one
ready for editing.</result>
+
+ <fixme priority="Medium">Create a DTD for use case
descriptions.</fixme>
+ <fixme priority="High">Aggregate all documents in the useCases
directory to provide
+ ne large document describing all use cases.</fixme>
+ </step>
+
+ <step>
+ <title>Create a new use case</title>
+ <description>
+ <p>A use case is enclosed within a <code>useCase</code> element.
+ Each use case should be given a brief <code>title</code> to describe
it.</p>
+
+ </description>
+
+ <result>You have the container for your new use case.</result>
+ </step>
+
+ <step>
+ <title>Describe the overall objective of the use case</title>
+ <description>
+ <p>Each use case should be described in terms of:</p>
+ <ul>
+ <li>The objective</li>
+ <li>The expected results</li>
+ <li>The justification</li>
+ </ul>
+ <p>This information should be placed in the
<code>description</code> element
+ of your use case. This node allows any XDoc markup and therefore you
are
+ reasonably free to use whatever formatting or images are needed to
convey the
+ important details most efficiently.</p>
+ </description>
+
+ <result>You have a use case that is described sufficiently well for
an average user of the end system
+ to understand its purpose.</result>
+ </step>
+
+ <step>
+ <title>Define each step in the Use Case</title>
+ <description>
+ <p>Each use case will be subdivided into one or more steps that
must be carried out
+ in order to complete the task. Each of these steps is defined within
a <code>step</code>
+ element which are chilren of a <code>steps</code> element.</p>
+ </description>
+ </step>
+
+ <step>
+ <title>Descripbe the step</title>
+ <description>
+ <p>Each step has a title and a description. The description should
provide enough information
+ for a user to complete the task and for a developer to implement
support for the user in that
+ task.</p>
+
+ <p>In addition each step can be described as required or optional.
By default a step is assumed
+ be required. To set it to optional add a
<code>required="false"</code> attribute to the
+ <code>step</code> element.</p>
+ </description>
+
+ <result>A user will be able to follow instructions on how to carry
out the step.</result>
+ </step>
+
+ <step>
+ <title>Describe the expected results</title>
+ <description>
+ <p>Provide, within a <code>result</code> a brief description of
the expected results from
+ this step. This should summarise what state the application will
be in once this use case
+ has been performed.</p>
+ </description>
+ <result>You will have provided enough information to allow
developers to test the functionality and
+ users to identify when a step has been succesfully
completed.</result>
+ </step>
+
+ <step required="false">
+ <title>Add "fixme" notes</title>
+ <description>
+ <p>A fixme note is enclosed within a <code>fixme</code> element.
It describes something that
+ remains to be done within this step. Each fixme has a priority
attribute which can take one of
+ of the followin values:</p>
+
+ <ul>
+ <li>Enhancement - a nice to have ehancment that may or may not
be implemented.</li>
+ <li>Low - this is considered an important addition to the use
case, but everything works without it.</li>
+ <li>High - this is an important addition. Everything works
without it, but having this implmeneted would
+ improve the application considerably.</li>
+ <li>Major - this is nor preventing work that utilises the use
case, but it is considered a requirement
+ for the next release since it adds key functionlaity.</li>
+ <li>Blocker - this is preventing the correct operation of this
use case and must be implmeneted ASAP</li>
+ </ul>
+
+ <p>Although this step is optional, it is good practice to allways
add a
+ <code><fixme priority="blocker">Not yet
implemented</fixme></code>
+ element to all new steps. This is becuase these nodes will be used
to build a
+ functionality matrix later on.</p>
+ </description>
+
+ <result>Users will be able to understand to what degree a step is
implemented and developers will be able to
+ see what remains to be done.</result>
+
+ <fixme priority="enhancement">All fixmes to link to an issue tracker
entry</fixme>
+ </step>
+
+ <step required="false">
+ <title>Add alternatives</title>
+ <description>
+ <p>Sometimes there will be alternative paths through each step.
These can be described in an
+ <code>alternatives</code> element that allows free-form XDoc
content. However, please be
+ careful, if an alternative is more than a simple variation you may
want to consider a
+ whole new use case for the alternative.</p>
+ </description>
+
+ <result>Minor variations in the path through a use case will be
documented for your users.</result>
+ </step>
+
+ <step required="false">
+ <title>Write Implementation Notes</title>
+ <description>
+ <p>Developer implementation notes for each of the steps should be
added either when writing the
+ initial use case or later during the development phases of the use
case. These notes are for technical readers
+ and are intended to help those who come after the initial author
to get a starting point when inspecting how
+ a feature is implemented. It is not intended that these notes will
contain full implementation details, only an
+ overview should be provided.</p>
+ </description>
+
+ <result>A technical reader will be able to gain a baisc
understanding of how each step is implemented in the
+ application.</result>
+ </step>
+ </steps>
+ </useCase>
+
+ <useCase status="In Progress" owner="open">
+ <title>Generate Use Case Documentation for Developers</title>
+
+ <description>
+ <p>Generate a complete list of all use cases for a project in a format
useful to
+ developers of the application. This list is to include:</p>
+
+ <ul>
+ <li>a description of the use case</li>
+ <li>a summary of each of the steps involved</li>
+ <li>full details of each of the steps</li>
+ <li>a description of the expected outcome of each step</li>
+ <li>details of common alternatives in each step</li>
+ <li>implementation notes for each step</li>
+ </ul>
+
+ <section>
+ <title>Justification</title>
+ <p>A use case describes a unit of work. It is typically used in the
design
+ stages of a software project, however, they can often be useful in
creating
+ user documentaiton. Especially when they describe user interface
functionality.</p>
+
+ <warning>Unfortunately this use case document does not currently cover
all functions
+ of the plugin since this functionlaity was added after many other
features. Whilst you
+ are exploring this feature, why not add a use case to the plugin and
submit a patch
+ so that those coming after you can enjoy more complete
documentation.</warning>
+ </section>
+ </description>
+
+ <steps>
+ <step>
+ <title>Make HTTP request</title>
+ <description>
+ <p>
+ Request
+ http://localhost:8888/docs/developer/useCases.xml
+ </p>
+ </description>
+ <result>
+ <p>
+ An XDoc is created that describes the use cases
+ </p>
+ </result>
+
+ <fixme priority="High">Make the summary optional - already added
+ $includeImplementationNotes parameter to stylesheet. Need to pass
value form sitemap.</fixme>
+
+ <alternatives>
+ <p>Depending on what plugins are available within your running
instance of Forrest you will
+ be able to request different output formats as per the usual Forrest
usage. For example requesting
+ a http://localhost:8888/docs/developer/useCases.html will generate
the HTML document, whilst
+ http://localhost:8888/docs/developer/useCases.pdf will generate the
PDF document (as long
+ as you have the relevant plugins installed).</p>
+ </alternatives>
+
+ <implementation>
+ <description>
+ <p>The source document for use cases is, by default, called
<code>useCases.xml</code> and is
+ located in the root of the projects xdocs directory.</p>
+
+ <p>The URL space <code>docs/**/useCases.xml</code> is reserved for
the projectInfo plugin. A request to
+ /docs/developer/useCases.xml results in the useCases.xml file
being translated into an XDoc as per
+ the usual forrest processing. See the input.xmap file fo this
plugin,</p>
+ </description>
+ </implementation>
+ </step>
+ </steps>
+ </useCase>
+
+ <useCase status="In Progress" owner="open">
+ <title>Generate Use Case Documentation for Users</title>
+
+ <description>
+ <p>Generate a complete list of all use cases for a project. This list is
to include:</p>
+
+ <ul>
+ <li>a description of the use case</li>
+ <li>a summary of each of the steps involved</li>
+ <li>full details of each of the steps</li>
+ <li>a description of the expected outcome of each step</li>
+ <li>details of common alternatives in each step</li>
+ </ul>
+
+ <section>
+ <title>Justification</title>
+ <p>A use case describes a unit of work. It is typically used in the
design
+ stages of a software project, however, they can often be useful in
creating
+ user documentaiton. Especially when they describe user interface
functionality.</p>
+
+ <warning>Unfortunately the use case document does not currently cover
all functions
+ of the plugin since this functionlaity was added after many other
features. Whilst you
+ are exploring this feature, why not add a use case to the plugin and
submit a patch
+ so that those coming after you can enjoy more complete
documentation.</warning>
+ </section>
+ </description>
+
+ <steps>
+ <step>
+ <title>Make HTTP request</title>
+ <description>
+ <p>
+ Request
+ http://localhost:8888/docs/user/useCases.xml
+ </p>
+ </description>
+ <result>
+ <p>
+ An XDoc is created that describes the use cases
+ </p>
+ </result>
+
+ <fixme priority="High">Enable the retrieval of a specific use case
rather than all at once.</fixme>
+ <fixme priority="Low">Make the summary optional - there is a switch in
the XSL for this, just need to pass a property
+ from the XMAP</fixme>
+
+ <alternatives>
+ <p>Depending on what plugins are available within your running
instance of Forrest you will
+ be able to request different output formats as per the usual Forrest
usage. For example requesting
+ a http://localhost:8888/docs/user/useCases.html will generate the
HTML document, whilst
+ http://localhost:8888/docs/user/useCases.pdf will generate the PDF
document (as long
+ as you have the relevant plugins installed).</p>
+ </alternatives>
+
+ <implementation>
+ <description>
+ <p>The source document for use cases is, by default, called
<code>useCases.xml</code> and is
+ located in the root of the projects xdocs directory.</p>
+
+ <p>The URL space <code>docs/**/useCases.xml</code> is reserved for
the projectInfo plugin. A request to
+ /docs/user/useCases.xml results in the useCases.xml file being
translated into an XDoc as per
+ the usual forrest processing, see input.xmap for more details.</p>
+ </description>
+ </implementation>
+ </step>
+ </steps>
+ </useCase>
+
+ <useCase status="In Progress">
+ <title>Generate a Functionality Matrix</title>
+ <description>
+ <p>If a use case document is correcly marked up with <code>fixme</code>
elements it is possible
+ to create a functionality matrix for each use case. This will show how
complete the implementation
+ of a use case is.</p>
+
+ <p>A table can be created which shows each of the steps in a use case,
each step can be given a
+ count for the bumber of fixme items outstanding on each of the steps.
Furthermore, since each
+ <code>fixme</code> is given a priority we can clearly indicate which use
cases are operational an
+ hich are not.</p>
+ </description>
+
+ <steps>
+ <step>
+ <title>Make HTTP request</title>
+ <description>
+ <p>
+ Request
+ http://localhost:8888/docs/developer/featureMatrix/useCases.xml
+ </p>
+ </description>
+ <result>
+ <p>
+ An XDoc is created that lists the steps in each use case and
identifies the status
+ of each use case.
+ </p>
+ </result>
+
+ <fixme priority="Blocker">Not Implemented Yet - although the user and
dev use case documents
+ do show the status of each step in the details table and
implementation notes.</fixme>
+
+ <alternatives>
+ <p>Depending on what plugins are available within your running
instance of Forrest you will
+ be able to request different output formats as per the usual Forrest
usage. For example requesting
+ a http://localhost:8888/docs/developer/featureMatrix/useCases.html
will generate the HTML document, whilst
+ http://localhost:8888/docs/developer/featureMatrix/useCases.pdf will
generate the PDF document (as long
+ as you have the relevant plugins installed).</p>
+ </alternatives>
+
+ <implementation>
+ <description>
+ <p>The source document for use cases is, by default, called
<code>useCases.xml</code> and is
+ located in the root of the projects xdocs directory.</p>
+
+ <p>The URL space <code>docs/**/useCases.xml</code> is reserved for
the projectInfo plugin. A request to
+ /docs/developer/featureMatrix/useCases.xml results in the
useCases.xml file being translated into an XDoc as per
+ the usual forrest processing. See the input.xmap file fo this
plugin,</p>
+ </description>
+ </implementation>
+ </step>
+ </steps>
+ </useCase>
+</useCases>
+
Propchange:
forrest/site/pluginDocs/plugins_0_80/org.apache.forrest.plugin.input.projectInfo/useCases/useCaseFeatures.xml
------------------------------------------------------------------------------
svn:eol-style = native