Software Requirements SpecificationVersion 1.0<>April 15, 2004Web Publishing SystemJoan TeamleaderPaul AdamsBobbie BakerCharles CharlieSubmitted in partial fulfillmentOf the requirements ofCS 310 Software Engineering<Refer to the SRS Template for details on the purpose and rules for each section of this document. This work is based upon the submissions of the Spring 2004 CS 310. The students who submitted these team projects were Thomas Clay, Dustin Denney, Erjon Dervishaj, Tiffanie Dew, Blake Guice, Jonathan Medders, Marla Medders, Tammie Odom, Amro Shorbatli, Joseph Smith, Jay Snellen, Chase Tinney, and Stefanie Watts. >>Table of Contents TOC \o "1-4" \z HYPERLINK \l "_Toc77487619" Table of Contents 77487619 i HYPERLINK \l "_Toc77487620" List of Figures 77487620 ii HYPERLINK \l "_Toc77487621" 1.0. Introduction 77487621 1 HYPERLINK \l "_Toc77487622" 1.1. Purpose 77487622 1 HYPERLINK \l "_Toc77487623" 1.2. Scope of Project 77487623 1 HYPERLINK \l "_Toc77487624" 1.3. Glossary 77487624 2 HYPERLINK \l "_Toc77487625" 1.4. References 77487625 2 HYPERLINK \l "_Toc77487626" 1.5. Overview of Document 77487626 2 HYPERLINK \l "_Toc77487627" 2.0. Overall Description 77487627 4 HYPERLINK \l "_Toc77487628" 2.1 System Environment 77487628 4 HYPERLINK \l "_Toc77487629" 2.2 Functional Requirements Specification 77487629 5 HYPERLINK \l "_Toc77487630" 2.2.1 Reader Use Case 77487630 5 HYPERLINK \l "_Toc77487631" Use case: Search Article 77487631 5 HYPERLINK \l "_Toc77487632" 2.2.2 Author Use Case 77487632 6 HYPERLINK \l "_Toc77487633" Use case: Submit Article 77487633 6 HYPERLINK \l "_Toc77487634" 2.2.3 Reviewer Use Case 77487634 7 HYPERLINK \l "_Toc77487635" Use case: Submit Review 77487635 7 HYPERLINK \l "_Toc77487636" 2.2.4 Editor Use Cases 77487636 8 HYPERLINK \l "_Toc77487637" Use case: Update Author 77487637 8 HYPERLINK \l "_Toc77487638" Use case: Update Reviewer 77487638 9 HYPERLINK \l "_Toc77487639" Use case: Update Article 77487639 9 HYPERLINK \l "_Toc77487640" Use case: Receive Article 77487640 10 HYPERLINK \l "_Toc77487641" Use case: Assign Reviewer 77487641 11 HYPERLINK \l "_Toc77487642" Use case: Receive Review 77487642 11 HYPERLINK \l "_Toc77487643" Use case: Check Status 77487643 12 HYPERLINK \l "_Toc77487644" Use case: Send Response 77487644 12 HYPERLINK \l "_Toc77487645" Use case: Send Copyright 77487645 13 HYPERLINK \l "_Toc77487646" Use case: Remove Article 77487646 14 HYPERLINK \l "_Toc77487647" Use case: Publish Article 77487647 14 HYPERLINK \l "_Toc77487648" 2.3 User Characteristics 77487648 15 HYPERLINK \l "_Toc77487649" 2.4 Non-Functional Requirements 77487649 15 HYPERLINK \l "_Toc77487650" 3.0. Requirements Specification 77487650 17 HYPERLINK \l "_Toc77487651" 3.1 External Interface Requirements 77487651 17 HYPERLINK \l "_Toc77487652" 3.2 Functional Requirements 77487652 17 HYPERLINK \l "_Toc77487653" 3.2.1 Search Article 77487653 17 HYPERLINK \l "_Toc77487654" 3.2.2 Communicate 77487654 18 HYPERLINK \l "_Toc77487655" 3.2.3 Add Author 77487655 18 HYPERLINK \l "_Toc77487656" 3.2.4 Add Reviewer 77487656 19 HYPERLINK \l "_Toc77487657" 3.2.5 Update Person 77487657 19 HYPERLINK \l "_Toc77487658" 3.2.6 Update Article Status 77487658 20 HYPERLINK \l "_Toc77487659" 3.2.7 Enter Communication 77487659 20 HYPERLINK \l "_Toc77487660" 3.2.8 Assign Reviewer 77487660 21 HYPERLINK \l "_Toc77487661" 3.2.9 Check Status 77487661 21 HYPERLINK \l "_Toc77487662" 3.2.10 Send Communication 77487662 22 HYPERLINK \l "_Toc77487663" 3.2.11 Publish Article 77487663 22 HYPERLINK \l "_Toc77487664" 3.2.12 Remove Article 77487664 23 HYPERLINK \l "_Toc77487665" 3.3 Detailed Non-Functional Requirements 77487665 23 HYPERLINK \l "_Toc77487666" 3.3.1 Logical Structure of the Data 77487666 23 HYPERLINK \l "_Toc77487667" 3.3.2 Security 77487667 25 HYPERLINK \l "_Toc77487668" Index 77487668 26List of Figures TOC \z \c "Figure" HYPERLINK \l "_Toc77487669" Figure 1 - System Environment 77487669 4 HYPERLINK \l "_Toc77487670" Figure 2 - Article Submission Process 77487670 6 HYPERLINK \l "_Toc77487671" Figure 3 - Editor Use Cases 77487671 8 HYPERLINK \l "_Toc77487672" Figure 4 - Logical Structure of the Article Manager Data 77487672 231.0. Introduction1.1. Purpose The purpose of this document is to present a detailed description of the Web Publishing System XE "Web Publishing System" . It will explain the purpose and features of the system, the interfaces of the system, what the system will do, the constraints under which it must operate and how the system will react to external stimuli. This document is intended for both the stakeholders and the developers of the system and will be proposed to the Regional Historical Society XE "Historical Society" for its approval.1.2. Scope of ProjectThis software system will be a Web Publishing System XE "Web Publishing System" for a local editor XE "Editor" of a regional historical society. This system will be designed to maximize the editor’s productivity by providing tools to assist in automating the article XE "Article" review XE "Review" and publishing process, which would otherwise have to be performed manually. By maximizing the editor’s work efficiency and production the system will meet the editor’s needs while remaining easy to understand and use.More specifically, this system is designed to allow an editor XE "Editor" to manage and communicate with a group of reviewers XE "Reviewer" and authors XE "Author" to publish articles XE "Article" to a public website. The software will facilitate communication between authors, reviewers, and the editor via E-Mail. Preformatted reply forms XE "Form" are used in every stage of the articles’ progress through the system to provide a uniform review XE "Review" process; the location of these forms is configurable via the application’s maintenance options. The system also contains a relational database XE "Database" containing a list of Authors, Reviewers, and Articles.1.3. GlossaryTermDefinitionActive ArticleThe document that is tracked by the system; it is a narrative that is planned to be posted to the public website.AuthorPerson submitting an article to be reviewed. In case of multiple authors, this term refers to the principal author, with whom all communication is made.DatabaseCollection of all the information monitored by this system.EditorPerson who receives articles, sends articles for review, and makes final judgments for publications.FieldA cell within a form.Historical Society DatabaseThe existing membership database (also HS database).MemberA member of the Historical Society listed in the HS database.ReaderAnyone visiting the site to read articles.ReviewA written recommendation about the appropriateness of an article for publication; may include suggestions for improvement.ReviewerA person that examines an article and has the ability to recommend approval of the article for publication or to request that changes be made in the article.Software Requirements SpecificationA document that completely describes all of the functions of a proposed system and the constraints under which it must operate. For example, this document.StakeholderAny person with an interest in the project who is not a developer.UserReviewer or Author.1.4. ReferencesIEEE. IEEE Std 830-1998 IEEE Recommended Practice for Software Requirements Specifications. IEEE Computer Society, 1998.1.5. Overview of DocumentThe next chapter, the Overall Description section, of this document gives an overview of the functionality of the product. It describes the informal requirements and is used to establish a context for the technical requirements specification in the next chapter.The third chapter, Requirements Specification section, of this document is written primarily for the developers and describes in technical terms the details of the functionality of the product. Both sections of the document describe the same software product in its entirety, but are intended for different audiences and thus use different language.2.0. Overall Description2.1 System EnvironmentFigure SEQ Figure \* ARABIC 1 - System Environment The Web Publishing System XE "Web Publishing System" has four active actors and one cooperating system. The Author XE "Author" , Reader XE "Reader" , or Reviewer XE "Reviewer" accesses the Online Journal XE "Online Journal" through the Internet. Any Author or Reviewer communication with the system is through email. The Editor XE "Editor" accesses the entire system directly. There is a link to the (existing) Historical Society XE "Historical Society" .<< The division of the Web Publishing System XE "Web Publishing System" into two component parts, the Online Journal XE "Online Journal" and the Article XE "Article" Manager XE "Article Manager" , is an example of using domain classes to make an explanation clearer. >>2.2 Functional Requirements Specification This section outlines the use cases for each of the active readers XE "Reader" separately. The reader, the author XE "Author" and the reviewer XE "Reviewer" have only one use case apiece while the editor XE "Editor" is main actor in this system.2.2.1 Reader XE "Reader" Use CaseUse case: Search Article XE "Article" Diagram:Brief DescriptionThe Reader XE "Reader" accesses the Online Journal XE "Online Journal" Website, searches for an article XE "Article" and downloads it to his/her machine.Initial Step-By-Step DescriptionBefore this use case can be initiated, the Reader XE "Reader" has already accessed the Online Journal XE "Online Journal" Website.The Reader XE "Reader" chooses to search by author XE "Author" name, category XE "Category" , or keyword.The system displays the choices to the Reader XE "Reader" .The Reader XE "Reader" selects the article XE "Article" desired.The system presents the abstract XE "Abstract" of the article XE "Article" to the reader XE "Reader" .The Reader XE "Reader" chooses to download the article XE "Article" .The system provides the requested article XE "Article" .Xref: Section 3.2.1, Search Article XE "Article" Figure SEQ Figure \* ARABIC 2 - Article XE "Article" Submission ProcessThe Article XE "Article" Submission Process state-transition diagram summarizes the use cases listed below. An Author XE "Author" submits an article for consideration. The Editor XE "Editor" enters it into the system and assigns it to and sends it to at least three reviewers XE "Reviewer" . The Reviewers return their comments, which are used by the Editor to make a decision on the article. Either the article is accepted as written, declined, or the Author is asked to make some changes based on the reviews. If it is accepted, possibly after a revision , the Editor sends a copyright form XE "Form" to the Author. When that form is returned, the article is published to the Online Journal XE "Online Journal" . Not shown in the above is the removal of a declined article from the system. 2.2.2 Author XE "Author" Use CaseIn case of multiple authors XE "Author" , this term refers to the principal author, with whom all communication is made.Use case: Submit Article XE "Article" Diagram: Brief DescriptionThe author XE "Author" either submits an original article XE "Article" or resubmits an edited article.Initial Step-By-Step DescriptionBefore this use case can be initiated, the Author XE "Author" has already connected to the Online Journal XE "Online Journal" Website.The Author XE "Author" chooses the Email Editor XE "Editor" button. The System uses the sendto HTML tag to bring up the user XE "User" ’s email system.The Author XE "Author" fills in the Subject line and attaches the files as directed and emails them.The System generates and sends an email acknowledgement.Xref: Section 3.2.2, Communicate2.2.3 Reviewer XE "Reviewer" Use CaseUse case: Submit Review XE "Review" Diagram:Brief DescriptionThe reviewer XE "Reviewer" submits a review XE "Review" of an article XE "Article" .Initial Step-By-Step DescriptionBefore this use case can be initiated, the Reviewer XE "Reviewer" has already connected to the Online Journal XE "Online Journal" Website. The Reviewer XE "Reviewer" chooses the Email Editor XE "Editor" button. The System uses the sendto HTML tag to bring up the user XE "User" ’s email system.The Reviewer XE "Reviewer" fills in the Subject line and attaches the file as directed and emails it.The System generates and sends an email acknowledgement.Xref: Section 3.2.2, Communicate2.2.4 Editor XE "Editor" Use CasesThe Editor XE "Editor" has the following sets of use cases:Figure SEQ Figure \* ARABIC 3 - Editor XE "Editor" Use CasesUpdate XE "Update" Information use casesUse case: Update XE "Update" Author XE "Author" Diagram:Brief DescriptionThe Editor XE "Editor" enters a new Author XE "Author" or updates information about a current Author.Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the main page of the Article XE "Article" Manager XE "Article Manager" .The Editor XE "Editor" selects to Add XE "Add" /Update XE "Update" Author XE "Author" .The system presents a choice of adding or updating. The Editor XE "Editor" chooses to add XE "add" or to update XE "update" .If the Editor XE "Editor" is updating an Author XE "Author" , the system presents a list of authors to choose from and presents a grid XE "Grid" filling in with the information; else the system presents a blank grid.The Editor XE "Editor" fills in the information and submits the form XE "Form" .The system verifies the information and returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.3, Add XE "Add" Author XE "Author" ; Section 3.2.5 Update XE "Update" PersonUse case: Update XE "Update" Reviewer XE "Reviewer" Diagram:Brief DescriptionThe Editor XE "Editor" enters a new Reviewer XE "Reviewer" or updates information about a current Reviewer.Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the main page of the Article XE "Article" Manager XE "Article Manager" .The Editor XE "Editor" selects to Add XE "Add" /Update XE "Update" Reviewer XE "Reviewer" .The system presents a choice of adding or updating. The Editor XE "Editor" chooses to add XE "add" or to update XE "update" .The system links to the Historical Society XE "Historical Society" Database XE "Database" . If the Editor XE "Editor" is updating a Reviewer XE "Reviewer" , the system and presents a grid XE "Grid" with the information about the Reviewer; else the system presents list of members for the editor to select a Reviewer and presents a grid for the person selected.The Editor XE "Editor" fills in the information and submits the form XE "Form" .The system verifies the information and returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.4, Add XE "Add" Reviewer XE "Reviewer" ; Section 3.2.5, Update XE "Update" PersonUse case: Update XE "Update" Article XE "Article" Diagram:Brief DescriptionThe Editor XE "Editor" enters information about an existing article XE "Article" .Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the main page of the Article XE "Article" Manager XE "Article Manager" .The Editor XE "Editor" selects to Update XE "Update" Article XE "Article" .The system presents s list of active articles XE "Article" .The system presents the information about the chosen article XE "Article" .The Editor XE "Editor" updates and submits the form XE "Form" .The system verifies the information and returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.6, Update Article StatusHandle Article XE "Article" use casesUse case: Receive Article XE "Article" Diagram:Brief DescriptionThe Editor XE "Editor" enters a new or revised article XE "Article" into the system.Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the main page of the Article XE "Article" Manager XE "Article Manager" and has a file containing the article available.The Editor XE "Editor" selects to Receive Article XE "Article" .The system presents a choice of entering a new article XE "Article" or updating an existing article. The Editor XE "Editor" chooses to add XE "add" or to update XE "update" .If the Editor XE "Editor" is updating an article XE "Article" , the system presents a list of articles to choose from and presents a grid XE "Grid" for filling with the information; else the system presents a blank grid.The Editor XE "Editor" fills in the information and submits the form XE "Form" .The system verifies the information and returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.7, Enter CommunicationUse case: Assign Reviewer XE "Reviewer" This use case extends the Update XE "Update" Article XE "Article" use case.Diagram:Brief DescriptionThe Editor XE "Editor" assigns one or more reviewers XE "Reviewer" to an article XE "Article" .Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the article XE "Article" using the Update XE "Update" Article use case.The Editor XE "Editor" selects to Assign Reviewer XE "Reviewer" . The system presents a list of Reviewers XE "Reviewer" with their status XE "Status" (see data description is section 3.3 below).The Editor XE "Editor" selects a Reviewer XE "Reviewer" .The system verifies that the person is still an active member using the Historical Society XE "Historical Society" Database XE "Database" .The Editor XE "Editor" repeats steps 3 and 4 until sufficient reviewers XE "Reviewer" are assigned.The system emails the Reviewers XE "Reviewer" , attaching the article XE "Article" and requesting that they do the review XE "Review" .The system returns the Editor XE "Editor" to the Update XE "Update" Article XE "Article" use case.Xref: Section 3.2.8, Assign Reviewer XE "Reviewer" Use case: Receive Review XE "Review" This use case extends the Update XE "Update" Article XE "Article" use case.Diagram:Brief DescriptionThe Editor XE "Editor" enters a review XE "Review" into the system.Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the article XE "Article" using the Update XE "Update" Article use case.The Editor XE "Editor" selects to Receive Review XE "Review" .The system presents a grid XE "Grid" for filling with the information.The Editor XE "Editor" fills in the information and submits the form XE "Form" .The system verifies the information and returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.7, Enter CommunicationCheck Status XE "Status" use case:Use case: Check Status XE "Status" Diagram:Brief DescriptionThe Editor XE "Editor" checks the status XE "Status" of all active articles XE "Article" .Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the main page of the Article XE "Article" Manager XE "Article Manager" .The Editor XE "Editor" selects to Check Status XE "Status" .The system returns a scrollable list of all active articles XE "Article" with their status XE "Status" (see data description in section 3.3 below).The system returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.9, Check StatusSend Recommendation use cases:Use case: Send ResponseThis use case extends the Update XE "Update" Article XE "Article" use case.Diagram:Brief DescriptionThe Editor XE "Editor" sends a response to an Author XE "Author" . Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the article XE "Article" using the Update XE "Update" Article use case.The Editor XE "Editor" selects to Send Response.The system calls the email system and puts the Author XE "Author" ’s email address in the Recipient line and the name of the article XE "Article" on the subject line.The Editor XE "Editor" fills out the email text and sends the message.The system returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.210, Send CommunicationUse case: Send CopyrightThis use case extends the Update XE "Update" Article XE "Article" use case.Diagram:Brief DescriptionThe Editor XE "Editor" sends a copyright form XE "Form" to an Author XE "Author" .Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the article XE "Article" using the Update XE "Update" Article use case.The Editor XE "Editor" selects to Send Copyright.The system calls the email system and puts the Author XE "Author" ’s email address in the Recipient line, the name of the article XE "Article" on the subject line, and attaches the copyright form XE "Form" .The Editor XE "Editor" fills out the email text and sends the message.The system returns the Editor XE "Editor" to the Article XE "Article" Manager XE "Article Manager" main page.Xref: Section 3.2.10, Send CommunicationUse case: Remove Article XE "Article" This use case extends the Update XE "Update" Article XE "Article" use case.Diagram:Brief DescriptionThe Editor XE "Editor" removes an article XE "Article" from the active category XE "Category" . Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the article XE "Article" using the Update XE "Update" Article use case.The Editor XE "Editor" selects to remove an article XE "Article" from the active database XE "Database" .The system provides a list of articles XE "Article" with the status XE "Status" of each.The Editor XE "Editor" selects an article XE "Article" for removal.The system removes the article XE "Article" from the active article database XE "Database" and returns the Editor XE "Editor" to the Article Manager XE "Article Manager" main page.Xref: Section 3.2.12, Remove ArticlePublish Article XE "Article" use case:Use case: Publish Article XE "Article" This use case extends the Update XE "Update" Article XE "Article" use case.Diagram:Brief DescriptionThe Editor XE "Editor" transfers an accepted article XE "Article" to the Online Journal XE "Online Journal" . Initial Step-By-Step DescriptionBefore this use case can be initiated, the Editor XE "Editor" has already accessed the article XE "Article" using the Update XE "Update" Article use case.The Editor XE "Editor" selects to Publish Article XE "Article" .The system transfers the article XE "Article" to the Online Journal XE "Online Journal" and updates the search information there.The system removes the article XE "Article" from the active article database XE "Database" and returns the Editor XE "Editor" to the Article Manager XE "Article Manager" home page.Xref: Section 3.2.11, Publish Article<< Since three of the actors only have one use case each, the summary diagram only involves the Editor XE "Editor" . Adapt the rules to the needs of the document rather than adapt the document to fit the rules. >>2.3 User XE "User" Characteristics The Reader XE "Reader" is expected to be Internet literate and be able to use a search engine. The main screen of the Online Journal XE "Online Journal" Website will have the search function and a link to “Author XE "Author" /Reviewer XE "Reviewer" Information.” The Author XE "Author" and Reviewer XE "Reviewer" are expected to be Internet literate and to be able to use email with attachments.The Editor XE "Editor" is expected to be Windows literate and to be able to use button, pull-down menus, and similar tools. The detailed look of these pages is discussed in section 3.2 below.2.4 Non-Functional Requirements The Online Journal XE "Online Journal" will be on a server with high speed Internet capability. The physical machine to be used will be determined by the Historical Society XE "Historical Society" . The software developed here assumes the use of a tool such as Tomcat for connection between the Web pages and the database XE "Database" . The speed of the Reader XE "Reader" ’s connection will depend on the hardware used rather than characteristics of this system. The Article XE "Article" Manager XE "Article Manager" will run on the editor XE "Editor" ’s PC and will contain an Access database XE "Database" . Access is already installed on this computer and is a Windows operating system. 3.0. Requirements Specification3.1 External Interface RequirementsThe only link to an external system is the link to the Historical Society XE "Historical Society" (HS) Database XE "Database" to verify the membership of a Reviewer XE "Reviewer" . The Editor XE "Editor" believes that a society member is much more likely to be an effective reviewer and has imposed a membership requirement for a Reviewer. The HS Database fields XE "Field" of interest to the Web Publishing System XE "Web Publishing System" s are member’s name, membership (ID) number, and email address (an optional field for the HS Database).The Assign Reviewer XE "Reviewer" use case sends the Reviewer ID to the HS XE "Historical Society" Database XE "Database" and a Boolean is returned denoting membership status XE "Status" . The Update XE "Update" Reviewer use case requests a list of member names, membership numbers and (optional) email addresses when adding a new Reviewer. It returns a Boolean for membership status when updating a Reviewer.3.2 Functional RequirementsThe Logical Structure of the Data is contained in Section 3.3.1.3.2.1 Search Article XE "Article" Use Case NameSearch Article XE "Article" XRefSection 2.2.1, Search Article XE "Article" SDD, Section 7.1TriggerThe Reader XE "Reader" assesses the Online Journal XE "Online Journal" WebsitePreconditionThe Web is displayed with grids for searchingBasic PathThe Reader XE "Reader" chooses how to search the Web site. The choices are by Author XE "Author" , by Category XE "Category" , and by Keyword.If the search is by Author XE "Author" , the system creates and presents an alphabetical list of all authors in the database XE "Database" . In the case of an article XE "Article" with multiple authors, each is contained in the list.The Reader XE "Reader" selects an author XE "Author" . The system creates and presents a list of all articles XE "Article" by that author XE "Author" in the database XE "Database" .The Reader XE "Reader" selects an article XE "Article" .The system displays the Abstract XE "Abstract" for the article XE "Article" .The Reader XE "Reader" selects to download the article XE "Article" or to return to the article list or to the previous list.Alternative PathsIn step 2, if the Reader XE "Reader" selects to search by category XE "Category" , the system creates and presents a list of all categories in the database XE "Database" .The Reader XE "Reader" selects a category XE "Category" .The system creates and presents a list of all articles XE "Article" in that category XE "Category" in the database XE "Database" . Return to step 5.In step 2, if the Reader XE "Reader" selects to search by keyword, the system presents a dialog box to enter the keyword or phrase.The Reader XE "Reader" enters a keyword or phrase.The system searches the Abstracts for all articles XE "Article" with that keyword or phrase and creates and presents a list of all such articles in the database. XE "Database" Return to step 5.PostconditionThe selected article XE "Article" is downloaded to the client machine. Exception PathsThe Reader XE "Reader" may abandon the search at any time.OtherThe categories XE "Category" list is generated from the information provided when article XE "Article" are published and not predefined in the Online Journal XE "Online Journal" database. XE "Database" 3.2.2 CommunicateUse Case NameCommunicateXRefSection 2.2.2, Submit Article; XE "Article" Section 2.2.3, Submit Review XE "Review" SDD, Section 7.2TriggerThe user XE "User" selects a mailto link.PreconditionThe user XE "User" is on the Communicate page linked from the Online Journal XE "Online Journal" Main Page. Basic PathThis use case uses the mailto HTML tag. This invokes the client email facility.Alternative PathsIf the user XE "User" prefers to use his or her own email directly, sufficient information will be contained on the Web page to do so. PostconditionThe message is sent.Exception PathsThe attempt may be abandoned at any time. OtherNone3.2.3 Add XE "Add" Author XE "Author" Use Case NameAdd XE "Add" Author XE "Author" XRefSection 2.2.4, Update XE "Update" Author XE "Author" SDD, Section 7.3TriggerThe Editor XE "Editor" selects to add XE "add" a new author XE "Author" to the database. XE "Database" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe system presents a blank grid XE "Grid" to enter the author XE "Author" information.The Editor XE "Editor" enters the information and submits the form XE "Form" .The system checks that the name and email address fields XE "Field" are not blank and updates the database. XE "Database" Alternative PathsIf in step 2, either field XE "Field" is blank, the Editor XE "Editor" is instructed to add XE "add" an entry. No validation for correctness is made.PostconditionThe Author XE "Author" has been added to the database. XE "Database" Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherThe author XE "Author" information includes the name mailing address and email address. 3.2.4 Add XE "Add" Reviewer XE "Reviewer" Use Case NameAdd XE "Add" Reviewer XE "Reviewer" XRefSection 2.2.4, Update XE "Update" Reviewer XE "Reviewer" SDD, Section 7.4TriggerThe Editor XE "Editor" selects to add XE "add" a new reviewer XE "Reviewer" to the database. XE "Database" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe system accesses the Historical Society XE "Historical Society" (HS) database XE "Database" and presents an alphabetical list of the society members.The Editor XE "Editor" selects a person.The system transfers the member information from the HS XE "Historical Society" database XE "Database" to the Article XE "Article" Manager XE "Article Manager" (AM) database. If there is no email address in the HS database, the editor XE "Editor" is prompted for an entry in that field XE "Field" . The information is entered into the AM database. XE "Database" Alternative PathsIn step 3, if there is no entry for the email address in the HS XE "Historical Society" database XE "Database" or on this grid, XE "Grid" the Editor XE "Editor" will be reprompted for an entry. No validation for correctness is made.PostconditionThe Reviewer XE "Reviewer" has been added to the database. XE "Database" Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherThe Reviewer XE "Reviewer" information includes name, membership number, mailing address, categories XE "Category" of interest, and email address.3.2.5 Update XE "Update" PersonUse Case NameUpdate XE "Update" PersonXRefSec 2.2.4 Update XE "Update" Author; XE "Author" Sec 2.2.4 Update Reviewer XE "Reviewer" SDD, Section 7.5TriggerThe Editor XE "Editor" selects to update XE "update" an author XE "Author" or reviewer XE "Reviewer" and the person is already in the database. XE "Database" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe Editor XE "Editor" selects Author XE "Author" or Reviewer XE "Reviewer" .The system creates and presents an alphabetical list of people in the category XE "Category" .The Editor XE "Editor" selects a person to update XE "update" .The system presents the database XE "Database" information in grid XE "Grid" form XE "Form" for modification.The Editor XE "Editor" updates the information and submits the form XE "Form" .The system checks that required fields XE "Field" are not blank.Alternative PathsIn step 5, if any required field XE "Field" is blank, the Editor XE "Editor" is instructed to add XE "add" an entry. No validation for correctness is made.PostconditionThe database XE "Database" has been updated.Exception PathsIf the person is not already in the database, XE "Database" the use case is abandoned. In addition, the Editor XE "Editor" may abandon the operation at any time.OtherThis use case is not used when one of the other use cases is more appropriate, such as to add XE "add" an article XE "Article" or a reviewer XE "Reviewer" for an article.3.2.6 Update XE "Update" Article XE "Article" Status XE "Status" Use Case NameUpdate XE "Update" Article XE "Article" Status XE "Status" XRefSection 2.2.4, Update XE "Update" Article XE "Article" SDD, Section 7.6TriggerThe Editor XE "Editor" selects to update XE "update" the status XE "Status" of an article XE "Article" in the database. XE "Database" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen and the article is already in the database. XE "Database" Basic PathThe system creates and presents an alphabetical list of all active articles XE "Article" .The Editor XE "Editor" selects the article XE "Article" to update XE "update" .The system presents the information about the article XE "Article" in grid XE "Grid" format. The Editor XE "Editor" updates the information and resubmits the form. XE "Form" Alternative PathsIn step 4, the use case Enter Communication may be invoked.PostconditionThe database XE "Database" has been updated.Exception PathsIf the article XE "Article" is not already in the database, XE "Database" the use case is abandoned. In addition, the Editor XE "Editor" may abandon the operation at any time.OtherThis use case can be used to add XE "add" categories XE "Category" for an article, XE "Article" to correct typographical errors, or to remove a reviewer XE "Reviewer" who has missed a deadline for returning a review. XE "Review" It may also be used to allow access to the named use case to enter an updated article or a review for an article. 3.2.7 Enter CommunicationUse Case NameEnter CommunicationXRefSection 2.2.4, Receive Article; XE "Article" Section 2.2.4, Receive Review XE "Review" SDD, Section 7.7TriggerThe Editor XE "Editor" selects to add XE "add" a document to the system.PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen and has the file of the item to be entered available.Basic PathThe Editor XE "Editor" selects the article XE "Article" using the 3.2.6, Update XE "Update" Article Status XE "Status" use case.The Editor XE "Editor" attaches the file to the grid XE "Grid" presented and updates the respective information about the article XE "Article" .When the Editor XE "Editor" updates the article XE "Article" status XE "Status" to indicate that a review XE "Review" is returned, the respective entry in the Reviewer XE "Reviewer" table is updated.Alternative PathsNonePostconditionThe article XE "Article" entry is updated in the database. XE "Database" Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherThis use case extends 3.2.6, Update XE "Update" Article XE "Article" Status XE "Status" 3.2.8 Assign Reviewer XE "Reviewer" Use Case NameAssign Reviewer XE "Reviewer" XRefSection 2.2.4, Assign Reviewer XE "Reviewer" SDD, Section 7.8TriggerThe Editor XE "Editor" selects to assign a reviewer XE "Reviewer" to an article. XE "Article" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen and the article is already in the database. XE "Database" .Basic PathThe Editor XE "Editor" selects the article XE "Article" using the 3.2.6, Update XE "Update" Article Status XE "Status" use case.The system presents an alphabetical list of reviewers XE "Reviewer" with their information. The Editor XE "Editor" selects a reviewer XE "Reviewer" for the article XE "Article" . The system updates the article XE "Article" database XE "Database" entry and emails the reviewer XE "Reviewer" with the standard message and attaches the text of the article without author XE "Author" information.The Editor XE "Editor" has the option of repeating this use case from step 2.Alternative PathsNone.PostconditionAt least one reviewer XE "Reviewer" has been added to the article XE "Article" information and the appropriate communication has been sent.Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherThis use case extends 3.2.6, Update XE "Update" Article XE "Article" Status. XE "Status" The Editor, XE "Editor" prior to implementation of this use case, will provide the message text.3.2.9 Check Status XE "Status" Use Case NameCheck Status XE "Status" XRefSection 2.2.4, Check Status XE "Status" SDD, Section 7.9TriggerThe Editor XE "Editor" has selected to check status XE "Status" of all active articles. XE "Article" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe system creates and presents a list of all active articles XE "Article" organized by their status XE "Status" . The Editor XE "Editor" may request to see the full information about an article. XE "Article" Alternative PathsNone.PostconditionThe requested information has been displayed.Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherThe editor XE "Editor" may provide an enhanced list of status XE "Status" later. At present, the following categories XE "Category" must be provided:Received but no further action takenReviewers XE "Reviewer" have been assigned but not all reviews are returned (include dates that reviewers were assigned and order by this criterion).Reviews XE "Review" returned but no further action taken.Recommendations for revision sent to Author XE "Author" but no response as of yet.Author XE "Author" has revised article XE "Article" but no action has been taken.Article XE "Article" has been accepted and copyright form XE "Form" has been sent.Copyright form XE "Form" has been returned but article XE "Article" is not yet published.A published article XE "Article" is automatically removed from the active article list.3.2.10 Send CommunicationUse Case NameSend CommunicationXRefSection 2.2.4, Send Response; Section 2.2.4, Send CopyrightSDD, Section 7.10TriggerThe editor XE "Editor" selects to send a communication to an author. XE "Author" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe system presents an alphabetical list of authors XE "Author" .The Editor XE "Editor" selects an author XE "Author" .The system invokes the Editor XE "Editor" ’s email system entering the author XE "Author" ’s email address into the To: entry. The Editor XE "Editor" uses the email facility.Alternative PathsNone.PostconditionThe communication has been sent.Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherThe standard copyright form XE "Form" will be available in the Editor’ XE "Editor" s directory for attaching to the email message, if desired.3.2.11 Publish Article XE "Article" Use Case NamePublish Article XE "Article" XRefSection 2.2.4, Publish Article XE "Article" SDD, Section 7.11TriggerThe Editor XE "Editor" selects to transfer an approved article XE "Article" to the Online Journal. XE "Online Journal" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe system creates and presents an alphabetical list of the active articles XE "Article" that are flagged as having their copyright form XE "Form" returned.The Editor XE "Editor" selects an article XE "Article" to publish. The system accesses the Online Database XE "Database" and transfers the article XE "Article" and its accompanying information to the Online Journal XE "Online Journal" database.The article XE "Article" is removed from the active article database. XE "Database" Alternative PathsNone.PostconditionThe article XE "Article" is properly transferred. Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherFind out from the Editor XE "Editor" to see if the article XE "Article" information should be archived somewhere.3.2.12 Remove Article XE "Article" Use Case NameRemove Article XE "Article" XRefSection 2.2.4, Remove Article XE "Article" SDD, Section 7.12TriggerThe Editor XE "Editor" selects to remove an article XE "Article" from the active article database. XE "Database" PreconditionThe Editor XE "Editor" has accessed the Article XE "Article" Manager XE "Article Manager" main screen.Basic PathThe system provides an alphabetized list of all active articles XE "Article" .The editor XE "Editor" selects an article XE "Article" .The system displays the information about the article XE "Article" and requires that the Editor XE "Editor" confirm the deletion.The Editor XE "Editor" confirms the deletion. Alternative PathsNone.PostconditionThe article XE "Article" is removed from the database. XE "Database" Exception PathsThe Editor XE "Editor" may abandon the operation at any time.OtherFind out from the Editor XE "Editor" to see if the article XE "Article" and its information information should be archived somewhere.3.3 Detailed Non-Functional Requirements3.3.1 Logical Structure of the DataThe logical structure of the data to be stored in the internal Article XE "Article" Manager XE "Article Manager" database XE "Database" is given below. Figure SEQ Figure \* ARABIC 4 - Logical Structure of the Article XE "Article" Manager XE "Article Manager" DataThe data descriptions of each of these data entities is as follows:Author XE "Author" Data EntityData ItemTypeDescriptionCommentNameTextName of principle author XE "Author" Email AddressTextInternet addressArticle XE "Article" PointerArticle XE "Article" entityMay be severalReviewer XE "Reviewer" Data EntityData ItemTypeDescriptionCommentNameTextName of principle author XE "Author" IDIntegerID number of Historical Society XE "Historical Society" memberUsed as key in Historical Society XE "Historical Society" Database XE "Database" Email AddressTextInternet addressArticle XE "Article" PointerArticle XE "Article" entity of May be severalNum Review XE "Review" IntegerReview XE "Review" entityNumber of not returned reviewsHistoryTextComments on past performanceSpecialtyCategory XE "Category" Area of expertiseMay be severalReview XE "Review" Data EntityData ItemTypeDescriptionCommentArticle XE "Article" PointerArticle XE "Article" entityReviewer XE "Reviewer" PointerReviewer XE "Reviewer" entitySingle reviewer XE "Reviewer" Date SentDateDate sent to reviewer XE "Reviewer" ReturnedDateDate returned; null if not returnedContentsTextText of review XE "Review" Article XE "Article" Data EntityData ItemTypeDescriptionCommentNameTextName of Article XE "Article" Author XE "Author" PointerAuthor XE "Author" entityName of principle author XE "Author" Other Authors XE "Author" TextOther authors XE "Author" is any; else nullNot a pointer to an Author XE "Author" entityReviewer XE "Reviewer" PointerReviewer XE "Reviewer" entityWill be severalReview XE "Review" PointerReview XE "Review" entitySet up when reviewer XE "Reviewer" is set upContentsTextBody of article XE "Article" Contains Abstract XE "Abstract" as first paragraph.Category XE "Category" TextArea of contentMay be severalAcceptedBooleanArticle XE "Article" has been accepted for publicationNeeds Copyright form XE "Form" returnedCopyrightBooleanCopyright form XE "Form" has been returnedNot relevant unless Accepted is True.PublishedBooleanSent to Online Journal XE "Online Journal" Not relevant unless Accepted is True. Article XE "Article" is no longer active and does not appear in status XE "Status" checks.The Logical Structure of the data to be stored in the Online Journal XE "Online Journal" database XE "Database" on the server is as follows:Published Article XE "Article" EntityData ItemTypeDescriptionCommentNameTextName of Article XE "Article" Author XE "Author" TextName of one Author XE "Author" May be severalAbstract XE "Abstract" TextAbstract XE "Abstract" of article XE "Article" Used for keyword searchContentTextBody of article XE "Article" Category XE "Category" TextArea of contentMay be several3.3.2 Security XE "Security" The server on which the Online Journal XE "Online Journal" resides will have its own security XE "Security" to prevent unauthorized write/delete access. There is no restriction on read access. The use of email by an Author XE "Author" or Reviewer XE "Reviewer" is on the client systems and thus is external to the system. The PC on which the Article XE "Article" Manager XE "Article Manager" resides will have its own security XE "Security" . Only the Editor XE "Editor" will have physical access to the machine and the program on it. There is no special protection built into this system other than to provide the editor with write access to the Online Journal XE "Online Journal" to publish an article. Index INDEX \c "2" \z "1033" Abstract, 6, 17, 27add, 9, 11, 19, 20, 21Add, 8, 9, 19Article, 1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28Article Manager, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 24, 25, 28Author, 1, 4, 5, 6, 7, 8, 9, 13, 14, 16, 17, 19, 20, 22, 23, 25, 26, 27Category, 5, 14, 17, 18, 20, 21, 23, 26, 27Database, 2, 9, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27Editor, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 28Field, 17, 19, 20Form, 1, 6, 9, 10, 11, 12, 14, 19, 20, 21, 23, 24, 27Grid, 9, 11, 12, 19, 20, 21Historical Society, 1, 5, 9, 11, 16, 17, 19, 20, 26Online Journal, 4, 5, 6, 7, 15, 16, 17, 18, 24, 27, 28Reader, 4, 5, 6, 16, 17, 18Review, 1, 7, 11, 12, 18, 21, 23, 26, 27Reviewer, 1, 4, 5, 6, 7, 9, 11, 16, 17, 19, 20, 21, 22, 23, 26, 27Security, 27, 28Status, 11, 12, 13, 14, 17, 21, 22, 23, 27update, 9, 11, 20, 21Update, 8, 9, 10, 11, 12, 13, 14, 15, 17, 19, 20, 21, 22User, 7, 16, 18Web Publishing System, 1, 4, 5, 17 PAGE iiSRS V 1.0 PAGE 27 April 15, 2004ReviewerWeb Publishing SystemArticle ManagerOnline JournalHS DBEditorReaderSearch ArticleReaderSubmit ArticleAuthorUpdate AuthorEditorSubmit ReviewReviewerAuthorPublish ArtSend RecCk StatusHandle ArtEditorUpdate InfoEditorUpdate ReviewerEditorUpdate ArticleEditorReceive ArticleEditorAssign ReviewerEditorCheck StatusEditorSend ResponseEditorSend CopyrightEditorRemove ArticleEditorPublish ArticleHist Soc DBPublishSubmitActive ArticleReviewRewriteReviewReviewerArticleAuthorwritessent towriteshasHist Soc DBEditorReceive Review
SRSExample-webapp
3997
来源:
Licence:
联系:
分类:
平台:
环境:
大小:
更新:
标签:
免费下载
×
温馨提示
请用电脑打开本网页,即可以免费获取你想要的了。