Information Systems Analysis and Design csc340 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 What to include not include in a RSD Attributes of a Well Written RSD An Example Software Requirements Specification 1 Information Systems Analysis and Design csc340 The Requirements Specification Document RSD XV The Requirements Specification Document RSD 2004 John Mylopoulos Information Systems Analysis and Design csc340 2004 John Mylopoulos Software Requirements Specification 2 Information Systems Analysis and Design csc340 Contents of a RSD Content Qualities 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 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 3 Information Systems Analysis and Design csc340 2004 John Mylopoulos Information Systems Analysis and Design Qualities of a Well Written RSD RSD Software Requirements Specification 5 csc340 Traceable vs Traced 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 4 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 Information Systems Analysis and Design csc340 There is no Perfect RSD Style Qualities ambiguous ambiguous lengthen it 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 shorten it shorten it lengthen it redundant redundant inconsistent inconsistent shorten it lengthen it shorten it lengthen it not notunderstandable understandable shorten it lengthen it incomplete incomplete 2004 John Mylopoulos Software Requirements Specification 7 Information Systems Analysis and Design csc340 Software Requirements Specification 8 Information Systems Analysis and Design An Automated Money decomposed as follows 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 Information Systems Analysis and Design System Control banking display Banking Applications control and commands information Customer transaction statement Network Manager Information Systems Analysis and Design csc340 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 request account Process Account balance Balance control and commands information account information update account balance transaction statement pin validation request Process Cash Withdrawal pin validation response Network Manager operational status be Software Requirements Specification 10 Printer account updates System Control might Software Requirements banking commands Cash Box Banking Applications 2004 John Mylopoulos Interfaces I O cash box notification AMM 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 csc340 Card Box Machine AMM Software Requirements Specification 9 card box notification csc340 Example System Decomposition How to Organize a RSD 2004 John Mylopoulos 2004 John Mylopoulos account transaction balance account statement query balance transaction statement withdraw cash request cash box notification account balance request account balance update account balance System boundary Bank s Computer 2004 John Mylopoulos
View Full Document
Unlocking...