% % Last modified: 10/28/99 % \documentstyle[11pt,fullpage]{article} \begin{document} \include{epsf} \thispagestyle{empty} \title{{\LARGE\bf System Design Document}} \author{{\Large\it Authors} \\ \vspace*{2.5in} \mbox{} \\ {\Large Title of Project} \vspace*{2.5in} \mbox{} \\ \date{\today} } \maketitle \clearpage \tableofcontents \clearpage %\bibliographystyle{plain} % % This section is an introduction to what your system is, basically an % abstract of the system and what is to follow in this document. % Include subsections which state the system objectives; all interfaces % to hardware, to devices, to other software systems, and to the user; % and all design constraints and limitations imposed. % \section{Introduction} \subsection{System Objectives} \subsection{Hardware, Software, and Human Interfaces} \subsection{Design Constraints and Limitations} % % Describe in detail the design of the system architecture. Include what % system topology will be used (layers, partitions, etc.) and what % architectural framework will be used (client-server, interactive. etc.) % Describe in detail the Data Stores (files or external database) that are % used by the system. % Describe the software control implementation of the system. % \section{System Architecture} \subsection{Topology} \subsection{Data Stores} \subsection{Software Control} % % Describe the User Interface. Include snapshots of sample screens from your % prototype to help illustrate the user interface as appropriate. % Describe how your UI design will be implemented in the % object-oriented framework, include references to the UML models that % will contain the information. % Recall that the user interface for your embedded systems could refer to % the user of the system (e.g., driver of a vehicle or user of an % appliance), and it can refer to a system technician who is % attempting to obtain diagnostic information about the system. % \section{User Interface Description} % % Refine each UML Model to depict system design decisions. Add needed % attributes and operations to classes. Processing narratives should accompany % each operation. Include a detailed Data Dictionary describing each object % class in detail (including attribute and method descriptions). % % - The Object Model section should include the actual diagram(s) and a % data dictionary with entries for each entity in the system. % % - The Dynamic Model sections should include your sequence diagrams and % state diagrams. (Be sure to consider refinements and additional scenarios % encoded as sequence diagrams as appropriate.) % % - Each section should also contain prose descriptions of the % design and diagrams. Also include explanations of how and why you % obtained/derived this particular UML design. % % - Finally, in the Critical Properties section, enumerate and describe % 10 critical properties that your group identified for your system. Indicate % what type of property each one is (e.g., safety, liveness, etc.) % Describe how you were able to use XSpin to validate at least % two of these properties and/or whether you were able to use XSpin to % identify problems with your graphical models. (See below in the % appendix for instructions on including your Promela specifications.) % \section{System Design Description} \subsection{Object Model} \subsection{Dynamic Model} \subsection{Critical Properties} % % This section should contain the sources of any and all references to other % group documents, articles, books, etc. that you used in creating this % document. You should use Bibtex to create the reference lists. % \section{References} \subsection{Existing Software Documentation} \subsection{System Documentation} \subsection{Vendor Documents} \subsection{Technical References} \appendix % % - Include the state diagrams that you encoded in Promela % - Include your Promela specifications in the appendix, as well as any % neverclaims that you verified and/or message sequence charts that % showed problems with your design % % \section{Promela Specification for System} % % If you wish to import the specs directly, then you need to put at the % top of the ASCII file: \begin{verbatim} and at the bottom of the % file \end{verbatim}. % Otherwise, it is fine to enscript the file using ``enscript -2r -o % output.ps project.promela'', which will generate a ps file that % you may print and insert. Be sure to insert the figure of your % state diagram prior to the Promela specs. % % To directly import a Promela program in the file ``project.promela'' % uncomment the following three lines: %\begin{verbatim} %\input{project.promela} %\end{verbatim} \end{document}