requirements analysis&requirements specification
DESCRIPTION
Requirements Analysis&Requirements SpecificationTRANSCRIPT
![Page 1: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/1.jpg)
Requirements Analysis&
Requirements Specification
Originally developed by Michael MadiganStorageTekManager, PAL Engineering
Software Engineering of Standalone ProgramsUniversity of Colorado, Boulder
![Page 2: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/2.jpg)
Requirements Engineering
Requirements Elicitation Requirements Analysis
Requirements Specification Requirements Verification
Requirements Management
Requirements Engineering
![Page 3: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/3.jpg)
Requirements Analysis & Specification Definitions
Requirements Analysis–The process of studying and analyzing the customer and the
user/stakeholder needs to arrive at a definition of software requirements.1
Requirements Specification–A document that clearly and precisely* describes, each of the
essential requirements of the software and the external interfaces. (functions, performance, design constraint, and quality attributes)
–Each requirement is defined in such a way that its achievement is capable of being objectively verified by a prescribed method; for example inspection, demonstration, analysis, or test.2
![Page 4: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/4.jpg)
Types of Requirements
Functional requirementsPerformance requirements
–Speed, accuracy, frequency, throughputExternal interface requirementsDesign constraints
–Requirements are usually about “what”, this is a “how”.
Quality attributes– i.e. reliability, portability, maintainability,
supportability
![Page 5: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/5.jpg)
What vs. How Dilemma3
User NeedsUser Needs
System Requirements
System Requirements
System DesignSystem Design
SoftwareRequirements
SoftwareRequirements
SoftwareDesign
SoftwareDesign
WhatHow
WhatHow
WhatHow
WhatHow
![Page 6: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/6.jpg)
Requirements vs. Design
Requirements Design
Describe what will be delivered3 Describe how it will be done3
Primary goal of analysis:UNDERSTANDING3
Primary goal of design:OPTIMIZATION3
There is more than one solution There is only one (final) solution
Customer interested Customer not interested (Most of the time) except for external
![Page 7: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/7.jpg)
Software Quality Attributes4
Correctness Reliability
– Rating = 1 – (Num Errors/ Num LOC)– Can be allocated to subsystems
Efficiency Integrity Usability Survivability Maintainability Verifiability Flexibility Portability Reusability Interoperability Expandability
![Page 8: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/8.jpg)
Analysis of Elicitation results helps to create a VisionSettle on which problem
- Explain in the problem statement (2.2)Marketing group establishes positioning of the product (2.3)Stakeholder and User Summaries
- User is a special case of stakeholder- Identify all stakeholders w.r.t. development: Name Represents Role- Identify all users w.r.t. system: Name Description Stakeholder
![Page 9: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/9.jpg)
Stakeholder Profiles (3.5)Representative - who (name) is representing this stakeholder
type.Description - brief description of the stakeholder typeType - Qualify s-h’s expertise, technical background, degree
of sophisticationResponsibilities - List s-h’s key responsibilities with regard to
the system being developed - why a stakeholder?Success Criteria - How does the stakeholder define success?
How rewarded?Involvement - involved in the project in what way?
Requirements reviewer, system tester, ...Deliverables* - required by the stakeholderComments/Issues - Problems that interfere w/ success, etc.
![Page 10: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/10.jpg)
User Profiles (3.6)Representative - Who represents this user? (might be a
stakeholder)Description - of the user typeType - qualify expertise, technical background, degree of
sophisticationResponsibilities - user’s key resp.’s w.r.t. system being
developed Success Criteria - how this user defines success? rewarded?Involvement - How user involved in this project? what role?Deliverables - Are there any deliverables the user produces?
For whom?Comments/Issues - Problems that interfere w/ success, etc. This includes trends that make the user’s job easier or
harder
![Page 11: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/11.jpg)
User Environment (3.4)-- working environment of target user
Number of people involved in doing this now? Changing?How long is a task cycle now? Changing?Any unique environmental constraints: mobile, outdoors, in-
flight, etc.Which system platforms are in use today? future?What other applications are in use? Need to integrate?
![Page 12: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/12.jpg)
Key Stakeholder or User Needs (3.7)
List key problems with existing solutions as perceived by the stakeholder or user.
What are the reasons for this problem?How is it solved now?What solutions does the stakeholder want?
What is relative importance of solving each problem?
Alternatives and Competition (3.8)
![Page 13: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/13.jpg)
Product Overview (4.)(at last!)
4.1 Product perspective (context)Put the product in perspective to other related products
and the user’s environment.Independent? Component of a larger system? How do the subsystems interact with this? Known interfaces between them and this component? Block diagram
![Page 14: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/14.jpg)
Product Overview (4.)(at last!)
4.2 Summary of CapabilitiesCustomer Benefit Supporting Features1. 2. 3. 4.
![Page 15: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/15.jpg)
Product Overview (4.)(at last!)
4.3 Assumptions and dependenciesWhat factors affect the features above?List assumptions that, if changed, ALTER this document
4.4 Cost and pricing -- not done by engineering4.5 Licensing and installation -- different types of license
enforcement will create more requirements for the development effort
![Page 16: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/16.jpg)
What’s a feature?- high level capability necessary to deliver benefit to the user- externally desired service that typically requires inputs to
achieveLevel of detail must be general -- this is not the requirements
spec for the developers.Provide the basis for product definition, scope management,
and project management.Each will be expanded in the use-cases or other
requirementsExternally perceivable by users or external systems
Product Features (5.)
![Page 17: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/17.jpg)
What is not in theProduct Features Section?
DesignConstraints -- These go in section 6.
–Design constraints–External constraints
Quality Ranges -- These go in section 7– ranges for performance, robustness, fault tolerance, etc. that
are not really features (specific capabilities, functions)
![Page 18: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/18.jpg)
Precedence and Priority (8.)
Which features essential?–We will delay shipment in order to have these–We will postpone the feature in order to meet first-release goal
![Page 19: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/19.jpg)
Other Product Requirements
These are requirements that are not features (functions) of the product–hardware platform requirements -- –system requirements -- supported host o.s.’s, peripherals,
companion software–environmental requirements -- temperature, shock, humidity,
radiation, usage conditions, resource availability, maintenance issues, type of error recovery
–applicable standards -- legal, regulatory, communications
![Page 20: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/20.jpg)
Documentation Requirements
What must be developed to support successful deployment?–User Manual?–Online Help?– Installation guide? Read Me file?–Labeling, packaging?
![Page 21: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/21.jpg)
Vision Doc adds basis for SRS
![Page 22: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/22.jpg)
Use Case Internals -- Compare to example in Larman text (p. 68 ff.). Terms: 73-78
Use Case Name Scope Level Primary Actor Stakeholders & interests Preconditions Success Guarantee (post-
conditions)
Basic Flow Alternate Flows (extensions) Error Flows Subflows Special requirements Technology & data variations
list Frequency of occurrence Open Issues
![Page 23: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/23.jpg)
Fully Dressed Example: Process Sale, Larman text, p. 68 ff.
Primary Actor: CashierStakeholders and Interests:- Cashier: Wants accurate, fast entry, and no payment errors, as cash
drawer shortages are deducted from his/her salary.- Salesperson: Wants sales commissions updated.- Customer: Wants purchase and fast service with minimal effort. Wants
proof of purchase to support returns.- Company: Wants to accurately record transactions and satisfy customer
interests. Wants to ensure that Payment Authorization Service payment receivables are recorded. Wants some fault tolerance to allow sales capture even if server components are unavailable. Wants automatic and fast update of accounting and inventory.
![Page 24: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/24.jpg)
Fully Dressed Example: Process Sale, Larman text, p. 68 ff. - continued
- Government Tax Agencies: Want to collect tax from every sale. May be multiple agnecies such as national, state, and county.
- Payment Authorization Service: Wants to receive digital authorization requests in the correct format and protocol. Wants to accurately account for their payables to the store.
Preconditions: Cashier is identified and authenticated.Success Guarantee (Postconditions): Sale is saved. Tax is
correctly calculated. Accounting and Inventory are updated. Commissions recorded. Receipt generated. Payment authorization approvals are recorded.
![Page 25: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/25.jpg)
Fully Dressed Example: Process Sale, Larman text, p. 68 ff. - continued
Main Success Scenario (of Basic Flow):
1. - 10.Extensions (Alternative Flows):*a.*b.1a2-4a
3a.3b.3c.3-6a-c4a5a-c6a7a-f9a-c
![Page 26: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/26.jpg)
Special Requirements:- Touch Screen UI on a large flat panel monitor. Text visible from 1
meter.- Credit auth. response within 30 seconds 90% of the time....Technology and Data Variations List:...Frequency of Occurrence: Could be nearly continuous.Open Issues:- What are the tax law variations?- Explore the remote service recovery issue.- What customization is needed for different businesses?
Fully Dressed Example: Process Sale, Larman text, p. 68 ff. – cont.
![Page 27: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/27.jpg)
Now what -- after development of use case(s)
Look for consistency, correctness, completeness–Most important for core requirements likely to be implemented
soonBy translation to other formats
–See Vision Document–State diagrams and tables–Event tables–Condition tables–Domain diagram (UML)
![Page 28: Requirements Analysis&Requirements Specification](https://reader033.vdocument.in/reader033/viewer/2022061113/545e8286af795944708b4888/html5/thumbnails/28.jpg)
References
1 “Requirements Analysis,” Richard Thayer, SMC 10/97 Version 2, 1997
2 “IEEE Guide for Software Requirements Specification,” IEEE 830-1998
3 “Software Requirements:Objects, Functions, and States”, Prentice Hall, 1993
4 Software Quality Measurement for Distributed Systems, RADC-TR-83-175