[complement-svn] SF.net SVN: complement: [1564] trunk/complement/explore/app
Status: Pre-Alpha
Brought to you by:
complement
From: <com...@us...> - 2007-05-18 07:19:25
|
Revision: 1564 http://svn.sourceforge.net/complement/?rev=1564&view=rev Author: complement Date: 2007-05-18 00:19:24 -0700 (Fri, 18 May 2007) Log Message: ----------- initial doc for 'exam' project Added Paths: ----------- trunk/complement/explore/app/exam/ trunk/complement/explore/app/exam/doc/ trunk/complement/explore/app/exam/doc/requirements/ trunk/complement/explore/app/exam/doc/requirements/UseCaseSpec.tex trunk/complement/explore/app/exam/doc/requirements/Vision.tex trunk/complement/explore/app/exam/doc/requirements/debug-focus.fig trunk/complement/explore/app/exam/doc/requirements/p1.fig trunk/complement/explore/app/exam/doc/requirements/p2.fig trunk/complement/explore/app/exam/doc/requirements/p3.fig trunk/complement/explore/app/exam/doc/requirements/p4.fig trunk/complement/explore/app/exam/doc/requirements/p5.fig trunk/complement/explore/app/exam/doc/requirements/rup.sty Property changes on: trunk/complement/explore/app/exam/doc/requirements ___________________________________________________________________ Name: svn:ignore + *.log *.out *.dvi *.toc *.0 *.mps *.mp *.mpx *.bak *.aux *.pdf *.pdf_t Added: trunk/complement/explore/app/exam/doc/requirements/UseCaseSpec.tex =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/UseCaseSpec.tex (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/UseCaseSpec.tex 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,311 @@ +% -*- LaTeX -*- + +\documentclass[a4paper,twoside]{article} + +% \usepackage[koi8-r]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[pdftex]{graphics} +\usepackage{pslatex} +% \usepackage[dvips,final]{epsfig} +% \usepackage{cm-super} +\usepackage[colorlinks,urlcolor=blue]{hyperref} +\usepackage{url} + +\usepackage{rup} +%% Define a new 'leo' style for the package that will use a smaller font. +\makeatletter +\def\url@leostyle{% + \@ifundefined{selectfont}{\def\UrlFont{\sf}}{\def\UrlFont{\small\ttfamily}}} +\makeatother +%% Now actually use the newly defined style. +\urlstyle{leo} + + +\version{0.1} +\title{Use Case Specification: ``Unit Test Framework''} + +\project{Exam} + +\RevHistory{2007--03--08 & 1.0 & Initial document & Petr Ovtchenkov \cr \hline} + +\begin{document} + +\maketitle +% toc +\tableofcontents + +\section{Unit Test Framework} + +% [The following template is provided for a Use-Case +% Specification, which contains the textual properties of the use case. +% This document is used with a requirements management tool, such as Rational +% RequisitePro, for specifying and marking the requirements within the use case +% properties] + +% [The diagrams of the use case can be developed in a visual +% modeling tool, such as Rational Rose. A use-case report (with all +% properties) may be generated with Rational SoDA. For more information, see the tool mentors in the Rational +% Unified Process.] + +\subsection{Brief Description} + +% [The description should briefly convey the role and purpose +% of the use case. A single paragraph +% should suffice for this description.] + +Unit test framework should provide a matched set of components for writing +test programs, grouping tests into test cases and test suites, +monitoring and controlling their runtime execution. Unit test framework +should be convenient for testing programs and set of programs that implement +services and client--server technologies (the set of intercommunicating programs, many +control flows). + +\section{Flow of Events} + +\subsection{Basic Flow} + +% [This use case starts when the actor does something. An actor always initiates use Cases. The use case should describe what the actor +% does and what the system does in response. +% It should be phrased in the form of a dialog between the actor and the +% system. +% +% The use case should describe what happens inside the system, +% but not how or why. If information is +% exchanged, be specific about what is passed back and forth. For example, it is not very illuminating to +% say that the Actor enters customer information. It is better to say the Actor +% enters the customer's name and address. +% A Glossary of Terms is often useful to keep the complexity of the use +% case manageable---you +% may want to define things like customer information there to keep the use case +% from drowning in details. +% +% Simple alternatives may be presented within the text of the +% use case. If it only takes a few +% sentences to describe what happens when there is an alternative, do it directly +% within the \textbf{Flow of Events} section. +% If the alternative flows are more complex, use a separate section to +% describe it. For example, an \textbf{Alternative Flow} +% subsection explains how to describe more complex alternatives. +% +% A picture is sometimes worth a thousand words, though there +% is no substitute for clean, clear prose. +% If it improves clarity, feel free to paste graphical depictions of user +% interfaces, process flows or other figures into the use case. If a flow chart is useful to present a +% complex decision process, by all means use it! +% Similarly for state-dependent behavior, a state-transition diagram often +% clarifies the behavior of a system better than pages upon pages of text. Use the right presentation medium for your +% problem, but be wary of using terminology, notations or figures that your +% audience may not understand. Remember +% that your purpose is to clarify, not obscure.] + +The test suite with single control flow. It notify about start of test suite, +run tests within this test suite (in the order following from tests dependency +graph), report about checks of conditions (verbosity depends upon log level), and print the resulting summary of the test suite (see fig.\ref{SingleFlow}). + +\begin{figure} + \begin{center} +% \input intercessor-time.pstex_t +% \input p1.pdf_t +% \scalebox{0.8}{\includegraphics{p1.pdf}} + \includegraphics{p1.mps} + \end{center} + \caption{The test case with single control flow.\label{SingleFlow}} +\end{figure} + + +\subsection{Alternative Flows} + +\subsubsection{Test suite for interactive program} + +% [More complex alternatives should be described in a separate +% section, which is referred to in the \textbf{Basic Flow} subsection +% of \textbf{Flow of Events} section. Think of the +% \textbf{Alternative Flow}> subsections like alternative behavior---each +% alternative flow +% represents alternative behavior, many times because of exceptions that occur in +% the main flow. They may be as long as +% necessary to describe the events associated with the alternative behavior. When an alternative flow ends, the events of +% the main flow of events are resumed unless otherwise stated.] + +The test suite with single control flow. It notify about start of test suite, +run tests within this test suite (in the order, described by tests dependency +graph), print conditions report (verbosity depends upon log level), and print the resulting summary of the test suite (see fig.\ref{InteractiveSingleFlow}). +During execution of the test suite, it require interaction with: it print +messages onto terminal and expect input from terminal. + +\begin{figure} + \begin{center} + \includegraphics{p5.mps} + \end{center} + \caption{The test case with single control flow; test suite is + interactive, it print some message to terminal and expect input + from terminal.\label{InteractiveSingleFlow}} +\end{figure} + +This use-case reflect test suite for interactive part of program. + +\subsubsection{Multi-threaded test suite} + +% [There may be, and most likely will be, a number of +% alternative flows in a use case. Keep +% each alternative separate to improve clarity. +% Using alternative flows improves the readability of the use case, as +% well as preventing use cases from being decomposed into hierarchies of use +% cases. Keep in mind that use cases are +% just textual descriptions, and their main purpose is to document the behavior +% of a system in a clear, concise, and understandable way.] + +The test suite with more then one control flow. It register start of test suite, +run tests within this test suite (in the order, described by tests dependency +graph), print conditions report (verbosity depends upon log level), and print the resulting summary of the test suite (see fig.\ref{ThreadedFlow}). +Test control flow is splitted into few threads. + +\begin{figure} + \begin{center} + \includegraphics{p2.mps} + \end{center} + \caption{The test case with few control flows, single process.\label{ThreadedFlow}} +\end{figure} + +This use-case reflect test suite for multi-threaded program, such as server, +that provide some kind of service. + +\subsubsection{Test suite with fork} + +The test suite with more then one control flow. It register start of test suite, +run tests within this test suite (in the order, described by tests dependency +graph), print conditions report (verbosity depends upon log level), and print the resulting summary of the test suite (see fig.\ref{ForkedFlow}). +Some tests of the test suite forked into several processes. + +\begin{figure} + \begin{center} + \includegraphics{p4.mps} + \end{center} + \caption{The test case with few control flows, process forked.\label{ForkedFlow}} +\end{figure} + +This use-case reflect test suite for daemons and client-server interaction. + +\subsubsection{Test suite with process intercommunication} + +The test suite with more then one control flow. It register start of test suite, +run tests within this test suite (in the order, described by tests dependency +graph), print conditions report (verbosity depends upon log level), and print the resulting summary of the test suite (see fig.\ref{IntercomProcesses}). +Some tests of the test suite forked into several processes. + +\begin{figure} + \begin{center} + \includegraphics{p3.mps} + \end{center} + \caption{The test case with few control flows, intercommunicated processes.\label{IntercomProcesses}} +\end{figure} + +This use-case reflect test suite for daemons and client-server interaction. + +\section{Special Requirements} + +% [A special requirement is typically a non-functional +% requirement that is specific to a use case, but is not easily or naturally +% specified in the text of the use case's event flow. Examples of special +% requirements include legal and regulatory requirements, application standards, +% and quality attributes of the system to be built including usability, +% reliability, performance or supportability requirements. Additionally, other +% requirements---such +% as operating systems and environments, compatibility requirements, and design +% constraints---should be captured in this section.] + +\subsection{Suitable for debugging} + +\begin{figure} + \begin{center} + \includegraphics{debug-focus.mps} + \end{center} + \caption{Development application: functionality implementation cycle.\label{DevCycle}} +\end{figure} + +Unit tests not only instrument of QA (see fig.~\ref{DevCycle}). +Unit tests written +in parallel with functionality implementation,\footnote{as assume XP technique} +provide a good practice ground +for debugging. Implementation of special test cases for debugging +after detection problem in unit test isn't a good idea by financial (time and other resources) reasons. +Even more: in non-trivial cases not evident, what was wrong: +either incorrect functionality imlementation, or test, or even +specification. Developer should has a chance to debug program +keeping in mind as main functionality, as unit test logic. + +Due to this unit test framework intended for testing services, and services +often has own logic of signal processing, the unit test framework +should not (at least by default) intervenes into signal catching. +This also concern fatal errors with dumping core: dumping core ``as is'' +is more preferable way (useful for post-mortal debugging) then nice report +``you test died'' with unuseful stack. + +\subsection{Output from few control flows} + +Unit test suite should provide reasonable output as for tests +with single control flow, as for multi-threaded and multi-process tests. + +Unit test suite should provide reasonable output for test +with console output and input, i.e. split prints from interaction with user +from prints about failed conditions. + +\subsection{Integrable} + +To be light-weight, easy integrable into other tools and scripts. + +\subsection{Tests dependency\label{TestDependency}} + +Tests run order should be determined from tests dependency graph. + +\subsection{Tests grouping} + +The ability of grouping tests is desirable: +\begin{itemize} + \item single function tests + \item class (group of tests) with initialization and finalization. +\end{itemize} + +\subsection{Report format} + +Unit test framework should provide few levels of output verbosity, and +few formats of reports (plain text, xml/html). + +\subsection{Test timeout} + +Due to deadlock (or other conditions, leads to stalled test) may occur, +it would be nice if monitoring program abort such test after specified timeout, +and continue other tests (taken into account tests dependencies, section~\ref{TestDependency}). + +% \section{Pre-Conditions} + +% [A pre-condition of a use case is the state of the system +% that must be present prior to a use case being performed.] + +% \subsection{Pre-condition One} + +% \section{Post-Conditions} + +% [A post-condition of a use case is a list of possible states +% the system can be in immediately after a use case has finished.] + +% \subsection{Post-condition One} + +\section{Extension Points} + +% [Extension points of the use case.] + +\subsection{Remote testing} + +% [Definition of the location of the extension point in the +% flow of events.] + +Test suite monitoring may be performed from remote host. This also useful +if test suite allow monitoring a few (intercommunicating) processes, that +run on different hosts. + +\subsection{Performance Mesure} + +Unit tests may be used for performance measure of key technology solutions. + +\end{document} Added: trunk/complement/explore/app/exam/doc/requirements/Vision.tex =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/Vision.tex (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/Vision.tex 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,791 @@ +% -*- LaTeX -*- +% $Id: Vision.tex,v 1.2 2002/11/04 13:38:30 ptr Exp $ + +\documentclass[a4paper,twoside]{article} + +\usepackage{rup} + +\title{Vision} +\project{Virtual Manual} +% \RevHistory{dd/mmmm/yyyy & x.x & & \cr \hline} +\begin{document} + +\maketitle + +\section{Introduction} + +[The purpose of this document is to collect, +analyze, and define high-level needs and features of the +``System Name''. It focuses on the capabilities needed by the +stakeholders, and the target users, and \textbf{why} these needs exist. +The details of how the +``System Name'' fulfils these +needs are detailed in the use-case and supplementary specifications.] + +[The introduction of the \textbf{Vision} document should provide + an overview of the +entire document. It should include the purpose, scope, definitions, acronyms, +abbreviations, references, and overview of this \textbf{Vision} document.] + +\subsection{Purpose} + +[Specify the purpose of this \textbf{Vision} document.] + +\subsection{Scope} + +[A brief description of the scope of this \textbf{Vision} +document; what Project(s) it is associated with, and anything else that is +affected or influenced by this document.] + +\subsection{Definitions, Acronyms and Abbreviations} + +[This subsection should provide the +definitions of all terms, acronyms, and abbreviations required to properly +interpret the \textbf{Vision} document. This information may +be provided by +reference to the project Glossary.] + +\subsection{References} + +[This subsection should provide a complete +list of all documents referenced elsewhere in the \textbf{Vision} +document. Each document should be identified by title, +report number (if applicable), date, and publishing organization. +Specify the sources from which the +references can be obtained. This information may be provided by reference to an +appendix or to another document.] + +\subsection{Overview} + +[This subsection should describe what the +rest of the \textbf{Vision} document contains and explain how the document is +organized.] + +\section{Positioning} + +\subsection{Business Opportunity} + +[Briefly describe the business opportunity being met by this +project.] + +\subsection{Problem Statement} + +[Provide a statement summarizing the problem being solved by +this project. The following format may be used:] + +\begin{center} +\begin{minipage}[t]{2in} +\textit{The problem of} +\end{minipage} +\begin{minipage}[t]{4in} +[describe the problem] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{affects} +\end{minipage} +\begin{minipage}[t]{4in} +[the stakeholders affected by the problem] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{the impact of which is} +\end{minipage} +\begin{minipage}[t]{4in} +[what is the impact of the problem] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{a successful solution would be} +\end{minipage} +\begin{minipage}[t]{4in} +[list some key benefits of a successful solution] +\end{minipage} + +\end{center} + +\subsection{Product Position Statement} + +[Provide an overall statement summarizing at the highest +level, the unique position the product intends to fill in the marketplace. The +following format may be used:] +\begin{center} +\begin{minipage}[t]{2in} +\textit{For} +\end{minipage} +\begin{minipage}[t]{4in} +[target customer] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{Who} +\end{minipage} +\begin{minipage}[t]{4in} +[statement of the need or opportunity] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{The (product name) is a} +\end{minipage} +\begin{minipage}[t]{4in} +[product category] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{That} +\end{minipage} +\begin{minipage}[t]{4in} +[statement of key benefit; that is---compelling reason to buy] +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{Unlike} +\end{minipage} +\begin{minipage}[t]{4in} +[primary competitive alternative] (text manuals, electronic text-only +manuals, electonic 2D illustrated manuals with hyper references) +\end{minipage} +\\[1em] +\begin{minipage}[t]{2in} +\textit{Our product} +\end{minipage} +\begin{minipage}[t]{4in} +[statement of primary differentiation] +\end{minipage} +\end{center} + +[A product position statement communicates the intent of the +application and the importance of the project to all concerned personnel.] + +\section{Stakeholder and User Descriptions} + +[To effectively +provide products and services that meet your stakeholders and users' real +needs, it is necessary to identify and involve all of the stakeholders as part +of the Requirements Modeling process. +You must also identify the users of the system and ensure that the +stakeholder community adequately represents them. This section provides a profile of the stakeholders and users +involved in the project and the key problems that they perceive to be addressed +by the proposed solution. It does not +describe their specific requests or requirements as these are captured in a +separate stakeholder requests artifact. +Instead it provides the background and justification for why the +requirements are needed.] + +\subsection{Market Demographics} + +[Summarize the key +market demographics that motivate your product decisions. Describe and position +target market segments. Estimate the market's size and growth by using the +number of potential users, or the amount of money your customers spend trying +to meet needs that your product or enhancement would fulfill. Review major industry +trends and technologies. Answer these strategic questions: + +\begin{itemize} + \item What is your organization's reputation +in these markets? + + \item What would you like it to be? + + \item How does this product or service support your goals? +\end{itemize} + +] + +\subsection{Stakeholder Summary} + +[Present a summary list of all the identified stakeholders.] + +\begin{center} +\begin{minipage}[t]{1.2in} +\centering \textbf{Name} +\end{minipage} +\begin{minipage}[t]{2in} +\centering \textbf{Represents} +\end{minipage} +\begin{minipage}[t]{2in} +\centering \textbf{Role} +\end{minipage}\nopagebreak +\\[1em] +\begin{minipage}[t]{1.2in} +Name the stakeholder type. +\end{minipage} +\begin{minipage}[t]{2in} +Briefly describe what they represent with respect to the development. +\end{minipage} +\hskip 1ex +\begin{minipage}[t]{2in} + [Briefly describe the role they are playing in the development. + For example, Ensure this] +\end{minipage} +\end{center} + +\subsection{User Summary} + +[Present a summary list of all the identified users.] + +\begin{center} +\begin{minipage}[t]{1.2in} +\centering\textbf{Name} +\end{minipage} +\begin{minipage}[t]{2in} +\centering\textbf{Description} +\end{minipage} +\hskip 1ex +\begin{minipage}[t]{2in} +\centering\textbf{Stakeholder} +\end{minipage} +\\[1em] +\begin{minipage}[t]{1.2in} + Name the user type +\end{minipage} +\begin{minipage}[t]{2in} +[Briefly describe what they represent with respect to the system.] +\end{minipage} +\hskip 1ex +\begin{minipage}[t]{2in} +[List how the user is represented by the stakeholders. + For example, Represented by Stakeholder 1.1] +\end{minipage} +\end{center} + + +\subsection{User Environment} + +[Detail the working +environment of the target user. Here are some suggestions: +\begin{itemize} + \item Number of people +involved in completing the task? Is this changing? + \item How long is a task + cycle? Amount of time spent in each activity? Is this changing? + \item Any unique environmental constraints: mobile, outdoors, + in-flight, etc.? + \item Which systems platforms are in use today? Future platforms? + \item What other applications are in use? Does your application + need to integrate with them? + \item This is where extracts from the Business Model could + be included to outline the task and workers involved etc.] +\end{itemize} + + +\subsection{Stakeholder Profiles} + +[Describe each +stakeholder in the system here by filling in the following table for each +stakeholder. Remember stakeholder types +can be as divergent as users, strategy departments and technical +developers. A thorough profile should +cover the following topics for each type of stakeholder:] + +\subsubsection{``Stakeholder Name''} + +\begin{center} +\begin{minipage}[t]{2in} +Representative +\end{minipage} +\begin{minipage}[t]{4in} +[Who is the stakeholder representative to the project? (optional if documented elsewhere.) + What we want here is names.] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Description +\end{minipage} +\begin{minipage}[t]{4in} +[Brief description of the stakeholder type.] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Type +\end{minipage} +\begin{minipage}[t]{4in} +[Qualify the stakeholder's expertise, technical background, and degree of + sophistication---that is, guru, business, expert, casual user, etc.] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Responsibilities +\end{minipage} +\begin{minipage}[t]{4in} +[List the stakeholder's key responsibilities with regards to the system being + developed that is, their interest as a stakeholder.] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Success Criteria +\end{minipage} +\begin{minipage}[t]{4in} +[How does the stakeholder define success? How is the stakeholder rewarded?] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Involvement +\end{minipage} +\begin{minipage}[t]{4in} +[How the stakeholder is involved in the project? Relate where possible + to RUP workers that is, Requirements Reviewer etc.] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Deliverables +\end{minipage} +\begin{minipage}[t]{4in} +[Are there any additional deliverables required by the stakeholder? + These could be project deliverables or outputs from the system under development.] +\end{minipage} +\\[1ex] %-------------------------------- +\begin{minipage}[t]{2in} +Comments / Issues +\end{minipage} +\begin{minipage}[t]{4in} +[Problems that interfere with success and any other relevant information go here.] +\end{minipage} +\end{center} + +\subsection{User Profiles} + +[Describe each +unique user of the system here by filling in the following table for each user +type. Remember user types can be as +divergent as gurus and novices. For example, a guru might need a sophisticated, +flexible tool with cross-platform support, while a novice might need a tool +that is easy to use and user-friendly. A thorough profile should cover the +following topics for each type of user:]</p> + +\subsubsection{``User Name''} +\begin{center} +\begin{minipage}[t]{2in} +Representative +\end{minipage} +\begin{minipage}[t]{4in} +[Who is the user representative to the project? (optional if documented + elsewhere.) This often refers to the Stakeholder that represents the set of users, + for example, Stakeholder: Stakeholder1.] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Description +\end{minipage} +\begin{minipage}[t]{4in} +[A brief description of the user type.] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Type +\end{minipage} +\begin{minipage}[t]{4in} +[Qualify the user's expertise, technical background, and degree +of sophistication that is, guru, casual user, etc.] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Responsibilities +\end{minipage} +\begin{minipage}[t]{4in} +[List the user's key responsibilities with regards to the system + being developed that is, captures details, produces + reports, coordinates work, etc.] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Success Criteria +\end{minipage} +\begin{minipage}[t]{4in} +[How does the user define success? How is the user rewarded?] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Involvement +\end{minipage} +\begin{minipage}[t]{4in} +[How the user is involved in the project? + Relate where possible to RUP workers that is, + Requirements Reviewer, etc.] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Deliverables +\end{minipage} +\begin{minipage}[t]{4in} +[Are there any deliverables the user produces and, if so, for whom?] +\end{minipage} +\\[1em] % ---------------------------------------- +\begin{minipage}[t]{2in} +Comments / Issues +\end{minipage} +\begin{minipage}[t]{4in} +[Problems that interfere with success and any other relevant + information go here. These would include trends that make the + user's job easier or harder.] +\end{minipage} +\end{center} + +\subsection{Key Stakeholder / User Needs} + +[List the key +problems with existing solutions as perceived by the stakeholder. Clarify the +following issues for each problem: + +\begin{itemize} + \item What are the reasons for this problem? + \item How is it solved now? + \item What solutions does the stakeholder want?] +\end{itemize} + +[It is important to +understand the \textbf{relative} importance the stakeholder or user places on +solving each problem. Ranking and cumulative voting techniques indicate +problems that \textbf{must} be solved versus issues they would + like addressed. + +Fill in the +following table --- if using ReqPro to capture the Needs, this could be an +extract or report from that tool.] + +\begin{tabular}{c|c|c|c|c} + Need & Priority & Concerns & Current Solution & Proposed Solutions \\ + Broadcast messages \\ +\end{tabular} + + +\subsection{Alternatives and Competition} + +[Identify +alternatives the stakeholder perceives as available. These can include buying a +competitor's product, building a homegrown solution or simply maintaining the +status quo. List any known competitive choices that exist, or may become +available. Include the major strengths and weaknesses of each competitor as +perceived by the stakeholder.] + +\subsubsection{``aCompetitor''} + +\subsubsection{``anotherCompetitor''} + +\section{Product Overview} + +[This section provides a high level view of the product +capabilities, interfaces to other applications, and systems configurations. +This section usually consists of three subsections, as follows: +\begin{itemize} + \item Product perspective + \item Product functions + \item Assumptions and dependencies] +\end{itemize} + +\subsection{Product Perspective} + +[This subsection of the <b>Vision</b> document should put the +product in perspective to other related products and the user's environment. If +the product is independent and totally self-contained, state it here. If the +product is a component of a larger system, then this subsection should relate +how these systems interact and should identify the relevant interfaces between +the systems. One easy way to display the major components of the larger system, +interconnections, and external interfaces is via a block diagram.] + +\subsection{Summary of Capabilities} + +[Summarize the major benefits and features the product will +provide. For example, a <b>Vision</b> document for a customer support system +may use this part to address problem documentation, routing, and status +reporting without mentioning the amount of detail each of these functions requires. + +Organize the functions so the list is understandable to the +customer or to anyone else reading the document for the first time. A simple +table listing the key benefits and their supporting features might suffice. For +example:] + +\begin{center} +Customer Support System \\[2ex] +\begin{tabular}{p{2in}|p{3in}} + Customer Benefit & Supporting Features \\ +\hline +New support staff can quickly get up to speed. & +Knowledge base assists support personnel in quickly +identifying known fixes and workarounds \\ +\hline +Customer satisfaction is improved because nothing falls through the cracks. & +Problems are uniquely itemized, classified and tracked throughout +the resolution process. Automatic notification occurs for any aging issues.\\ +\hline +Management can identify problem areas and gauge staff workload.& +Trend and distribution reports allow high level review of problem status.\\ +\hline +Distributed support teams can work together to solve problems. & +Replication server allows current database information to be shared +across the enterprise\\ +\hline +Customers can help themselves, lowering support costs and improving +response time. & +Knowledge base can be made available over the Internet. Includes +hypertext search capabilities and graphical query engine +\end{tabular} +\end{center} + + +\subsection{Assumptions and Dependencies} + +[List each of the factors that affects the features stated in +the <b>Vision</b> document. List assumptions that, if changed, will alter the +\textbf{Vision} +document. For example, an assumption may state that a specific operating +system will be available for the hardware designated for the software product. +If the operating system is not available, the \textbf{Vision} document + will need to change.] + +\subsection{Cost and Pricing} + +[For products sold to external customers and for many in-house + applications, cost and pricing issues can directly impact the +applications definition and implementation. In this section, record any cost +and pricing constraints that are relevant. For example, distribution costs, (\# +of diskettes, \# CD-ROMs, CD mastering) or other cost of goods sold constraints +(manuals, packaging) may be material to the projects success, or irrelevant, +depending on the nature of the application.] + +\subsection{Licensing and Installation} + +[Licensing and installation issues can also directly impact +the development effort. For example, the need to support serializing, password +security or network licensing will create additional requirements of the system +that must be considered in the development effort. + +Installation requirements may also affect coding, or create +the need for separate installation software.] + +\section{Product Features} + +[List and briefly describe the product features. Features are +the high-level capabilities of the system that are necessary to deliver +benefits to the users. Each feature is an externally desired service that +typically requires a series of inputs to achieve the desired result. For +example, a feature of a problem tracking system might be the ability to provide +trending reports. As the use-case model takes shape, update the description to +refer to the use cases. + +Because the \textbf{Vision} document is reviewed by a wide +variety of involved personnel, the level of detail should be general enough for +everyone to understand. However, enough detail should be available to provide +the team with the information they need to create a use-case model. + +To effectively manage application complexity, we recommend +for any new system, or an increment to an existing system, capabilities are +abstracted to a high enough level so 25--99 features result. These features +provide the fundamental basis for product definition, scope management, and +project management. Each feature will be expanded in greater detail in the use-case +model. + +Throughout this section, each feature should be externally +perceivable by users, operators or other external systems. These features +should include a description of functionality and any relevant usability issues +that must be addressed. The following guidelines apply: + + Avoid design. Keep feature +descriptions at a general level. Focus on capabilities needed and why, (not +how)\xA0 they should be implemented + + If you are using the Requisite +toolkit, all should be selected as requirements of type for easy reference and +tracking.] + +\subsection{``aFeature''} + +\subsection{``anotherFeature''} + +\section{Constraints} + +[Note any design constraints, external constraints or other +dependencies.] + +\section{Quality Ranges} + +[Define the quality ranges for performance, robustness, fault +tolerance, usability, and similar characteristics that are not captured in the +Feature Set.] + +\section{Precedence and Priority} + +[Define the priority of the different system features.] + +\section{Other Product Requirements} + +[At a high-level, list applicable standards, hardware or +platform requirements, performance requirements, and environmental +requirements.] + +\subsection{Applicable Standards} + +[List all standards with which the product must comply. These +can include legal and regulatory (FDA, UCC) communications standards (TCP/IP, +ISDN), platform compliance standards (Windows, Unix, etc.), and quality and +safety standards (UL, ISO, CMM).] + +\subsection{System Requirements} + +[Define any system requirements necessary to support the +application. These can include the supported host operating systems and network +platforms, configurations, memory, peripherals, and companion software.] + +\subsection{Performance Requirements} + +[Use this section to detail performance requirements. +Performance issues can include such items as user load factors, bandwidth or +communication capacity, throughput, accuracy, and reliability or response times +under a variety of loading conditions.] + +\subsection{Environmental Requirements} + +[Detail environmental requirements as needed. For hardware- +based systems, environmental issues can include temperature, shock, humidity, +radiation, etc. For software applications, environmental factors can include +usage conditions, user environment, resource availability, maintenance issues, +and error handling, and recovery.] + +\section{Documentation Requirements} + +[This section describes the documentation that must be +developed to support successful application deployment.] + +\subsection{User Manual} + +[Describe the purpose and contents of the User Manual. +Discuss desired length, level of detail, need for index, glossary of terms, +tutorial vs. reference manual strategy, etc. Formatting and printing constraints +should also be identified.] + +\subsection{On-line Help} + +[Many applications provide an on-line help system to assist +the user. The nature of these systems is unique to application development as +they combine aspects of programming (hyperlinks, etc) with aspects of technical +writing (organization, presentation). Many have found the development of +on-line help system is a project within a project that benefits from up-front +scope management and planning activity.] + +\subsection{Installation Guides, Configuration, Read Me File} + +[A document that includes installation instructions and +configuration guidelines is important to a full solution offering. Also, a Read +Me file is typically included as a standard component. The Read Me can include +a What's New With This Release section, and a discussion of +compatibility issues with earlier releases. Most users also appreciate +documentation defining any known bugs and workarounds in the Read Me file.] + +\subsection{Labeling and Packaging} + +[Today's state of the art applications provide a consistent +look and feel that begins with product packaging and manifests through +installation menus, splash screens, help systems, GUI dialogs, etc. This +section defines the needs and types of labeling to be incorporated into the +code. Examples include copyright and patent notices, corporate logos, +standardized icons and other graphic elements, etc.] + +\section{Appendix 1 - Feature Attributes} + +[Features should be given attributes that can be used to +evaluate, track, prioritize, and manage the product items proposed for +implementation. All requirement types and attributes should be outlined in the +Requirements Management Plan, however you may wish to list and briefly +describes the attributes for features that have been chosen. Following +subsections represent a set of suggested feature attributes.] + +\subsection{Status} + +[Set after negotiation and review by the project management +team. Tracks progress during definition of the project baseline.] + +\begin{tabular}{l|p{4in}} +Proposed & +[Used to describe features that are under discussion but + have not yet been reviewed and accepted by the ``official channel'', + such as a working group consisting of representatives from the project team, + product management and user or customer community.]\\ +Approved & +[Capabilities that are deemed useful and feasible and have + been approved for implementation by the official channel.] \\ +Incorporated & +[Features incorporated into the product baseline at a specific point + in time.] +\end{tabular} + +\subsection{Benefit} + +[Set by Marketing, the product manager or the business +analyst. All requirements are not created equal. Ranking requirements by their +relative benefit to the end user opens a dialogue with customers, analysts and +members of the development team. Used in managing scope and determining +development priority.] + +\begin{tabular}{l|p{3in}} +Critical & +[Essential features. Failure to implement means the system + will not meet customer needs. All critical features must be implemented in + the release or the schedule will slip.]\\ +Important & +[Features important to the effectiveness and efficiency of + the system for most applications. The functionality cannot be easily provided + in some other way. Lack of inclusion of an important feature may affect + customer or user satisfaction, or even revenue, but release will not be + delayed due to lack of any important feature.]\\ +Useful & +[Features that are useful in less typical applications, will + be used less frequently, or for which reasonably efficient workarounds can be + achieved. No significant revenue or customer satisfaction impact can be + expected if such an item is not included in a release.]\\ +\end{tabular} + +\subsection{Effort} + +[Set by the development team. Because some features require +more time and resources than others, estimating the number of team or +person-weeks, lines of code required or function points, for example, is the +best way to gauge complexity and set expectations of what can and cannot be +accomplished in a given time frame. Used in managing scope and determining +development priority.] + +\subsection{Risk} + +[Set by development team based on the probability the project +will experience undesirable events, such as cost overruns, schedule delays or +even cancellation. Most project managers find categorizing risks as high, +medium, and low sufficient, although finer gradations are possible. Risk can +often be assessed indirectly by measuring the uncertainty (range) of the +projects teams schedule estimate.] + +\subsection{Stability} + +[Set by analyst and development team based on the probability +the feature will change or the team's understanding of the feature will change. +Used to help establish development priorities and determine those items for +which additional elicitation is the appropriate next action.] + +\subsection{Target Release} + +[Records the intended product version in which the feature +will first appear. This field can be used to allocate features from a +\textbf{Vision} document into a particular baseline release. + When combined with the status +field, your team can propose, record and discuss various features of the +release without committing them to development. Only features whose Status is +set to Incorporated and whose Target Release is defined will be implemented. +When scope management occurs, the Target Release Version Number can be +increased so the item will remain in the \textbf{Vision} document but will be +scheduled for a later release.] + +\subsection{Assigned To} + +[In many projects, features will be assigned to ``feature +teams'' responsible for further elicitation, writing the software +requirements and implementation. This simple pull down list will help everyone +on the project team better understand responsibilities.] + +\subsection{Reason} + +[This text field is used to track the source of the requested +feature. Requirements exist for specific reasons. This field records an +explanation or a reference to an explanation. For example, the reference might +be to a page and line number of a product requirement specification, or to a +minute marker on a video of an important customer interview.] + + +\end{document} Added: trunk/complement/explore/app/exam/doc/requirements/debug-focus.fig =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/debug-focus.fig (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/debug-focus.fig 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,58 @@ +#FIG 3.2 Produced by xfig version 3.2.5-alpha5 +Portrait +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +1 1 0 1 0 31 52 -1 20 0.000 1 0.0000 2775 3000 675 375 2775 3000 3450 3000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 2625 825 2025 825 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 825 2025 1275 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 3075 825 2400 1200 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 2025 1500 1425 2100 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 2325 1500 2775 2100 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 2775 2400 2775 2925 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 3 + 0 0 1.00 60.00 120.00 + 1200 2100 675 1575 1050 900 + 0.000 1.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 2 + 0 0 1.00 60.00 120.00 + 2025 600 2625 600 + 0.000 0.000 +3 0 0 1 0 7 50 -1 -1 0.000 0 1 0 7 + 0 0 1.00 60.00 120.00 + 2925 3225 3150 3825 4125 3525 4275 1875 4200 300 3450 225 + 3300 600 + 0.000 1.000 1.000 1.000 1.000 1.000 0.000 +3 0 0 1 0 7 52 -1 -1 0.000 0 1 0 7 + 0 0 1.00 60.00 120.00 + 2550 3225 2550 3750 675 3600 -300 2550 -450 225 900 225 + 975 525 + 0.000 1.000 1.000 1.000 1.000 1.000 0.000 +4 1 0 50 -1 4 10 0.0000 0 150 900 2175 1425 Running Test\001 +4 1 0 50 -1 4 10 0.0000 0 150 825 3225 750 Writing Test\001 +4 1 0 50 -1 4 10 0.0000 0 120 885 1425 2325 Test Success\001 +4 1 0 50 -1 4 10 0.0000 0 120 555 2775 2325 Test Fail\001 +4 1 0 50 -1 4 10 0.0000 0 150 750 2775 3075 Debugging\001 +4 1 0 50 -1 4 10 0.0000 0 150 1800 975 750 Implementing functionality\001 Added: trunk/complement/explore/app/exam/doc/requirements/p1.fig =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/p1.fig (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/p1.fig 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,29 @@ +#FIG 3.2 Produced by xfig version 3.2.5-alpha5 +Portrait +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 1200 975 1500 975 1500 2925 1200 2925 1200 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 975 1875 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 1575 1875 1575 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 2925 1875 2925 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 450 1350 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 2925 1350 3375 +4 0 0 50 -1 4 10 0.0000 0 150 1170 1950 1650 Condition report\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 1950 3000 Success/Fail\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 1950 1050 Start\001 Added: trunk/complement/explore/app/exam/doc/requirements/p2.fig =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/p2.fig (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/p2.fig 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,42 @@ +#FIG 3.2 Produced by xfig version 3.2.5-alpha5 +Portrait +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 1200 975 1500 975 1500 2925 1200 2925 1200 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 975 1875 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 1575 1875 1575 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 2925 1875 2925 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 450 1350 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 2925 1350 3375 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 + 0 0 1.00 60.00 120.00 + 1500 1125 3600 1125 3600 1350 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3450 1350 3750 1350 3750 2250 3450 2250 3450 1350 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 1575 4125 1575 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 + 0 0 1.00 60.00 120.00 + 3600 2250 3600 2400 1500 2400 +4 0 0 50 -1 4 10 0.0000 0 150 1170 1950 1650 Condition report\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 1950 3000 Success/Fail\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 1950 1050 Start\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 2400 1350 start thread\001 +4 0 0 50 -1 4 10 0.0000 0 150 1170 4200 1650 Condition report\001 Added: trunk/complement/explore/app/exam/doc/requirements/p3.fig =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/p3.fig (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/p3.fig 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,56 @@ +#FIG 3.2 Produced by xfig version 3.2.5-alpha5 +Portrait +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 1200 975 1500 975 1500 2925 1200 2925 1200 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 975 1875 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 2925 1875 2925 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 450 1350 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 2925 1350 3375 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 1350 4125 1350 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3450 1350 3750 1350 3750 2625 3450 2625 3450 1350 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 2625 4125 2625 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3600 450 3600 1350 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3600 2625 3600 3375 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 2175 1875 2175 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 2175 4125 2175 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 1 2 + 0 0 1.00 60.00 120.00 + 0 0 1.00 60.00 120.00 + 1500 1800 3450 1800 +4 0 0 50 -1 4 10 0.0000 0 120 825 1950 3000 Success/Fail\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 4200 1425 Start\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 1950 1050 Start\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 4200 2700 Success/Fail\001 +4 0 0 50 -1 4 10 0.0000 0 150 1170 1950 2250 Condition report\001 +4 0 0 50 -1 4 10 0.0000 0 150 1170 4200 2250 Condition report\001 +4 1 0 50 -1 4 10 0.0000 0 120 1350 2475 1650 Intercommunication\001 +4 1 0 50 -1 4 10 0.0000 0 120 690 1350 300 Process 1\001 +4 1 0 50 -1 4 10 0.0000 0 120 690 3600 300 Process 2\001 Added: trunk/complement/explore/app/exam/doc/requirements/p4.fig =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/p4.fig (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/p4.fig 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,52 @@ +#FIG 3.2 Produced by xfig version 3.2.5-alpha5 +Portrait +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 1200 975 1500 975 1500 2925 1200 2925 1200 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 975 1875 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 1575 1875 1575 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 2925 1875 2925 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 450 1350 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 2925 1350 3375 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 3 + 0 0 1.00 60.00 120.00 + 1500 1125 3600 1125 3600 1350 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 3450 1350 3750 1350 3750 2250 3450 2250 3450 1350 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 1575 4125 1575 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 1350 4125 1350 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3750 2250 4125 2250 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 3600 2250 3600 3375 +4 0 0 50 -1 4 10 0.0000 0 150 1170 1950 1650 Condition report\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 1950 3000 Success/Fail\001 +4 0 0 50 -1 4 10 0.0000 0 120 285 2400 1350 fork\001 +4 0 0 50 -1 4 10 0.0000 0 150 1170 4200 1650 Condition report\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 4200 1425 Start\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 1950 1050 Start\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 4200 2325 Success/Fail\001 +4 1 0 50 -1 4 10 0.0000 0 120 690 1350 375 Process 1\001 +4 1 0 50 -1 4 10 0.0000 0 120 690 3600 975 Process 2\001 Added: trunk/complement/explore/app/exam/doc/requirements/p5.fig =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/p5.fig (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/p5.fig 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,37 @@ +#FIG 3.2 Produced by xfig version 3.2.5-alpha5 +Portrait +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 0 5 + 1200 975 1500 975 1500 2925 1200 2925 1200 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 975 1875 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 1575 1875 1575 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1500 2925 1875 2925 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 450 1350 975 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 1350 2925 1350 3375 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 0 1 2 + 0 0 1.00 60.00 120.00 + 825 1650 1200 1650 +2 1 0 1 0 7 50 -1 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 825 1950 1200 1950 +4 0 0 50 -1 4 10 0.0000 0 150 1170 1950 1650 Condition report\001 +4 0 0 50 -1 4 10 0.0000 0 120 825 1950 3000 Success/Fail\001 +4 0 0 50 -1 4 10 0.0000 0 120 360 1950 1050 Start\001 +4 2 0 50 -1 4 10 0.0000 0 150 480 750 1725 Output\001 +4 2 0 50 -1 4 10 0.0000 0 150 360 750 2025 Input\001 Added: trunk/complement/explore/app/exam/doc/requirements/rup.sty =================================================================== --- trunk/complement/explore/app/exam/doc/requirements/rup.sty (rev 0) +++ trunk/complement/explore/app/exam/doc/requirements/rup.sty 2007-05-18 07:19:24 UTC (rev 1564) @@ -0,0 +1,149 @@ +% -*- LaTeX -*- +% $Id: rup.sty,v 1.1 2002/11/04 10:53:08 ptr Exp $ + +\makeatletter + +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{rup}[2002/10/24 v0.1 RUP document class] + +\newcommand\version[1]{\gdef\@version{#1}} +\gdef\@version{1{.}0} +\newcommand\project[1]{\gdef\@project{#1}} +\gdef\@project{Project Name} +\newcommand\RevHistory[1]{\gdef\@revhistory{#1}} +\gdef\@revhistory{dd/mmmm/yyyy & x.x & & \cr \hline} + +% \setlength\parsep{5\p@ \@plus \p@} +% \setlength\parsep{5em} +% \parindent 0em +\setlength\parskip{5pt plus 1pt minus 1pt} +\setlength\parindent{0pt} +% \setlength\parsep{1em} + +\if@titlepage + \renewcommand\maketitle{\begin{titlepage}% + \let\footnotesize\small + \let\footnoterule\relax + \let \footnote \thanks + \null\vfil + \vskip 60\p@ + \begin{flushright}% + {\LARGE \@title \par}% + \vskip 3em% + {\large + \lineskip .75em% + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par% + }% + \vskip 1.5em% + {\large \@date \par}% % Set date in \large size. + \end{flushright}\par + \@thanks + \vfil\null + \end{titlepage}% + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax + } +\else + \renewcommand\maketitle{\par + \begingroup + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% + \long\def\@makefntext##1{\parindent 1em\noindent + \hb@xt@1.8em{% + \hss\@textsuperscript{\normalfont\@thefnmark}}##1}% + \if@twocolumn + \ifnum \col@number=\@ne + \@maketitle + \else + \twocolumn[\@maketitle]% + \fi + \else + \newpage + \global\@topnum\z@ % Prevents figures from going at top of page. + \@maketitle + \fi + \thispagestyle{plain}\@thanks + \endgroup + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax + } + \def\@maketitle{% + \newpage + \null + \vskip 2em% + \begin{flushright}% + \let \footnote \thanks + {\LARGE \@project \par} + \vskip 1.5em% + {\LARGE \@title \par}% + \vskip 1.5em% + {\Large Version \@version \par} + \vskip 4em% + {\large Revision History + \vskip 1em% + \lineskip 0.5em% + {\small\fontfamily{cmss}\selectfont + \begin{tabular}{|c|c|p{1.5in}|p{1.2in}|} + \hline + Date & Version & Description & Author \\ + \hline + \@revhistory + % <dd/mmm/yy> & <x.x> & & \\ + % \hline + \end{tabular} + } +% \begin{tabular}[t]{c}% +% \@author +% \end{tabular}\par + }% +% \vskip 1em% +% {\large \@date}% + \end{flushright}% + \par + \vskip 1.5em% + } +\fi + +\renewenvironment{thebibliography}[1] + {\list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy + \clubpenalty4000 + \@clubpenalty \clubpenalty + \widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist} + +\makeatother + +\RequirePackage{vmargin} +\setmarginsrb{1in}{1in}{1in}{1in}{30pt}{36pt}{40pt}{36pt} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |