diff --git a/Demo-Script.md b/Demo-Script.md index 0fd03b7..84b6cd4 100644 --- a/Demo-Script.md +++ b/Demo-Script.md @@ -1,26 +1,33 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project + +::[PROJECT-NAME](Home) + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [Project proposal](Proposal) > [Target audience and benefits](Target-and-Benefits) - [SRS](SRS) > [Use case suite](Use-Case-Suite) - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- ### Demo Planning + *TODO: Think through your goals for this demo.* #### Who is the target audience for this demo? + - ::Investors and potential investors - ::Potential customers - ::Management, other developers, or partners - ::End users as part of training #### What is your main goal for this demo? + - ::To convince the audience to make a decision and take action. E.g., a sales call. - ::To inform the audience about the product and prompt @@ -30,6 +37,7 @@ are done with the UI. #### What main points will you use to achieve your goal? + - ::This product automates much of the user's task, thus increasing productivity and cutting costs. - ::This product is very easy to use, which will encourage @@ -43,11 +51,13 @@ the remaining features cannot possibly work like the others. #### How much time is available to present the demo? + - ::10 minutes, no questions - ::10 minutes, plus questions - ::30 minutes, including questions #### What equipment and setup is needed to give the demo? + - ::One person. Any computer with a web browser. - ::One person. Any computer where we can install from CD or the Internet. @@ -56,6 +66,7 @@ with a wireless networking card. ### Demo Script + *TODO: Outline the steps of the demo. Plan out what you will do and say. Practice three times to make sure that all system features actually work as needed, and that there is enough time.* @@ -66,6 +77,7 @@ you interested? What are your questions or concerns? Do you strongly disagree with any points?* #### ::Beginning + - ::SET EXPECTATIONS - ::SET THE STAGE - ::KEY POINT @@ -73,6 +85,7 @@ disagree with any points?* - ::DEMO STEP #### ::Middle + - ::KEY POINT - ::DEMO STEP - ::DEMO STEP @@ -80,10 +93,11 @@ disagree with any points?* - ::DEMO STEP - ::DEMO STEP - ::KEY POINT (if there is time) - - ::DEMO STEP - - ::DEMO STEP + - ::DEMO STEP + - ::DEMO STEP #### ::Ending + - ::FINAL POINT - ::DEMO STEP - ::DEMO STEP @@ -99,26 +113,32 @@ good answers.* use them if someone asks a question.* #### ::How does this compare to OTHER-PRODUCT? + ::ANSWER #### ::What happens if you do X or Y? + ::It would do Z. #### ::When will your product be ready? + - ::We have announced a release date of July 17th. - ::We are planning a release this Winter, but no specific date has been set. - ::We have not announced a release date yet. ### Demo Checklist + *TODO: Use the following questions to help you evaluate your demo.* #### Are you making the right points in the right order? + ::Yes, we feel that we will accomplish our goals. ::No, we need to better prioritize our points. #### Can it be presented in the available time? + ::Yes, we could even add more or finish early. ::Yes, we have optional sections that can be skipped to save time @@ -130,6 +150,7 @@ fewer points. ::No, we need to change the available time. #### Do all system features actually work as needed? + ::Yes, everything is finished and working. ::Yes, there are defects, but they will not matter for this demo. @@ -141,6 +162,7 @@ something fails. our points without exposing defects. #### Does the demo end effectively? + ::Yes, viewers will be satisfied and convinced. ::No, we need to make sure the demo stops at the natural end of a @@ -148,6 +170,7 @@ small but complete story, and that audience members understand our key points. #### Does the demo raise questions that it does not answer? + ::No, the demo is very complete. ::Yes, but we anticipate those questions and can handle them in the diff --git a/Design-Architecture.md b/Design-Architecture.md index 46f3835..9379111 100644 --- a/Design-Architecture.md +++ b/Design-Architecture.md @@ -1,15 +1,19 @@ -##### Project: -::PROJECTNAME(Home) +##### Project + +::PROJECT-NAME(Home) + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [Design](Design) > Design Architecture - [Software Requirements Specification](SRS) - [Glossary](Glossary) - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- *TODO: Answer the questions below to help you define your system @@ -49,11 +53,11 @@ architecture. Some example text is provided.* ::The components of this system are listed below by type: - ::Presentation/UI Components - - ::[C-00: COMPONENTNAME](Design-Components#c-00) + - ::[C-00: COMPONENT-NAME](Design-Components#c-00) - ::Application Logic Components - - ::[C-10: COMPONENTNAME](Design-Components#c-10) + - ::[C-10: COMPONENT-NAME](Design-Components#c-10) - ::Data Storage Components - - ::[C-20: COMPONENTNAME](Design-Components#c-20) + - ::[C-20: COMPONENT-NAME](Design-Components#c-20) ### Deployment @@ -68,24 +72,24 @@ defined below: - ::All-in-one server - ::Tomcat process - ::[C-00: Tomcat web server](Design-Components#c-00) - - ::[C-10: PROJECTNAME + - ::[C-10: PROJECT-NAME application](Design-Components#c-10) - ::Database process - - ::[C-20: COMPONENTNAME](Design-Components#c-30) + - ::[C-20: COMPONENT-NAME](Design-Components#c-30) ::The deployment of components to processes and machines is clearly defined below: - ::Load-balanced front-end servers - - ::[C-01: COMPONENTNAME](Design-Components#c-00) + - ::[C-01: COMPONENT-NAME](Design-Components#c-00) - ::Back-end server - ::JVM process - - ::[C-00: COMPONENTNAME](Design-Components#c-00) - - ::[C-10: COMPONENTNAME](Design-Components#c-10) - - ::[C-11: PLUG-IN COMPONENTNAME](Design-Components#c-11) - - ::[C-12: PLUG-IN COMPONENTNAME](Design-Components#c-12) + - ::[C-00: COMPONENT-NAME](Design-Components#c-00) + - ::[C-10: COMPONENT-NAME](Design-Components#c-10) + - ::[C-11: PLUG-IN COMPONENT-NAME](Design-Components#c-11) + - ::[C-12: PLUG-IN COMPONENT-NAME](Design-Components#c-12) - Database process - - ::[C-20: COMPONENTNAME](Design-Components#c-30) + - ::[C-20: COMPONENT-NAME](Design-Components#c-30) #### What aspects/resources of their environment are shared? @@ -120,7 +124,6 @@ split or load-balanced. ### Integration - #### How will components be integrated? Specifically, how will they communicate? ::All of our code uses direct procedure calls. The database is @@ -166,14 +169,17 @@ components communicate during some important usage scenarios: *TODO: Evaluate your architecture with respect to each of your goals.* #### Ease of integration: Have mechanisms been provided for all needed types of integration? + ::Yes. In this system, all of the new components are designed to work together. And, the reused components are integrated via fairly simple interfaces. #### Extensibility: What types of components can be added later and how? + ::See above. #### Capacity matching: How has this architecture matched component resource needs to machines? + ::The database can be on a machine with RAID disks and a hot-swappable power supply, while the web front-end components can be on cheaper machines that could fail individually without causing diff --git a/Design-Components.md b/Design-Components.md index 0a0c0de..48c7950 100644 --- a/Design-Components.md +++ b/Design-Components.md @@ -1,11 +1,14 @@ -##### Project: -::PROJECTNAME +##### Project + +::PROJECT-NAME + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: -- [Design](Design)> [Architecture](Design-Architecture) > Design Components +##### Related Documents + +- [Design](Design) > [Architecture](Design-Architecture) > Design Components - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS diff --git a/Design-Persistence.md b/Design-Persistence.md index 955029f..b807335 100644 --- a/Design-Persistence.md +++ b/Design-Persistence.md @@ -1,10 +1,10 @@ -##### Project: -::PROJECTNAME +##### Project +::PROJECT-NAME -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Design](Design) > Design Persistence - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS @@ -99,8 +99,12 @@ attachments are written to files on the server hard disk. ::N/A ::Files are stored on the server as - -```/var/data/attachments/msgNNNN-MMM.dat``` + +```bash + +/var/data/attachments/msgNNNN-MMM.dat + +``` ::Users store files anywhere on their computer, with the filename extension ```.TST```. @@ -111,7 +115,7 @@ extension ```.TST```. ::Files for message attachments are only readable and writable by the mailing list archiving process that runs as operating system -user "archdaemon". +user "daemon". ::Users can use whatever file permissions they like. @@ -151,7 +155,6 @@ kept indefinitely. ### Persistence Mechanisms Checklist - #### Expressiveness: To what extent has this been achieved? ::2-4 SENTENCES diff --git a/Design-Scalability.md b/Design-Scalability.md index e9edc3b..be19c16 100644 --- a/Design-Scalability.md +++ b/Design-Scalability.md @@ -1,13 +1,17 @@ -##### Project: -::PROJECTNAME +##### Project + +::PROJECT-NAME + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [Design](Design) > Scalability - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- ### Overview @@ -28,7 +32,6 @@ scalability goals for this design.* ### Scalability Mechanisms - ### Performance Goals and Estimates | Action | Goal | Time Formula | Description | diff --git a/Design-Security.md b/Design-Security.md index 240eb97..a670742 100644 --- a/Design-Security.md +++ b/Design-Security.md @@ -1,13 +1,15 @@ -##### Project: -::PROJECTNAME +##### Project +::PROJECT-NAME -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents + - [Design](Design) > Design Security - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- ### Overview @@ -87,7 +89,7 @@ features. Some example text is provided. Add or delete text as needed.* - ::Users must have certificate files on their client machine before they can connect to the server - ::Users must have physical security tokens (e.g., hasp, dongle, - smartcard, or fingerprint reader) + smart-card, or fingerprint reader) - ::Users are given roles that define their permissions. Those roles are: - ::Guest: Visitor to the site is not logged in, no permissions @@ -101,10 +103,10 @@ features. Some example text is provided. Add or delete text as needed.* - ::Each action (information display or change) requires that the user has a role with proper permissions - ::Compromised or abused accounts can be quickly disabled - by administrators. >  -- ::Administrators can review user >  permissions -- ::Administrators can audit all a > ccesses and changes -- ::All communications with the us > er are encrypted (e.g., SSL) + by administrators. > +- ::Administrators can review user > permissions +- ::Administrators can audit all a > ccesses and changes +- ::All communications with the us > er are encrypted (e.g., SSL) - ::Some communications with the user (e.g., the username and password) are encrypted (e.g., SSL) - ::Sessions are tied to a particular client IP-address so that @@ -131,7 +133,6 @@ features. Some example text is provided. Add or delete text as needed.* ### Security Checklist - #### Protection of data: To what extent has this been achieved? ::2-4 SENTENCES @@ -145,6 +146,7 @@ features. Some example text is provided. Add or delete text as needed.* ::2-4 SENTENCES #### Accountability/auditing: To what extent has this been achieved? + ::2-4 SENTENCES #### Have these security mechanisms been communicated to the development team and other stakeholders? diff --git a/Design-Src-Org.md b/Design-Src-Org.md index 9dcfab8..9da9bdc 100644 --- a/Design-Src-Org.md +++ b/Design-Src-Org.md @@ -1,15 +1,19 @@ -##### Project: -::PROJECTNAME +##### Project + +::PROJECT-NAME + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [Design](Design) > Source Code Organization and Build System - ::[Example build.xml for Tomcat](http://jakarta.apache.org/tomcat/tomcat-4.1-doc/appdev/build.xml.txt) - ::[Apache Ant manual](http://ant.apache.org/manual/index) - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- ### Overview @@ -20,6 +24,7 @@ delete text as needed. E.g., not all projects try to be platform independent.* #### What are the most important facts that a developer should know about this source code organization and build system? + ::It roughly follows the standard proposed in the Tomcat documentation and is very similar to the organization used on many open source projects at the Apache Software Foundation. @@ -58,7 +63,7 @@ overall structure or build process.* | ::build/ | ::No | ::Output of build process | | ::build/WEB-INF/classes/ | ::No | ::Compiled code output by build process | | ::dist/docs/api/ | ::No | ::API documentation output from build process | -| ::dist/PROJECTNAME-VERSION.war | ::No | ::Deployable web archive of classes and config files generated by build process | +| ::dist/PROJECT-NAME-VERSION.war | ::No | ::Deployable web archive of classes and config files generated by build process | ### Build Targets @@ -68,11 +73,10 @@ development. The examples below should fit most projects.* | Target | Description | |---------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ::compile = default | ::Compiles Java source code and creates .class files under the "build" directory. | -| ::dist | ::Packages the system for distribution/deployment to servers or end users. Specifically, it creates .war archive of compiled classes and configuration files. | -| ::install | ::Places executable code into location where it will actually be executed. Specifically, it copies .war file into Tomcat's webapps directory for use. You must then restart Tomcat or use the "reload" link in the Tomcat Manager. | -| ::javadoc | ::Generates Java API documentation under "build/docs/api/". | -| ::clean | ::Deletes files generated by previous build commands. Files under version control are not touched. | - +| ::dist | ::Packages the system for distribution/deployment to servers or end users. Specifically, it creates .war archive of compiled classes and configuration files. | +| ::install | ::Places executable code into location where it will actually be executed. Specifically, it copies .war file into Tomcat's webapps directory for use. You must then restart Tomcat or use the "reload" link in the Tomcat Manager. | +| ::javadoc | ::Generates Java API documentation under "build/docs/api/". | +| ::clean | ::Deletes files generated by previous build commands. Files under version control are not touched. | ### Build Configuration Options diff --git a/Design-UI.md b/Design-UI.md index b7c536a..274a366 100644 --- a/Design-UI.md +++ b/Design-UI.md @@ -1,13 +1,17 @@ -##### Project: -::PROJECTNAME +##### Project + +::PROJECT-NAME + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [Design](Design) > User Interface - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- ### Overview @@ -29,7 +33,6 @@ text as needed.* ### Metaphors, Exemplars, and Standards - #### What is the central metaphor of this UI design? ::PARAGRAPH @@ -88,38 +91,37 @@ interaction contexts. A use case that requires three interaction contexts could be hard to use. However, interaction contexts with too many components can also be hard to use.* -| Interaction Context --Abstract UI Components | Purpose | Contents / Constraints / Behavior | +| Interaction Context --Abstract UI Components | Purpose | Contents / Constraints / Behavior | |------------------------------------------------|------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| ::[Login dialog](LINK-TO-MOCKUP) | ::Verify that the current user is actually the person that they claim to be. | | -| ::--Prompt | ::Tell the user that this dialog is to log in. | ::"Please log in". | -| ::--Message area | ::Give the user some feedback about the login process. | ::Initially blank. Changes to "Checking username and password" when the user presses "Login". Changes to "Invalid username or password, please try again", if login fails. | -| ::--Username | ::Identify the user account that the current user is trying to access. | ::The name of the user account. Regex: [-_a-z0-9]{1-16}. The application should not do anything that would help users guess usernames. E.g., this should not be a combo-box with recent users listed, and it should not offer auto-complete. | -| ::--Password | ::Verify that the current user knows a secret password that only the true user of that user account should know. | ::The password of 4-16 characters. Do not display the password on the screen. The application should not do anything that would help users guess passwords. | -| ::--Login | ::Allow the user to indicate that they have completed entry of their username and password. | ::"Login" Only enabled when Username != "". If the username or password is incorrect, delay a few seconds, and then clear all fields. | -| ::--Lost Password | ::Allow the current user to start a process of generating a new password for a given username. | ::"Forgot your password? Click here." Only enabled when Username != "". | -| ::[PAGE-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::[PAGE-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::[MAIN-WINDOW-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::[DIALOG-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::[DIALOG-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | -| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::[Login dialog](LINK-TO-MOCKUP) | ::Verify that the current user is actually the person that they claim to be. | | +| ::--Prompt | ::Tell the user that this dialog is to log in. | ::"Please log in". | +| ::--Message area | ::Give the user some feedback about the login process. | ::Initially blank. Changes to "Checking username and password" when the user presses "Login". Changes to "Invalid username or password, please try again", if login fails. | +| ::--Username | ::Identify the user account that the current user is trying to access. | ::The name of the user account. Regex: [-_a-z0-9]{1-16}. The application should not do anything that would help users guess usernames. E.g., this should not be a combo-box with recent users listed, and it should not offer auto-complete. | +| ::--Password | ::Verify that the current user knows a secret password that only the true user of that user account should know. | ::The password of 4-16 characters. Do not display the password on the screen. The application should not do anything that would help users guess passwords. | +| ::--Login | ::Allow the user to indicate that they have completed entry of their username and password. | ::"Login" Only enabled when Username != "". If the username or password is incorrect, delay a few seconds, and then clear all fields. | +| ::--Lost Password | ::Allow the current user to start a process of generating a new password for a given username. | ::"Forgot your password? Click here." Only enabled when Username != "". | +| ::[PAGE-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::[PAGE-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::[MAIN-WINDOW-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::[DIALOG-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::[DIALOG-NAME](LINK-TO-MOCKUP) | ::PURPOSE | | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | +| ::--ABSTRACT-COMPONENT-NAME | ::PURPOSE | ::CONTENTS | ### Technical Constraints / Operational Context - #### What are your assumptions about the output devices? ::We assume that the user has a 17-inch or larger screen with 1024x768 @@ -159,7 +161,6 @@ may add or remove questions to fit your project.* #### Understandability and learnability - ##### Are there any labels of icons that are likely to be misunderstood? ::1-3 SENTENCES @@ -169,6 +170,7 @@ may add or remove questions to fit your project.* ::1-3 SENTENCES ##### Are advanced options clearly separated from the most commonly used options? + ::1-3 SENTENCES ##### Are there no invisible options or commands? E.g., hold down the control key when opening a dialog box to see advanced options. @@ -177,7 +179,6 @@ may add or remove questions to fit your project.* #### Task Support and Efficiency - ##### Which use cases force the user to work through more than two interaction contexts? ::1-3 SENTENCES @@ -188,7 +189,6 @@ may add or remove questions to fit your project.* #### Safety - ##### Are there any dangerous or irreversible actions that are done with only one step? ::1-3 SENTENCES @@ -203,14 +203,10 @@ may add or remove questions to fit your project.* ::1-3 SENTENCES -##### Do all elements in your system that appear the same, actually function the same? - -::1-3 SENTENCES - ##### Are all elements share consistent visual characteristics such as font and color scheme, unless there is a reason for them to differ? ::1-3 SENTENCES -#####Are labels used consistently throughout the system? E.g., not "forward/back" in some contexts and "next/prev" in others. +##### Are labels used consistently throughout the system? E.g., not "forward/back" in some contexts and "next/prev" in others. ::1-3 SENTENCES diff --git a/Design.md b/Design.md index 66f8d77..c522a7b 100644 --- a/Design.md +++ b/Design.md @@ -1,74 +1,79 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project -##### Internal Release Number: -::X.Y.Z +::[PROJECT-NAME](Home) + +##### Internal Release Number + +::X.Y.Z + +##### Attached Worksheets -##### Attached Worksheets: - Design > [Architecture Worksheet](Design-Architecture) -- Design > [Source Organization and Build Worksheet] > (Design-Src-Org) - +- Design > [Source Organization and Build Worksheet](Design-Src-Org) +- Design > [Scalability Worksheet](Design-Scalability) - Design > [User Interface Worksheet](Design-UI) - Design > [Persistent Storage Worksheet](Design-Persistence) - Design > [Security Worksheet](Design-Security) -##### Related Documents: +##### Related Documents + - [SRS](SRS) > [Use case suite](Use-Case-Suite) - [SRS](SRS) > [Feature set](Feature-Set) - [Glossary](Glossary) - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- -**Process impact:** This design document describes a system that will -satisfy the requirements of the [SRS](SRS). Decisions made in -creating this design document are based on those requirements and an -understanding of available technologies and components. Once the design -has been drafted, work on the system implementation and unit testing may -begin. +**Process impact:** -*TODO: Fill in the sections below. Add ore remove items as needed for -your project.* +This design document describes a system that will satisfy the requirements of the [SRS](SRS). Decisions made in creating this design document are based on those requirements and an understanding of available technologies and components. Once the design has been drafted, work on the system implementation and unit testing may begin. + +*TODO: Fill in the sections below. Add ore remove items as needed for your project.* ### Introduction #### How is this design document organized? + This main page describes the system design in terms of packages, classes, relationships, and behavior. Several attached worksheets address specific aspects of the overall system design, such as user interface and database design. #### What are the most important facts that a developer should know about this design? + ::PARAGRAPH or BULLETS #### What are the prioritized goals of this design? -1. ::[Correctness](Glossary-Standard-Terms#dg_correctness) -2. ::[Feasibility](Glossary-Standard-Terms#dg_feasibility) -3. ::[Understandability](Glossary-Standard-Terms#dg_understandability) -4. ::[Implementation phase guidance](Glossary-Standard-Terms#dg_guidance) -5. ::[Modularity](Glossary-Standard-Terms#dg_modularity) -6. ::[Extensibility](Glossary-Standard-Terms#dg_extensibility) -7. ::[Testability](Glossary-Standard-Terms#dg_testability) -8. ::[Efficiency](Glossary-Standard-Terms#dg_efficiency) + +1. ::[Correctness](Glossary-Standard-Terms#correctness) +2. ::[Feasibility](Glossary-Standard-Terms#feasibility) +3. ::[Understandability](Glossary-Standard-Terms#understandability) +4. ::[Implementation phase guidance](Glossary-Standard-Terms#implementation-and-phase-guidance) +5. ::[Modularity](Glossary-Standard-Terms#modularity) +6. ::[Extensibility](Glossary-Standard-Terms#extensibility) +7. ::[Testability](Glossary-Standard-Terms#testability) +8. ::[Efficiency](Glossary-Standard-Terms#efficiency) ### UML Structural Design *TODO: Link to a design model and/or design diagrams that describe your system's structure in detail.* -#### The system's structural design is described in the following UML model: -::[MODELNAME](LINK-TO-MODEL-FILE). +#### The system's structural design is described in the following UML model -#### The system's structural design is described in the following UML structural diagrams: +::[MODEL-NAME](LINK-TO-MODEL-FILE). + +#### The system's structural design is described in the following UML structural diagrams - ::[PACKAGE OVERVIEW DIAGRAM](LINK-TO-DIAGRAM) -- ::PACKAGENAME - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) -- ::PACKAGENAME - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) -- ::PACKAGENAME - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) +- ::PACKAGE-NAME + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) +- ::PACKAGE-NAME + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) +- ::PACKAGE-NAME + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) ::ANY ADDITIONAL NOTES OR COMMENTS @@ -77,23 +82,24 @@ system's structure in detail.* *TODO: Link to a design model and/or design diagrams that describe your system's behavior in detail.* -#### The system's behavioral design is described in the following UML model: -::[MODELNAME](LINK-TO-MODEL-FILE) +#### The system's behavioral design is described in the following UML model -#### The system's behavioral design is described in the following UML behavioral diagrams: +::[MODEL-NAME](LINK-TO-MODEL-FILE) + +#### The system's behavioral design is described in the following UML behavioral diagrams - State Diagrams - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) - Sequence Diagrams - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) - Collaboration Diagrams - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) - - ::[DIAGRAMNAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) + - ::[DIAGRAM-NAME](LINK-TO-DIAGRAM) ::ANY ADDITIONAL NOTES OR COMMENTS @@ -105,30 +111,39 @@ positively, that may indicate an aspect of the design that should be revised.* #### Correctness: How do you know that this design is correct? + ::2-4 SENTENCES #### Feasibility: What indicates that this design can be implemented and tested with the planned amount of time and effort? + ::2-4 SENTENCES -#### Understandability: What makes this design understandable? +#### Understandability: What makes this design understandable? + ::2-4 SENTENCES #### Implementation phase guidance: Does the design suggest reasonable implementation tasks? + ::2-4 SENTENCES #### Modularity: How have concerns been separated and addressed in distinct modules? + ::2-4 SENTENCES #### Extensibility: How can new features can be easily added later? + ::2-4 SENTENCES #### Testability: What makes this system easy to test? + ::2-4 SENTENCES #### Efficiency: Does the system consume an acceptable amount of time, storage space, bandwidth, and other resources? + ::2-4 SENTENCES #### Has the design been communicated to the development team and other stakeholders? + - ::Yes, everyone understands. Feedback is welcome. - ::No, this is a risk that is noted in the [Risk Management](Project-Plan#Risk-Management) section. diff --git a/Document-Cross-Ref.md b/Document-Cross-Ref.md index e8bb5fb..f9a98a4 100644 --- a/Document-Cross-Ref.md +++ b/Document-Cross-Ref.md @@ -1,8 +1,8 @@ *TODO: This template is not done yet. Feel free to contribute your ideas.* -This document defines the artifacts the team creates during your software -development process. Documenting artifact types helps define the inputs and -outputs of each development task. The producer/consumer matrix helps document +This document defines the artifacts the team creates during your software +development process. Documenting artifact types helps define the inputs and +outputs of each development task. The producer/consumer matrix helps document the software development workflow. ### Artifact Producer / Consumer Matrix diff --git a/FAQ.md b/FAQ.md index e7baee5..576ff8c 100644 --- a/FAQ.md +++ b/FAQ.md @@ -8,24 +8,23 @@ contributors, members of a developers' network, or administrators.* ### General Information -#### What is ::PRODUCTNAME? +#### What is ::PRODUCT-NAME? -::It is a XXXXX. Read our [PRODUCTNAME overview](http://www.COMPANY.com/products/PRODUCTNAME/). +::It is a XXXXX. Read our [PRODUCT-NAME overview](http://www.COMPANY.com/products/PRODUCT-NAME/). -#### Who should use ::PRODUCTNAME? +#### Who should use ::PRODUCT-NAME? -::Anyone who wants XXXXXXX. Read more about our [target audience and -benefits](Target-and-Benefits). +::Anyone who wants XXXXXXX. Read more about our [target audience and benefits](Target-and-Benefits). ### Download and Install -#### How can I obtain ::PRODUCTNAME? +#### How can I obtain ::PRODUCT-NAME? -::You may [download PRODUCTNAME](LINK-TO-DOWNLOAD). +::You may [download PRODUCT-NAME](LINK-TO-DOWNLOAD). -::You may [place an order for PRODUCTNAME](LINK-TO-ORDER). +::You may [place an order for PRODUCT-NAME](LINK-TO-ORDER). -#### What do I need to use ::PRODUCTNAME? +#### What do I need to use ::PRODUCT-NAME? ::System requirements are described in the [release notes](Release-Notes). @@ -34,11 +33,11 @@ of at least XXX MHz, XXX MB of RAM. XXX MB of free disk space, and one of the following operating systems: Windows 98/2000/XP, Mac OSX, Linux. -#### How do I install ::PRODUCTNAME? +#### How do I install ::PRODUCT-NAME? ::[Installation instructions](install.html) are available on-line. -#### How do I upgrade from an older version of PRODUCTNAME? +#### How do I upgrade from an older version of PRODUCT-NAME? ::[Installation instructions](install.html) are available on-line. @@ -56,7 +55,7 @@ OSX, Linux. #### How do I do ::COMMON-TASK? ::You should understand that XXX. Once you are ready, you can: - + 1. ::Step one 2. ::Step two 3. ::Step three diff --git a/Feature-Format.md b/Feature-Format.md index 5749afc..aac84ad 100644 --- a/Feature-Format.md +++ b/Feature-Format.md @@ -1,11 +1,15 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project -##### Internal Release Number: -::X.Y.Z +::[PROJECT-NAME](Home) + +##### Internal Release Number + +::X.Y.Z + +##### Related Documents -##### Related Documents: - [SRS](SRS) > [Feature Set](Feature-Set) > Feature Specification Format + --- **Process impact:** This reference page documents the format of feature @@ -18,6 +22,7 @@ features. as needed in your [Features](Features) document.* --- + ### ::F-00: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -35,7 +40,7 @@ Description: ::1-4 PARAGRAPHS. USE BULLETS OR TABLES TO ORGANIZE INFORMATION. LINK TO WORKSHEETS OR ADDITIONAL INFORMATION. Precise Details: - + - ::LOGICAL CONSTRAINT - ::LOGICAL CONSTRAINT @@ -47,6 +52,7 @@ Notes and Questions: - ::QUESTION --- + ### Feature Attribute Values - Priority @@ -54,10 +60,10 @@ Notes and Questions: this feature. It would be much harder to test, document, or package the product without this feature. - Expected: Key stakeholders strongly desire and expect - this feature. It may have been promised to them in a certain - release. It's absence would substantially reduce the success of - the project. - - Desired: Stakeholders desire this feature. It's absence would + this feature. It may have been promiDIAGRAMsed to them in a certain + release. It's absence would substantDIAGRAMially reduce the success of + the project.DIAGRAM + - Desired: Stakeholders desire this feDIAGRAMature. It's absence would reduce the success of the project. - Optional: This feature would be nice to have. Adding it could have some advantage, but delaying it would not have a big effect diff --git a/Feature-Set.md b/Feature-Set.md index 846174c..a64f438 100644 --- a/Feature-Set.md +++ b/Feature-Set.md @@ -1,10 +1,13 @@ -##### Project: -::PROJECTNAME +##### Project + +::PROJECT-NAME + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [SRS](SRS) > Feature Set - [Project proposal](Proposal) > [User needs](User-Needs) - [SRS](SRS) > [Use case suite](Use-Case-Suite) @@ -12,6 +15,7 @@ - ::LINK TO USE CASE DIAGRAM - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- **Process impact:** A feature set is simply a table of contents for the @@ -23,12 +27,12 @@ early. *TODO: Before writing individual feature descriptions, list all the features that you think you will need. Organize them so that missing features appear as blanks on this page, and extra features will appear -to be extras that don't fit anywhere. See the -[feature format](Feature-Format#further-information) document for more +to be extras that don't fit anywhere. See the +[feature format](Feature-Format#further-information) document for more tips on specifying features and feature sets.* -*TIP: Refer back to the user stories in your [user needs](User-Needs) -document and to the [use case suite](Use-Case-Suite). +*TIP: Refer back to the user stories in your [user needs](User-Needs) +document and to the [use case suite](Use-Case-Suite). Use them for ideas and make sure that you cover all of them.* ### Features by Release and Priority diff --git a/Features.md b/Features.md index 48a52ce..5831a4e 100644 --- a/Features.md +++ b/Features.md @@ -1,16 +1,20 @@ -##### Project: -::PROJECTNAME +##### Project + +::PROJECT-NAME + +##### Internal Release Number -##### Internal Release Number: ::X.Y.Z -##### Related Documents: +##### Related Documents + - [SRS](SRS) > [Feature Set](Feature-Set) > Features - [Feature format](Feature-Format) - [Project proposal](Proposal) > [User needs](User-Needs) - [SRS](SRS) > [Use case suite](Use-Case-Suite) - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS + --- **Process impact:** This is a set of detailed feature descriptions. @@ -34,6 +38,7 @@ unambiguous. E.g.,* - *Specify sequences of events with scenario diagrams* --- + ### ::F-00: Site Configuration Priority: ::Essential @@ -55,11 +60,14 @@ Description: - ::The email address to be used to send critical error reports Notes and Questions: + - ::NOTE - ::QUESTION --- + ### ::F-01: User registration + Priority: **::Essential** Effort: ::Days @@ -93,6 +101,7 @@ Notes and Questions: - ::QUESTION --- + ### ::F-02: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -106,7 +115,7 @@ Functional area(s): ::WORD, WORD, WORD Use case(s): ::[UC-01](Use-Cases#UC-01) Description: -:: 1-4 PARAGRAPHS. USE BULLETS OR TABLES TO ORGANIZE INFORMATION. LINK TO WORKSHEETS OR ADDITIONAL INFORMATION. +:: 1-4 PARAGRAPHS. USE BULLETS OR TABLES TO ORGANIZE INFORMATION. LINK TO WORKSHEETS OR ADDITIONAL INFORMATION. Precise Details: @@ -119,6 +128,7 @@ Notes and Questions: - ::QUESTION --- + ### ::F-03: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -146,6 +156,7 @@ Notes and Questions: - ::QUESTION --- + ### ::F-10: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -172,8 +183,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-11: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -200,8 +211,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-12: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -229,6 +240,7 @@ Notes and Questions: - ::QUESTION --- + ### ::F-13: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -255,8 +267,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-20: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -283,8 +295,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-21: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -311,8 +323,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-22: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -339,8 +351,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-23: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -368,6 +380,7 @@ Notes and Questions: - ::QUESTION --- + ### ::F-30: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -394,8 +407,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-31: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -422,8 +435,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-32: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional @@ -450,8 +463,8 @@ Notes and Questions: - ::NOTE - ::QUESTION - --- + ### ::F-33: FEATURE NAME Priority: ::Essential | Expected | Desired | Optional diff --git a/Glossary-Standard-Terms.md b/Glossary-Standard-Terms.md index cfc6dbc..461e6a6 100644 --- a/Glossary-Standard-Terms.md +++ b/Glossary-Standard-Terms.md @@ -1,6 +1,6 @@ - # Standard Terms Glossary + --- **Process impact:** This file as a dictionary of standard terms defined @@ -10,19 +10,12 @@ helps keep other documents more concise and easy to edit. Check the [ReadySET glossary](http://readyset.tigris.org/templates/glossary-std.html) for updates. -Jump to: [General](#general-terms) | -[Computer science & technology](#computer-science-and-technology-terms) | -[Process](#process-terms) | -[Software development tools](#development-tool-terms) | -[Requirements](#requirements-terms) | [Design](#design-terms) | -[Design goals terms](#design-goals-terms) | [QA terms](#qa-terms) | -[QA goals terms](#qa-goals-terms) | [Additional terms](#additional-standard-terms)| -[Project terms](Glossary) - +Jump to: [General](#general-terms) | [Computer science & technology](#computer-science-and-technology-terms) | [Process](#process-terms) | [Software development tools](#development-tool-terms) | [Requirements](#requirements-terms) | [Design](#design-terms) | [Design goals terms](#desigD-DIAGRAMn-goals-terms) | [QA terms](#qa-terms) | [QA goals terms](#qa-goals-terms) | [Additional terms](#additional-standard-terms)| [Project terms](Glossary) ### General Terms ##### Chipping away + The process of removing sample text from templates when that text does not apply to the current project. Often some of the sample text will be kept or revised to fit the current project. Even if the @@ -33,23 +26,27 @@ he carved a marble statue of a horse, he replies "It was easy, I just started with a big block of marble and chipped away everything that did not look like a horse." -##### Attached worksheet -The idea is similar to filling in an IRS form and using worksheets -to calculate subtotals or make specific decisions. That is to say, -there is a hierarchy to the templates: there are the main templates, -and then worksheets for specific topics. We have divided the -information into several files so that each file is focused on one -topic, and so that each file can be worked on by one person in a -reasonable amount of time. +##### Attached worksheetD-DIAGRAM -##### Process impact -The process impact box on each template explains where the current -template fits into the software development process. It usually +The idea is similar to fillD-DIAGRAMing in an IRS form and using worksheets +to calculate subtotals or mD-DIAGRAMake specific decisions. That is to say, +there is a hierarchy to theD-DIAGRAM templates: there are the main templates, +and then worksheets for speD-DIAGRAMcific topics. We have divided the +information into several fiD-DIAGRAMles so that each file is focused on one +topic, and so that each filD-DIAGRAMe can be worked on by one person in a +reasonable amount of time.D-DIAGRAM +D-DIAGRAM + +##### Process impactD-DIAGRAM + +The process impact box on eD-DIAGRAMach template explains where the current +template fits into the softD-DIAGRAMware development process. It usually includes a brief comment on who should create the document, and who would be expected to make use of it. You can change the process impact box, but you should not need to. ##### Checklist + There are two kinds of checklists: - Many of the templates have a section with questions that help @@ -60,6 +57,7 @@ There are two kinds of checklists: in those artifacts. ##### Sticky note + The idea is similar to a post-it note attached to a document that tells you do "sign here" or fill in a certain part. There are two types of sticky notes: @@ -80,12 +78,14 @@ sticky note. ### Computer Science and Technology Terms ##### ::API (Application Programming Interface) + An API is a set of functions that one software component makes available to other software components. That allows other programs to "call" this program via direct function calls, or more indirect communications such as [SOAP](#soap) messages. ##### ::SOAP + SOAP (Simple Object Access Protocol) is the message format used by standard web services. It entails sending an XML document to a server in order to invoke an operation on the server-side. @@ -94,7 +94,8 @@ server in order to invoke an operation on the server-side. ### Process Terms ##### Change Control Board (CCB) -A group of people who review proposed changes to the project + +A group of people who review proposed changes toD-DIAGRAM the project requirements and/or source code to accept or reject changes in each particular release. Proposed changes are usually rejected if they introduce too much risk or would trigger additional effort (e.g., @@ -103,6 +104,7 @@ composed of managers and representatives of other stakeholders such as the QA group and key customers. ##### Feature Complete + A release is called "feature complete" when the development team agrees that no new features will be added to this release. New features may still be suggested for later releases. More development @@ -110,6 +112,7 @@ work needs to be done to implement all the features and repair defects. ##### Code Complete + A release is called "code complete" when the development team agrees that no entirely new source code will be added to this release. There may still be source code changes to fix defects. There may @@ -118,12 +121,14 @@ for test cases or utilities. New code may be added in a future release. ##### Internal Release Number + An internal release number is the number that the development team gives each release. Internal release numbers typically count up logically, i.e., they do not skip numbers. They may have many parts: e.g., major, minor, patch-level, build number, RC number. ##### External Release Number + External release numbers are the numbers that users see. Often, they will be the same as the internal release number. That is especially true if the product being built is a component intended to be reused @@ -136,6 +141,7 @@ version 8. Later, the competition used version "10 Optimized" rather than "10.1" or "11". ##### Release Number + The term "release number" by itself refers to an [external release number](#external_release_number). Users normally are not aware of the existence of any internal release numbers. @@ -143,35 +149,41 @@ of the existence of any internal release numbers. ### Development Tool Terms #### Version Control System + ::DEFINITION1 #### Commit Log Message + ::DEFINITION1 #### Issue Tracker + ::DEFINITION1 #### Unit Testing Automation + ::DEFINITION1 #### Automated Build System -::DEFINITION1 -#### Source Code Analysis Tool ::DEFINITION1 #### Style Checker + ::DEFINITION1 #### Source Code Formatter (Pretty Printer) + ::DEFINITION1 #### System Test Automation + ::DEFINITION1 ### Requirements Terms #### Feature specification + A feature specification focuses on one feature of a software product and completely describes how that feature can be used. It includes a brief description of the purpose of the feature, the input and @@ -179,8 +191,8 @@ output, and any constraints. Individual bullet items give precise details on all aspects of the feature. One feature may be used in many different ways as part of many different use cases. - #### Use case + The main part of a use case is a set of steps that give an example of how an [actor](#actor) can use the product to succeed at a goal. These steps are called the "Main success scenario", and they @@ -188,115 +200,144 @@ include both user intentions and system responses. One use case may show how the actor uses several features to accomplish a goal. #### Actor + A user or an external system that uses the system being built. ### Design Terms #### ::TERM2 + ::DEFINITION2 ### Design Goals Terms #### Correctness + This design correctly matches the given requirements. #### Feasibility + This design can be implemented and tested with the planned amount of time and effort. #### Understandability + Developers can understand this design and correctly implement it. #### Implementation phase guidance + This design divides the implementation into components or aspects that can correspond to reasonable implementation tasks. #### Modularity + Concerns are clearly separated so that the impact of most design changes would be limited to only one or a few modules. #### Extensibility + New features or components can be easily added later. #### Testability + It is easy to test components of this design independently, and information is available to help diagnose defects. #### Efficiency + The design enables the system to perform functions with an acceptable amount of time, storage space, bandwidth, and other resources. #### Ease of integration + The components will work together. #### Capacity matching + The architecture deploys components onto machines that provide needed resources with reasonable total expense. #### Expressiveness + It allows for storage of all valid values and relationships #### Ease of access + Application code to access stored data is simple #### Reliability + Stored data cannot easily be corrupted by defective code, concurrent access, or unexpected process termination #### Data capacity + The system can store the amount of data needed. #### Data security + Protection of sensitive user and corporate data from unauthorized access or modification #### Performance + Data can be accessed quickly #### Interoperability + The database or data files can be accessed and updated by other applications #### Intrusion prevention + Prevent, e.g., hackers opening a command shell on our server. #### Abuse prevention + Prevention of abuse (e.g., using our system to send spam). #### Auditability + All changes can be accounted for later. #### Understandability and learnability + Users can reasonably be expected to understand the UI at first sight. Users will be able to discover additional features without aid from other users or documentation, and they will be able to recall what they have learned. #### Task support and efficiency + The UI is well matched to the users' tasks and it can be used with a reasonable number of clicks and keystrokes. #### Safety + Users are not likely to accidentally produce an undesired result (e.g., delete data, or send a half-finished email). #### Consistency and familiarity + Users can apply their knowledge of similar UIs or UI standards to this system. ### QA Terms #### Bug + *n.* **Deprecated** since 1991. See [defect](#defect). #### Error + *v.* A mistaken thought in the developer's mind. Often caused by miscommunication or bad assumptions. Errors can create [defects](#defect). E.g., a developer might erroneously think that the square root of -4 is -2. #### Defect + *n.* The result of the developer's [error](#error) embodied in the product source code, initial data, or documents. E.g., a square root function which allows negative numbers as arguments is defective. @@ -304,6 +345,7 @@ Defects can be removed by changing the source code, initial data, or document. #### Fault + *n.* The execution of defective code. E.g., if a certain input is provided to defective code, it may cause an exception, or go into an infinite loop, or store an incorrect value in an internal variable. @@ -311,6 +353,7 @@ A fault is not normally visible to users, only the [failure](#failure) is visible. #### Failure + *n.* The user-visible result of a [fault](#fault). E.g., an error message or an incorrect result. This is evidence that can be reported in a defect report. Developers use failure evidence during @@ -319,35 +362,41 @@ debugging to eventually find and remove [defects](#defect). ### QA Goals Terms #### Functionality > Correctness + Correctness is the most basic quality goal. It means that, when valid inputs are given and the system is in a valid state and under reasonable load, the system's behavior and results will be correct. #### Functionality > Robustness + Robustness is the system's ability to gracefully handle invalid inputs. It should never be possible for any user input to crash the system or corrupt data, even if that user input is abnormal, unexpected, or malicious. #### Functionality > Accuracy + Accuracy refers to the mathematical precision of calculations done by the system. Any system that does numeric calculations must consider accuracy, e.g., financial or scientific applications. #### Functionality > Compatibility + Systems that claim to follow standards or claim compatibility with existing systems must adhere to the relevant file formats, protocols, and APIs. The relevant standards are linked at the top of this document. #### Functionality > Factual correctness + Is the data in the system a true representation of the real world? Any system that contains initial data or gathers data about the real -world should be sure that the data is factually correct. E.g., a tax -preparation program should embody correct and up-to-date facts about -tax law. - +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM #### Usability > Understandability and Readability + Users need to understand the system to use it. The basic metaphor should be understandable and appropriate to user tasks. Some defects in understandability include unclear metaphors, poor or hard-to-see @@ -355,6 +404,7 @@ labels, lack of feedback to confirm the effects of user actions, and missing or inadequate on-line help. #### Usability > Learnability and Memorability + Every user interface contains some details that users will need to learn and remember. E.g., Alt-F to open the "File" menu. UI cues and rules can make these details easier to learn and remember. E.g., the @@ -362,6 +412,7 @@ rules can make these details easier to learn and remember. E.g., the accelerator key. #### Usability > Task support + This is the quality of match between user tasks and the system's UI. Task support defects are cases where the system forces the user to take unnatural steps to accomplish a task or where the user is given @@ -370,6 +421,7 @@ invent an 8-character filename for their "Christmas card list"? E.g., must users total their own tax deductions? #### Usability > Efficiency + Users should be able to accomplish common tasks with reasonable effort. Common tasks should be possible with only one or two steps. The difficulty of each step should also be considered. @@ -377,12 +429,14 @@ E.g., does the user have to remember a long code number or click on a very small button? #### Usability > Safety + Humans are error-prone, but the negative effects of common errors should be limited. E.g., users should realize that a given command will delete data, and be asked to confirm their intent or have the option to undo. #### Usability > Consistency and Familiarity + Users should be able to apply their past experience from other similar systems. This means that user interface standards should be followed, and common conventions should be used whenever possible. @@ -390,15 +444,23 @@ Also, UI elements that appear in several parts of the UI should be used consistently, unless another UI quality takes priority. E.g., if most currency entry fields do not require a dollar-sign, then one that does demand it is a consistency defect, unless there is a real -chance that the user is dealing with another currency on that step +chance that the user is dealing with anoD-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM in his/her task. -#### Usability > Subjective satisfaction +#### Usability > Subjective satisfactionD-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM + Users should feel generally satisfied with the UI. This is a subjective quality that sums up the other user interface qualities as well as aesthetics. #### Security + The system should allow usage only by authorized users, and restrict usage based on permissions. The system should not allow users to side-step security rule or exploit security holes. E.g., all user @@ -406,31 +468,46 @@ input should be validated and any malicious input should be rejected. #### Reliability > Consistency under load -Every system has some capacity limits. What happens when those -limits are exceeded? The system should never lose or corrupt data. - +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM #### Reliability > Consistency under concurrency + Systems that allow concurrent access by multiple users, or that use concurrency internally, should be free of race conditions and deadlock. #### Reliability > Availability under load + Every system has some capacity limits. What happens when those limits are exceeded? The system should continue to service those -requests that it is capable of handling. It should not crash or stop +requests that it is capable of handling. It should not crash or sD-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM processing all requests. #### Reliability > Longevity -The system should continue to operate as long as it is needed. It -should not gradually use up a limited resource. Example longevity + +The system should continue to operate as long as it is needed. ItD-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM +should not gradually use up a limited resource. Example longevityD-DIAGRAM +D-DIAGRAM +D-DIAGRAM +D-DIAGRAM defects include memory leaks or filling the disk with log files. #### Efficiency + The system's operations should execute quickly, with reasonable use of machine and network resources. E.g., if one user does one operation, it should execute efficiently. #### Scalability + Scalability is a general quality that holds when the system continues to satisfy its requirements when various usage parameters are increased. E.g., a file server might be scalable to a high @@ -438,11 +515,13 @@ number of users, or to very large files or very high capacity disks. Several specific scalability goals are listed below. #### Scalability > Performance under load + This is a specific type of scalability goal dealing with the performance of the system at times when it is servicing many requests from many users. #### Scalability > Large data volume + This is a specific type of scalability goal dealing with the ability for the system to handle large data sets. Operations should continue to be correct and efficient as data set size increases. Furthermore, @@ -450,6 +529,7 @@ the user interface should still be usable as the data presented to users increases in length. #### Operability + The long-term needs of system administrators should be reliably supported. E.g., is the system easy to install? Can the administrator recover from a crash? Is there sufficient log output @@ -457,13 +537,16 @@ to diagnose problems in the field? Can the system's data be backed up without downtime? Can the system be upgraded practically? #### Maintainability > Understandability + Will it be easy for (future) developers to understand how the system works? #### Maintainability > Evolvability + Can the system easily be modified and extended over time? #### Maintainability > Testability + Can the system easily be tested? Do the requirements precisely specify possible inputs and the desired results? Can the system be tested in parts? When failures are observed, can they be traced back diff --git a/Glossary.md b/Glossary.md index 1c1e237..f086480 100644 --- a/Glossary.md +++ b/Glossary.md @@ -7,7 +7,7 @@ new team members to be productive. Jump to: [A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [G](#g) | [H](#g) | [I](#i) | [J](#j) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p) | [Q](#q) | [R](#r) | [S](#s) | [T](#t) | -[U](#u) | [V](#v) | [W](#w) | [X](#x) | [Y](#y) | [Z](#z) | +[U](#u) | [V](#v) | [W](#w) | [X](#x) | [Y](#y) | [Z](#z) | [Standard terms](glossary-std.html#standard_terms) ### Project-specific Terms @@ -33,13 +33,11 @@ Jump to: [A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | [GPA](#gpa).* #### A -  #### B -  #### C -  + ##### ::Class standing - ::Computed attribute of [student](#student) based on number of @@ -55,15 +53,16 @@ Jump to: [A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [F](#f) | | ::Senior | ::More than 270 units completed | #### D -  #### G -  + ##### ::GEF + ::*n.* The [Graph Editing Framework](http://gef.tigris.org/). An open source library for editing diagrams (boxes and arrows). ##### ::GPA + ::*n.* Grade Point Average. GPA is a float between 0.00 and 4.00, accurate to 2 decimal places. Computed from average of completed course grades in transcript weighted by course units. Used to @@ -71,37 +70,44 @@ determine student ranking, and to trigger Dean's List and academic probation. #### I -  + ##### ::ICS + ::*n.* Acronym for the [School of Information and Computer Science](http://www.ics.uci.edu/) at [UC Irvine](http://www.uci.edu/). #### S -  + ##### ::Student + ::*n.* A person who attends a school to earn a degree. Persistent attributes include: student\_id\_number (primary key), GPA, major, and years\_at\_school. ##### ::Senior + ::*n.* A senior is special type of [undergraduate](#undergraduate) who has a certain number of course credits on his or her transcript. Years\_at\_school does not determine senior standing. TODO: how many credits needed? #### T -  -##### ::Term1 + +##### ::Term1D-DIAGRAM + ::Definition1 ##### ::Term2 + - ::Definition2a - ::Definition2b ##### ::Term3 + ::Definition3 #### U -  + ##### ::Undergraduate + ::A type of [student](#student). *TODO: add more detail.* diff --git a/Home.md b/Home.md index ccc7f79..c7d0e70 100644 --- a/Home.md +++ b/Home.md @@ -1,19 +1,25 @@ ### Mission and Scope + *TODO: Answer these questions in your own words by filling in each* #### What problem does this project address? + ::2-4 SENTENCE PROBLEM #### What is the goal of this project? + ::2-4 SENTENCE GOAL #### What is the scope of this project? + ::2-4 SENTENCE SCOPE #### What development methodology is being used? + ::See our [software development methodology](sdm) document. #### Where should a new team member start? + ::For more information, see the [project proposal](Proposal). ### Status diff --git a/Implementation-Notes.md b/Implementation-Notes.md index 07bfd6d..ddbc778 100644 --- a/Implementation-Notes.md +++ b/Implementation-Notes.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) ##### Release(s): ::X.Y.Z -##### Related Documents: +##### Related Documents - [Software Requirements Specification](SRS) - [Release notes](Release-Notes) - [FAQ](FAQ) @@ -82,7 +82,7 @@ These objects may be referred to by name in the sections below.* #### Configuration Files -- ::PRODUCTNAME.conf: stores application configuration in Java properties file format. +- ::PRODUCT-NAME.conf: stores application configuration in Java properties file format. - ::Section of httpd.conf: configures components of the Apache webserver #### Database Table @@ -95,17 +95,17 @@ These objects may be referred to by name in the sections below.* #### Data Files - ::*.ext: Data files saved by the user on their local hard disk. -- ::/var/PRODUCTNAME/upload-XXXX.dat: Files uploaded to the server. +- ::/var/PRODUCT-NAME/upload-XXXX.dat: Files uploaded to the server. #### Temporary Files -- ::/tmp/PRODUCTNAME.pid: Process ID of the currently running server process. +- ::/tmp/PRODUCT-NAME.pid: Process ID of the currently running server process. - ::/tmp/upload-XXXX.dat: Files uploaded to the server before they are processed. #### Log Files - ::error.log: Serious errors are put in the normal Apache error log. Must be writable by Unix user httpd. -- ::PRODUCTNAME.log: Messages indicating the progress of normal operations and some errors. Must be writable by Unix user httpd. +- ::PRODUCT-NAME.log: Messages indicating the progress of normal operations and some errors. Must be writable by Unix user httpd. - ::Log files are rotated nightly. Old logs are archived in ANOTHER LOCATION. ### Implementation of Specific Features @@ -116,16 +116,16 @@ impact the work of other groups. E.g., long-running operations that must not be interrupted. E.g., start up or shutdown scripts that are automatically run by the operating system.* -- ::Feature name: 1-3 SENTENCE DESCRIPTION -- ::Feature name: 1-3 SENTENCE DESCRIPTION -- ::Feature name: 1-3 SENTENCE DESCRIPTION - - ::DETAILS - - ::DETAILS - - ::DETAILS -- ::Feature name: 1-3 SENTENCE DESCRIPTION - - ::DETAILS - - ::DETAILS - - ::DETAILS +- ::Feature name: 1-3 SENTENCE DESCRIPTION +- ::Feature name: 1-3 SENTENCE DESCRIPTION +- ::Feature name: 1-3 SENTENCE DESCRIPTION + - ::DETAILS + - ::DETAILS + - ::DETAILS +- ::Feature name: 1-3 SENTENCE DESCRIPTION + - ::DETAILS + - ::DETAILS + - ::DETAILS ### Operational Procedures @@ -133,30 +133,37 @@ automatically run by the operating system.* engineers when the system is being run in an ASP production environment.* #### Install + ::See the [installation guide](Installation-Guide) #### Upgrade + ::See the [installation guide](Installation-Guide) #### Start Server + 1. ::STEP 1 2. ::STEP 2 3. ::STEP 3 #### Stop Server + 1. ::STEP 1 2. ::STEP 2 -3. ::STEP 3 +3. ::STEP 3D-DIAGRAM #### Reload Config Files + 1. ::STEP 1 2. ::STEP 2 3. ::STEP 3 #### Monitor Activity -::Watch the PRODUCTNAME.log and error.log. + +::Watch the PRODUCT-NAME.log and error.log. #### Periodic Cleanup + ::On rare occasion, /tmp/upload-XXXX.dat files can be left behind. Any such files that are more than a day old can safely be removed. ### Security @@ -165,11 +172,13 @@ engineers when the system is being run in an ASP production environment.* system secure while it is in operation.* We take the following precautions to make the system secure + - ::STEP - ::STEP - ::STEP The security of the system depends on the following external factors + - ::STEP - ::STEP - ::STEP diff --git a/Installation-Guide.md b/Installation-Guide.md index f9f4f69..73de2a3 100644 --- a/Installation-Guide.md +++ b/Installation-Guide.md @@ -3,17 +3,21 @@ information.* ##### Product: + ::PRODUCT-NAME ##### Release Number: + ::X.Y.Z ##### Release Date: + ::YEAR/MONTH/DAY ##### Customer Support: + :: For more information or support, please visit our -[website](http://www.COMPANY.com/products/PRODUCTNAME/) or +[website](http://www.COMPANY.com/products/PRODUCT-NAME/) or email us at --- @@ -37,6 +41,7 @@ rather than end-user applications, you should include information on needed development and bugging tools, e.g., Ant and JUnit.* #### What other software must be installed first? + ::Before you can install this product, you must install the following packages: @@ -46,6 +51,7 @@ packages: - ::[OTHER PACKAGES](http://) #### How do I install PRODUCT-NAME? + :: Please follow these steps 1. ::STEP @@ -55,7 +61,7 @@ packages: 4. ::STEP #### How can I uninstall PRODUCT-NAME? - + 1. ::STEP 2. ::STEP - ::SUB-STEP @@ -63,6 +69,7 @@ packages: 4. ::STEP #### What if I encounter problems? + ::Please see the troubleshooting section in the [FAQ](FAQ). ### Getting Started @@ -77,7 +84,7 @@ components, include instructions on running unit tests.* 2. :Run unit tests by typing "ant test" - ::A brief report will be shown on the console - ::A detailed test report for any failed tests will be - in build/testout. + in build/test-out. #### ::How can I quickly get started using PRODUCT-NAME? diff --git a/Interview-Checklist.md b/Interview-Checklist.md index 20559cc..7c868f8 100644 --- a/Interview-Checklist.md +++ b/Interview-Checklist.md @@ -1,4 +1,4 @@ -##### Related documents: +##### Related Documents - [User Needs](User-Needs) - [Interview Notes](interview-notes.html) --- diff --git a/Interview-Notes.md b/Interview-Notes.md index 1edcaa3..afc20b7 100644 --- a/Interview-Notes.md +++ b/Interview-Notes.md @@ -1,22 +1,29 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project -##### Interviewer(s): -::PERSONNAME +::[PROJECT-NAME](Home) -##### Interviewee(s): -::PERSONNAME +##### Interviewer(s) + +::PERSON-NAME + +##### Interviewee(s) + +::PERSON-NAME + +##### Date of Interview -##### Date of Interview: ::DATE -##### Interview Location: +##### Interview Location + ::LOCATION -##### Related Documents: +##### Related Documents + - [Project proposal](Proposal) > [Target audience and benefits](Target-and-Benefits) - [Interview checklist](Interview-Checklist) - [Glossary](Glossary) + --- *TODO: Copy this file once for each interview. Fill in the details. Link @@ -36,27 +43,35 @@ type up the answers you received and any additional questions and answers, and any new follow-up questions.* #### ::How did you learn about the need for this product? + ::ANSWER #### ::What types of users are likely to use this product? + ::ANSWER #### ::Can you give an example of how a user might actually use the product? + ::ANSWER #### ::Is there any risk or downside to using the product? + ::ANSWER #### ::QUESTION1 + ::ANSWER1 #### ::QUESTION2 + ::ANSWER2 #### ::QUESTION3 + ::ANSWER3 #### QUESTION4 + ::ANSWER4 ### New Questions and Action Items @@ -67,8 +82,7 @@ Note these new questions and what you must do to find the answer.* - ::Can we do X? - ::Do we support Y? - ::Action item: research topic Z -- ::Action item: Send follow-up email as per -[post-interview checklist](Interview-Checklist#post-interview-checklist) +- ::Action item: Send follow-up email as per [post-interview checklist](Interview-Checklist#post-interview-checklist) - ::Action item: prepare for next interview with PERSON(S) on DATE ### Other Interview Notes diff --git a/Legal.md b/Legal.md index f5c6a92..715851e 100644 --- a/Legal.md +++ b/Legal.md @@ -1,7 +1,7 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z ##### Release Audience: @@ -13,7 +13,7 @@ ##### Intended Product License: ::Commercial license -##### Related Documents: +##### Related Documents - [Project proposal](Proposal) > [Target audience and benefits](Target-and-Benefits) - [Project Plan](Project-Plan) > [Resource needs](Resource-Needs) - [Glossary](Glossary) diff --git a/Project-Plan.md b/Project-Plan.md index 996be81..361c3f5 100644 --- a/Project-Plan.md +++ b/Project-Plan.md @@ -1,13 +1,16 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project + +::[PROJECT-NAME](Home) ##### Project Time-frame: -::STARTDATE - ENDDATE + +::START-DATE - END-DATE ##### Attached worksheets: + - Plan > [Resource Needs](Resource-Needs) -##### Related Documents: +##### Related Documents - [Project Proposal](Proposal) > [Target audience and benefits](Target-and-Benefits) - [Software development methodology](SDM) @@ -24,6 +27,7 @@ project. needed. Use the worksheet to help identify and scope resource needs.* ### Summary of Project + #### What are the business problem, scope, and goal of this project? For a summary of this project, see the [Project proposal](Proposal). diff --git a/Proposal.md b/Proposal.md index 43df256..da70be1 100644 --- a/Proposal.md +++ b/Proposal.md @@ -1,18 +1,24 @@ -##### Project: - ::[PROJECTNAME](Home) +##### Project + +::[PROJECT-NAME](Home) ##### Project Time-frame: - ::2003/1/16 to 2003/3/19 + +::2003/1/16 to 2003/3/19 ##### Summary: - ::2-4 SENTENCE SUMMARY + +::2-4 SENTENCE SUMMARY ##### Attached Worksheets: - Project Proposal > [Target audience and benefits](Target-and-Benefits) -##### Related Documents: +Project Proposal > [Target audience and benefits](Target-and-Benefits) + +##### Related Documents + - [Project plan](Project-Plan) > [Resource needs](Resource-Needs) - [Glossary](Glossary) + --- **Process impact:** This proposal, along with drafts of related @@ -92,7 +98,7 @@ those advantages. #### Where is there more information on this problem? ::The following pages provide additional background and motivation: - + - ::[Magazine article on this topic](#) - ::[Industry analysis's report on massive-multi-player game market](#) - ::[Quotes from game players](#) @@ -210,5 +216,5 @@ over time. ### Project Plan -See attached draft of [project plan](Project-Plan) and -[resource needs](Resource-Needs). +See attached draft of [project plan](Project-Plan) +and [resource needs](Resource-Needs). diff --git a/QA-Plan.md b/QA-Plan.md index f3221a4..5a5c9ed 100644 --- a/QA-Plan.md +++ b/QA-Plan.md @@ -2,10 +2,10 @@ questions. In cases where multiple answers are already written, delete those answers that do not apply.* -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number:: +##### Internal Release Number: ::X.Y.Z ##### Release Audience: @@ -19,7 +19,7 @@ those answers that do not apply.* - QA plan > [System test case suite](Test-Suite) - QA plan > [System test runs](Test-Run-Suite) -##### Related Documents: +##### Related Documents - [Software Requirements Specification](SRS) - [Design](Design) - [Project plan](Project-Plan) diff --git a/Release-Checklist.md b/Release-Checklist.md index 1b1c552..0a35447 100644 --- a/Release-Checklist.md +++ b/Release-Checklist.md @@ -2,10 +2,10 @@ questions. In cases where multiple answers are already written, delete those answers that do not apply.* -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z ##### External release number: diff --git a/Release-Notes.md b/Release-Notes.md index 0af3624..5cfdc53 100644 --- a/Release-Notes.md +++ b/Release-Notes.md @@ -5,7 +5,7 @@ information.* number, not internal information.* ##### Product: -::[PRODUCTNAME](http://www.COMPANY.com/products/PRODUCTNAME/) +::[PRODUCT-NAME](http://www.COMPANY.com/products/PRODUCT-NAME/) ##### Release Number: ::X.Y.Z @@ -14,14 +14,14 @@ number, not internal information.* ##### Customer Support: ::For more information or support, please visit our -[website](http://www.COMPANY.com/products/PRODUCTNAME/) or email us +[website](http://www.COMPANY.com/products/PRODUCT-NAME/) or email us at --- ### Introduction -::This document contains the release notes for PRODUCTNAME version X.Y.Z. +::This document contains the release notes for PRODUCT-NAME version X.Y.Z. The following sections describe the release in detail and provide late-breaking or other information that supplements the main documentation. @@ -37,7 +37,7 @@ best product possible. ::This is an early access release for wide evaluation and usage. Your feedback is important to us, please help us make this the best product -possible. Keep in mind that we are continuing to work on PRODUCTNAME and +possible. Keep in mind that we are continuing to work on PRODUCT-NAME and things may change in the future. ::This is the first full release of this product. See the product website diff --git a/Resource-Needs.md b/Resource-Needs.md index 538e7f1..26e5d58 100644 --- a/Resource-Needs.md +++ b/Resource-Needs.md @@ -1,13 +1,13 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z ##### Project Time-frame: -::STARTDATE - ENDDATE +::START-DATE - END-DATE -##### Related Documents: +##### Related Documents - [Project proposal](Proposal) - [Project plan](Project-Plan) - [QA plan](QA-Plan) @@ -30,22 +30,22 @@ documents.* | Need | Resource | Amount | Status | Comments/Responsibilities | |-------------------------------------------|--------------------------------------|------------|------------|---------------------------| -| ::Project Management | ::PERSONNAME | ::20 hours | ::Pending | | -| ::Requirements | ::PERSONNAME | ::20 hours | ::Assigned | | -| ::Requirements | ::PERSONNAME, PERSONNAME, PERSONNAME | ::10 hours | ::Assigned | | -| ::Consultation with domain expert | ::PERSONNAME | ::2 hours | ::Pending | | -| ::Consultation with topic expert | ::PERSONNAME | ::4 hours | ::Pending | | -| ::Training on use of component/technology | ::PERSONNAME | ::8 hours | ::Assigned | | -| ::Overall Design | ::PERSONNAME, PERSONNAME, PERSONNAME | ::20 hours | ::Assigned | | -| ::Detailed UI Design | ::PERSONNAME | ::5 hours | ::Pending | | -| ::Detailed Database Design | ::PERSONNAME | ::5 hours | ::Pending | | -| ::Development | ::PERSONNAME, PERSONNAME, PERSONNAME | ::40 hours | ::Assigned | | -| ::Development | ::PERSONNAME, PERSONNAME | ::80 hours | ::Assigned | | -| ::Development | ::PERSONNAME | ::20 hours | ::Pending | | -| ::Technical writing | ::PERSONNAME, PERSONNAME | ::10 hours | ::Assigned | | -| ::QA Planning | ::PERSONNAME | ::10 hours | ::Assigned | | -| ::QA Testing | ::PERSONNAME, PERSONNAME, PERSONNAME | ::40 hours | ::Assigned | | -| ::Release Engineering | ::PERSONNAME | ::4 hours | ::Assigned | | +| ::Project Management | ::PERSON-NAME | ::20 hours | ::Pending | | +| ::Requirements | ::PERSON-NAME | ::20 hours | ::Assigned | | +| ::Requirements | ::PERSON-NAME, PERSON-NAME, PERSON-NAME | ::10 hours | ::Assigned | | +| ::Consultation with domain expert | ::PERSON-NAME | ::2 hours | ::Pending | | +| ::Consultation with topic expert | ::PERSON-NAME | ::4 hours | ::Pending | | +| ::Training on use of component/technology | ::PERSON-NAME | ::8 hours | ::Assigned | | +| ::Overall Design | ::PERSON-NAME, PERSON-NAME, PERSON-NAME | ::20 hours | ::Assigned | | +| ::Detailed UI Design | ::PERSON-NAME | ::5 hours | ::Pending | | +| ::Detailed Database Design | ::PERSON-NAME | ::5 hours | ::Pending | | +| ::Development | ::PERSON-NAME, PERSON-NAME, PERSON-NAME | ::40 hours | ::Assigned | | +| ::Development | ::PERSON-NAME, PERSON-NAME | ::80 hours | ::Assigned | | +| ::Development | ::PERSON-NAME | ::20 hours | ::Pending | | +| ::Technical writing | ::PERSON-NAME, PERSON-NAME | ::10 hours | ::Assigned | | +| ::QA Planning | ::PERSON-NAME | ::10 hours | ::Assigned | | +| ::QA Testing | ::PERSON-NAME, PERSON-NAME, PERSON-NAME | ::40 hours | ::Assigned | | +| ::Release Engineering | ::PERSON-NAME | ::4 hours | ::Assigned | | ### Capital Needs diff --git a/Review-Meeting-Notes.md b/Review-Meeting-Notes.md index ba01c8a..1817fc4 100644 --- a/Review-Meeting-Notes.md +++ b/Review-Meeting-Notes.md @@ -1,5 +1,5 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) ##### Release Number: ::X.Y.Z @@ -12,12 +12,12 @@ ##### Attendees: -- ::PERSONNAME -- ::PERSONNAME -- ::PERSONNAME -- ::PERSONNAME +- ::PERSON-NAME +- ::PERSON-NAME +- ::PERSON-NAME +- ::PERSON-NAME -##### Related documents: +##### Related Documents - [QA Plan](QA-Plan) > Review Meeting Notes - [Review Meeting Checklists](Review-Meeting-Checklists) @@ -27,9 +27,9 @@ - ::[Feature list section of requirements](#) - ::[Multi-user section of requirements](#) -- ::[Hello.java](/source/browse/PROJECTNAME/src/Hello.java) -- ::[HelloStream.java](/source/browse/PROJECTNAME/src/HelloStream.java) -- ::[HelloPanel.java](/source/browse/PROJECTNAME/src/HelloPanel.java) +- ::[Hello.java](/source/browse/PROJECT-NAME/src/Hello.java) +- ::[HelloStream.java](/source/browse/PROJECT-NAME/src/HelloStream.java) +- ::[HelloPanel.java](/source/browse/PROJECT-NAME/src/HelloPanel.java) ### Meeting Minutes diff --git a/Risks.md b/Risks.md index 5809ffc..fb5df03 100644 --- a/Risks.md +++ b/Risks.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) ##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Project plan](Project-Plan) - [Software development methodology](SDM) @@ -30,73 +30,73 @@ plans to control them. For each risk the plan should include: contingency plan if you have a special one for the particular risk. The severity of a risk is its likel -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---ihood multiplied by its impact. Risks are classified as minor if they hav -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---e low likelihood, negligible impact, or medium likelihood and marginal i -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---mpact. -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) --- *TODO: You should update these list -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---s regularly. They should be reviewed by customers and developers from ti -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) @@ -152,100 +152,100 @@ impact of a risk has increased to make it a "major" risk.* | ::Estimate | The development team might not be able to estimate the work time, preventing customers from deciding priorities effectively. | Medium | Marginal | The development team will gain experience in estimating the work, and deliver the first estimates after 12 months. We will compare estimated work to actual work. | Green | Project Manager | | ::Retention | Some developers may leave the project before it is finished. | Medium | Marginal | Employing locations should provide support for continuing professional development. The project manager will discuss career goals with each developer, and try to assign tasks appropriately. | Green | Project Manager | | ::Correctness | The system as delivered may have low take-up because of a lack of confidence in its correctness. | Low | Catastrophic | State of the art [QA activity](QA-Plan). Contingency: stop development of new facilities until the quality of the existing code is assured. | Green | QA Lead -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) --- | | ::Usability | The system as -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) --- delivered may have low take-up because of poor usability. -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) --- | Low -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) --- | Critical | We will have a UI style guide. Most of the development of the front end will be in close contact with customers. We will review usability later in the project. | Green | UI design lead | | ::Desire | The stated requirements might not match the customers' desires and ambitions for the system. | Low | Critical | Incremental delivery of versions will provide experience of using the system, which will help the customers to identify the real requirements. Indicator: a developer saying "I think they mean ...", a customer saying "They know what I mean". Contingency: request customer review of requirements. | Green | Customers | | ::Changes | After requirements have been documented and agreed, development activities begin to based on them, first design then implementation. If the requirements change later then effort is wasted. | Low | Critical | A change control procedure is required, so changes are only made when the cost is worthwhile. Indicator: compare cost of change t -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---o new development. Contingency: request customer review of requirements. -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) --- | Green | P -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---roject Manager | | ::Process | Some develope -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) ---rs may not cooperate in common standards and processes. | Low | Critical | QA to check conformance, then discussions in development team meetings to change the standard or the actual practice as appropriate. | Green | QA Lead | | ::Maintainability | The system as delivered might be hard to maintain. | Low | Marginal | We will review the code for maintainability. | Green | Lead Developer | -| ::RISKNAME | ONE-TO-THREE-SENTENCES | Low or Medium or High | Negligible or Marginal or Critical or Catastrophic | ONE-TO-THREE-SENTENCES | Red or Amber or Green | PERSONNAME | +| ::RISKNAME | ONE-TO-THREE-SENTENCES | Low or Medium or High | Negligible or Marginal or Critical or Catastrophic | ONE-TO-THREE-SENTENCES | Red or Amber or Green | PERSON-NAME | #### Possible risk status values diff --git a/SRS.md b/SRS.md index 09233b8..ed76206 100644 --- a/SRS.md +++ b/SRS.md @@ -1,14 +1,14 @@ -##### Project: -::PROJECTNAME +##### Project +::PROJECT-NAME -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z ##### Attached worksheets: - SRS > [Use case suite](Use-Case-Suite) - SRS > [Feature set](Feature-Set) -##### Related Documents: +##### Related Documents - [Project proposal](Proposal) > [User needs](User-Needs) - ::LINKS TO RELEVANT STANDARDS - ::LINKS TO OTHER DOCUMENTS diff --git a/Status-Report.md b/Status-Report.md index 09479fc..455e599 100644 --- a/Status-Report.md +++ b/Status-Report.md @@ -5,8 +5,8 @@ available.* *TODO: Edit the rows in the following table. In some rows, multiple examples are given, you should select/edit only one.* -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) ##### Status Report Date: ::YEAR/MONTH/DAY @@ -34,10 +34,10 @@ examples are given, you should select/edit only one.* - ::[3 enhancements]() ##### Resources used this period: -- ::PERSONNAME: 18 hours. -- ::PERSONNAME: 15 hours. -- ::PERSONNAME: 10 hours. -- ::PERSONNAME: 12 hours. +- ::PERSON-NAME: 18 hours. +- ::PERSON-NAME: 15 hours. +- ::PERSON-NAME: 10 hours. +- ::PERSON-NAME: 12 hours. ##### Status Summary: - ::Project completed. This is the final status report. @@ -46,8 +46,8 @@ examples are given, you should select/edit only one.* - ::High risk. Advice from management and stakeholders needed. - ::Project canceled. This is the final status report. -##### Related Documents: -- [Project plan](Project-Plan) > [Resource needs](Resource-Needs) +##### Related Documents +- [Project plan](Project-Plan) > [Resource needs](Resource-Needs) - [QA plan](QA-Plan) - [Glossary](Glossary) --- diff --git a/Target-and-Benefits.md b/Target-and-Benefits.md index fc64586..7d8c90d 100644 --- a/Target-and-Benefits.md +++ b/Target-and-Benefits.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [Proposal](Proposal) > Target Audience and Benefits - [Project proposal](Proposal) > [User needs](User-Needs) - [Glossary](Glossary) @@ -69,7 +69,7 @@ products. Benefits to the development organization should be listed in [Risks and Rewards](Project-Plan#risk-management).* *TIP: If you can rank benefits by value, use numbered lists (the HTML -<ol> tag), otherwise use bullet lists (the HTML <ul> tag).* +<ol> tag), otherwise use bullet lists (the HTML <ul> tag).* - ::Increases play-value - ::Many players enjoy games more when they play as a team. diff --git a/Test-Case-Format.md b/Test-Case-Format.md index 50a2645..44001f2 100644 --- a/Test-Case-Format.md +++ b/Test-Case-Format.md @@ -1,5 +1,5 @@ -##### Related Documents: +##### Related Documents - [QA Plan](QA-Plan) > [Test Suite](Test-Suite) > Test Case Format --- diff --git a/Test-Cases.md b/Test-Cases.md index 3ed93c1..2b4fcd3 100644 --- a/Test-Cases.md +++ b/Test-Cases.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents [QA Plan](QA-Plan) > [Test Suite](Test-Suite) > Test Cases [System test case format](Test-Case-Format) ::LINKS TO RELEVANT STANDARDS diff --git a/Test-Run-Suite.md b/Test-Run-Suite.md index 8078d38..3e3458c 100644 --- a/Test-Run-Suite.md +++ b/Test-Run-Suite.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [QA Plan](QA-Plan) > Test Run Suite - [Test suite](Test-Suite) - ::LINKS TO RELEVANT STANDARDS diff --git a/Test-Runs.md b/Test-Runs.md index 500a12f..284e475 100644 --- a/Test-Runs.md +++ b/Test-Runs.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [QA Plan](QA-Plan) > [Test Run Suite](Test-Run-Suite) > Test Runs - [Test suit](Test-Suite) - ::LINKS TO RELEVANT STANDARDS diff --git a/Test-Suite.md b/Test-Suite.md index 98a4679..3e26aa2 100644 --- a/Test-Suite.md +++ b/Test-Suite.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [QA Plan](QA-Plan) > Test Suite - [Test case format](Test-Case-Format) - ::LINKS TO RELEVANT STANDARDS diff --git a/Use-Case-Suite.md b/Use-Case-Suite.md index ea19822..e3b48d0 100644 --- a/Use-Case-Suite.md +++ b/Use-Case-Suite.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [SRS](SRS) > Use Case Suite - [Project proposal](Proposal) > [User needs](User-Needs) - [SRS](SRS) > [Feature set](Feature-Set) diff --git a/Use-Cases.md b/Use-Cases.md index 56e1aa9..0e1ef72 100644 --- a/Use-Cases.md +++ b/Use-Cases.md @@ -1,16 +1,16 @@ -##### Project: -::PROJECTNAME +##### Project +::PROJECT-NAME -##### Internal Release Number: +##### Internal Release Number ::X.Y.Z -##### Related Documents: +##### Related Documents - [SRS](SRS) > [Use Case Suite](Use-Case-Suite) > Use Cases -- [Project proposal](Proposal) > [User needs](User-Needs), [SRS](SRS) > [Feature set](Feature-Set) -- [Use case format](Use-Case-Format) -- ::LINK TO USE CASE DIAGRAM -- ::LINKS TO RELEVANT STANDARDS -- ::LINKS TO OTHER DOCUMENTS +- [Project proposal](Proposal) > [User needs](User-Needs), [SRS](SRS) > [Feature set](Feature-Set) +- [Use case format](Use-Case-Format) +- ::LINK TO USE CASE DIAGRAM +- ::LINKS TO RELEVANT STANDARDS +- ::LINKS TO OTHER DOCUMENTS --- *TODO: Note any aspects that are common to all use cases here. This helps @@ -21,10 +21,10 @@ note it's specific value to replace or add to the default.* **Direct Actors:** -- ::User: end-user in any role -- ::System: The system being built -- ::When actors are not listed, assume User is doing it. -- ::Items beginning with "see" indicate that System has presented a new screen. +- ::User: end-user in any role +- ::System: The system being built +- ::When actors are not listed, assume User is doing it. +- ::Items beginning with "see" indicate that System has presented a new screen. **Stakeholders:** diff --git a/User-Guide.md b/User-Guide.md index 8c726c5..e07478f 100644 --- a/User-Guide.md +++ b/User-Guide.md @@ -3,7 +3,7 @@ information.* ##### Product: -::[PRODUCTNAME](http://www.COMPANY.com/products/PRODUCTNAME/) +::[PRODUCT-NAME](http://www.COMPANY.com/products/PRODUCT-NAME/) ##### Release Number: ::X.Y.Z @@ -13,7 +13,7 @@ information.* ##### Customer Support: ::For more information or support, please visit our -[website](http://www.COMPANY.com/products/PRODUCTNAME/) or email +[website](http://www.COMPANY.com/products/PRODUCT-NAME/) or email us at --- diff --git a/User-Needs.md b/User-Needs.md index 96f7c67..d492374 100644 --- a/User-Needs.md +++ b/User-Needs.md @@ -1,10 +1,10 @@ -##### Project: -::[PROJECTNAME](Home) +##### Project +::[PROJECT-NAME](Home) ##### Attached worksheets: - User needs > [Interview notes](interview-notes.html) -##### Related Documents: +##### Related Documents - [Project proposal](Proposal) > [Target audience and benefits](Target-and-Benefits) - [Software requirements specification](SRS) - [Glossary](Glossary) @@ -190,7 +190,7 @@ website and join. (Source: [INTERVIEWEE](interview-notes.html)) :: Bob is visiting his friend. He tries to use his friend's computer to log onto the RedDawn SuperShooter tournament. But, he does not remember the exact name of the server. So, he visits the RedDawn -clan website to find that information. (Source: PERSONNAME) +clan website to find that information. (Source: PERSON-NAME) #### STORYNAME1 :: PARAGRAPH diff --git a/_Footer.md b/_Footer.md index 899a663..c81bc76 100644 --- a/_Footer.md +++ b/_Footer.md @@ -1,5 +1,5 @@ ::Your-Organization Proprietary - + Copyright 2003-2004 Jason Robbins. All rights reserved. [License terms](LICENSE). Retain this copyright statement whenever this file is used as a template. - + Find [Readyset GFM](https://github.com/bike-bill/readyset-gfm) on Github. \ No newline at end of file