requirements analysis - ritse555/requirements analysis.pdf · se 555 software requirements &...
TRANSCRIPT
![Page 1: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/1.jpg)
SE 555 Software Requirements & Specification
Requirements Analysis
![Page 2: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/2.jpg)
SE 555 Software Requirements & Specification
Goals of Requirements Analysis
Create requirements containing sufficient detail and of high enough quality to allow realistic project planning as well as successful design and implementation.
Scrutinize requirements for errors, conflicts, omissions and boundaries.
![Page 3: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/3.jpg)
SE 555 Software Requirements & Specification
Requirements Analysis Practices
Analyze feasibilityAllocate requirements to subsystemsCreate prototypes where necessaryModel the requirements Prioritize the requirementsDefine system boundaries and interfacesCreate consistent data definitions
![Page 4: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/4.jpg)
SE 555 Software Requirements & Specification
Requirements Analysis Checklist
Premature Design – Does the requirement include premature design or implementation information?Combined Requirements – Does the description of a requirement describe a single requirement or could it be broken down into several different requirements?Unnecessary Requirements – Is the requirement “gold plating”? That is, is the requirement a cosmetic addition to the system which is not really necessary.Use of Non-standard Components – Does the requirement mean that non-standard hardware or software must be used?
![Page 5: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/5.jpg)
SE 555 Software Requirements & Specification
Requirements Analysis Checklist – cont’d
Conformance with Business Goals – Is the requirement consistent with the business goals defined in the introduction to the requirements document/Requirements Ambiguity – Is the requirement ambiguous i.e. could it be read in different ways by different people?Requirements Realism – Is the requirement realistic given the technology which will be used to implement the system?Requirements Testability – Is the requirement testable? Is it stated in such a way that a test can be derived to show if the system meets the requirement?
![Page 6: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/6.jpg)
SE 555 Software Requirements & Specification
Requirements Analysis Artifacts
System Boundaries – Context DiagramRequirements Modeling – Class Diagrams, Activity State Diagrams, Interaction Diagrams, Sequence Diagrams, Data Flow Diagrams, Entity-Relationship DiagramsData Definition – Data DictionaryRequirements Priority – Prioritization MatrixRequirements Definition, Risk Mitigation, Feasibility –Prototypes
![Page 7: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/7.jpg)
SE 555 Software Requirements & Specification
Context Diagram - Purpose
Highlights the boundary between the system and the outside world. Highlights the people, organizations, and outside systems that interact with the system under development.Special case of the data flow diagram.
![Page 8: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/8.jpg)
SE 555 Software Requirements & Specification
Context Diagram - Notation
Process - Represents the proposed system
Terminator - Represents the external entities
Flow - Represents the in and out data flows
![Page 9: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/9.jpg)
SE 555 Software Requirements & Specification
Context Diagram - Example
Credit Card Processing
Customer
CollectionCompany
CorporateAccounting
SystemStore
Customer ServiceApplication
Bills
Payment
Transaction
Payment
OverdueAccounts
Credit
AccountSummary
![Page 10: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/10.jpg)
SE 555 Software Requirements & Specification
Use-Case AnalysisUse-case analysis is where the requirements meet object-orientation
Recall: in the Unified Process, the use-case model is the primary artifact in the requirements modelIn use-case analysis, identify the classes which perform a use-case flow of eventsDistribute the use-case behavior to those classes
Identifying the responsibility of the classesDevelop use case realizations that model the collaborations between instances of the identified classes
How the class instances work together to deliver the requirements
The result is a first-draft, rough-cut of the system object modelAn abstraction of the design model; refined during design
![Page 11: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/11.jpg)
SE 555 Software Requirements & Specification
Use-Case Analysis - Steps
Supplement the Use-Case DescriptionFor each use-case realization
Find classes from use-case behaviorDistribute use-case behavior to classes
For each resulting analysis classDescribe responsibilitiesDescribe attributes and associationsQualify architectural analysis mechanisms
Unify analysis classesCheckpoints
![Page 12: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/12.jpg)
SE 555 Software Requirements & Specification
Analysis Classes: A First Step Towards Executables
Use-Cases AnalysisClasses
DesignElements
SourceCode
Executables
Use-Case Analysis
![Page 13: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/13.jpg)
SE 555 Software Requirements & Specification
Data Flow Diagram - Purpose
Provides a means for functional decomposition.Primary tool in analysis to model data transformation in the system.
![Page 14: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/14.jpg)
SE 555 Software Requirements & Specification
Data Flow Diagram - Notation
Represents the external entities that the System communicates with
Represents data flows
Represents functions in the system(transforms Inputs into Outputs)
Represents data stores(a collection of data at “rest”)
![Page 15: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/15.jpg)
SE 555 Software Requirements & Specification
DFD Example from Text
![Page 16: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/16.jpg)
SE 555 Software Requirements & Specification
Data Dictionary
A repository that defines the data elements or attributes used in the systemIt is not the project glossaryMakes it easy to find info about the dataAvoids redundancy and maintenance issues, over being in various func. req.Have it as an appendix in your SRS (project)
![Page 17: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/17.jpg)
SE 555 Software Requirements & Specification
DD NotationPrimary data element
Where an element does not need or require further decompositionDefined with a comment * text *Data type, size, range of values etc. are presented.
Composition: +Used to show multiple data itemsOptional items are enclosed in ()
Iteration: min:max {item}Used to show that mult instances of an item can appear
Selection: [item | item]When a data element can be of a set of discrete values
![Page 18: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/18.jpg)
SE 555 Software Requirements & Specification
DD ExamplesCustomer NamePhone Number
![Page 19: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/19.jpg)
SE 555 Software Requirements & Specification
DD Notation
Entry comprised of: (and listed in alphabetical order)Name: its nameAliases: if it goes by another name as wellUsed in: the use cases it is present in, by id and nameDescription: the notation goes hereNotes: any special notes about it
![Page 20: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/20.jpg)
SE 555 Software Requirements & Specification
Entity Relationship Diagram (ERD) -Purpose
A graphical representation of the data layout of a system at a high level of abstraction.Defines data elements and their inter-relationships in the system.
![Page 21: Requirements Analysis - RITse555/Requirements Analysis.pdf · SE 555 Software Requirements & Specification ... Requirements Analysis Artifacts System Boundaries ... Credit Card Processing](https://reader034.vdocuments.site/reader034/viewer/2022052516/5ac4006e7f8b9a12608c99be/html5/thumbnails/21.jpg)
SE 555 Software Requirements & Specification
Entity Relationship Diagram - Text Example