Unformatted text preview:

Information Systems Analysis and Design csc340 XV The Requirements Specification Document RSD What to include not include in aa RSD RSD Attributes of a Well Written RSD An Example 2004 John Mylopoulos Software Requirements Specification 1 Information Systems Analysis and Design csc340 The Requirements Specification Document RSD Produced by the requirements engineering process describes all requirements for the system under design and is intended for several purposes Communication among customers users and designers Support for system testing verification and validation activities Control of system evolution maintenance extensions and enhancements to system should be consistent with requirements 2004 John Mylopoulos Software Requirements Specification 2 Information Systems Analysis and Design csc340 Contents of a RSD What to include in a RSD A complete yet concise description of the entire external interface of the system with its environment Functional or behavioural requirements specify what the system does by relating inputs to outputs Non Functional quality requirements prescribe global attributes of the system What not to include in a RSD Project requirements they are developmentspecific and irrelevant as soon as the project is over Designs design is irrelevant to customers Quality assurance plans e g plans for configuration management verification and validation testing etc 2004 John Mylopoulos Software Requirements Specification 3 Information Systems Analysis and Design csc340 Content Qualities Correct in that all stated requirements represent a need a stakeholder has customer user analyst or designer Unambiguous in that every stated requirement has a unique interpretation Complete in that it possesses the following four qualities Describes everything the software is supposed to do The response to input combinations is stated explicitly Pages and figures are numbered There are no to be determined sections Verifiable in that every requirement can be established through a finite cost effective process Consistent in that it avoids i conflicting behaviour ii conflicting terms iii conflicting attributes iv temporal inconsistencies 2004 John Mylopoulos Software Requirements Specification 4 Information Systems Analysis and Design csc340 Qualities of a Well Written RSD Understandable by customers so formal notations can only be used as backup while the RSD document itself is expressed in natural language or perhaps UML Modifiable in that it can be easily changed without affecting completeness consistency a table of contents TOC helps so does an index and cross references where appropriate Traced in that the origin of every requirement is clear this can be achieved by referencing earlier documents Traceable in that attributes of the design can be traced back to requirements and vice versa to enhance traceability i number every requirement ii number every part of the RSD hierarchically all the way down to paragraphs 2004 John Mylopoulos Software Requirements Specification 5 Information Systems Analysis and Design csc340 Traceable vs Traced System level System levelReqs Reqs drafts drafts memos memos traced Software SoftwareRequirements Requirements Specification Specification traceable traceable Software Software Design Design 2004 John Mylopoulos Software Requirements Specification 6 Information Systems Analysis and Design csc340 Style Qualities Design independent in the sense that it does not imply a particular software architecture or algorithm Annotated in that it provides guidance to the developers two useful types of annotations are i relative necessity i e how necessary is a particular requirement from a stakeholder perspective ii relative stability i e how likely is it that a requirement will change Concise the shorter the better Organized in the sense that it is easy to locate any one requirement 2004 John Mylopoulos Software Requirements Specification 7 Information Systems Analysis and Design csc340 There is no Perfect RSD ambiguous ambiguous lengthen it shorten it shorten it lengthen it redundant redundant inconsistent inconsistent shorten it shorten it lengthen it lengthen it not notunderstandable understandable shorten it lengthen it incomplete incomplete 2004 John Mylopoulos Software Requirements Specification 8 Information Systems Analysis and Design csc340 How to Organize a RSD There are many RSD standards including US DoD DI MCCR 80025A IEEE ANSI 830 1984 etc Organization may be based on different criteria External stimulus or external situation e g for an aircraft landing system wind gusts no fuel System feature e g call forward System response e g generate pay cheques External object e g by book type for a library User type use case It is useful to define a hierarchy among these criteria use it throughout the RSD document e g sections are defined with respect to wrt external stimulus subsections wrt system feature etc 2004 John Mylopoulos Software Requirements Specification 9 Information Systems Analysis and Design csc340 Example System Decomposition An Automated Money decomposed as follows Machine AMM might be AMM System Banking Network Control Applications Manager Banking Applications handles banking transactions Network Manager communicates with central system System Control is responsible for startup shutdown control of the AMM system and error handling 2004 John Mylopoulos Software Requirements Specification 10 Information Systems Analysis and Design csc340 Interfaces I O card box notification banking display Card Box Customer banking commands cash box notification Cash Box Banking Applications transaction statement control and commands information System Control Printer account updates Network Manager control and commands information account information operational status System boundary Bank s Computer 2004 John Mylopoulos Software Requirements Specification 11 Information Systems Analysis and Design csc340 Software Requirements Define I O for each use case for the Banking Applications invalid pin display deposit cash request cash box notification enter pin select banking display transaction display Process Cash Deposit pin card number Process PIN transaction statement pin validation request Process Cash Withdrawal pin validation response request account Process Account balance Balance account transaction balance account statement query balance 2004 John Mylopoulos update account balance transaction statement withdraw cash request cash box notification


View Full Document

Toronto CSC 340 - The Requirements Specification Document

Documents in this Course
Scoping

Scoping

10 pages

Load more
Loading Unlocking...
Login

Join to view The Requirements Specification Document and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view The Requirements Specification Document and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?