srs presenation by group 6
TRANSCRIPT
Software Requirements:Are They Really A Problem?
Author:Author:
T. E. Bell and T. A. ThayerT. E. Bell and T. A. Thayer
TRW Defense and Space Systems, Group Redondo Beach, California
Presented by Group 5
Humayun Kayesh ShamolHumayun Kayesh Shamol BIT-0114BIT-0114 Md. Iftekharul Alam EfatMd. Iftekharul Alam Efat BIT-0115BIT-0115 Mohammad IbrahimMohammad Ibrahim BIT-0117BIT-0117 Asif Imran AnikAsif Imran Anik BIT-0119BIT-0119 Amit Seal AmiAmit Seal Ami BIT-0122BIT-0122 Mirza Rehnuma TabassumMirza Rehnuma Tabassum BIT-0129BIT-0129
January 29, 2015 2Software Requirement Specification
& Analysis
Outline:
IntroductionIntroduction Software RequirementsSoftware Requirements Characteristics of RequirementsCharacteristics of Requirements
Empirical DataEmpirical Data Data LimitationsData Limitations Small System CaseSmall System Case Large System CaseLarge System Case
January 29, 2015 3Software Requirement Specification
& Analysis
Definition:
Software requirements are requirements or Software requirements are requirements or required activities which are essential for software required activities which are essential for software project development.project development.
To derive the requirements we need to have clear To derive the requirements we need to have clear and thorough understanding of the products to be and thorough understanding of the products to be developed. This is prepared after detailed developed. This is prepared after detailed communications with project team and the communications with project team and the customer.customer.
January 29, 2015 4Software Requirement Specification
& Analysis
Characteristics of Requirements
January 29, 2015 5Software Requirement Specification
& Analysis
Why software requirements are needed:
Effective requirements are very essential Effective requirements are very essential for effective software project.for effective software project.
The problems caused by incorrect software The problems caused by incorrect software requirement are often not identified at all.requirement are often not identified at all.
January 29, 2015 6Software Requirement Specification
& Analysis
Approaches of software requirement process:
January 29, 2015 7Software Requirement Specification
& Analysis
Development Phases of the SystemDevelopment Cycle
January 29, 2015 8Software Requirement Specification
& Analysis
Empirical Data:
Derived from experiment and observation Derived from experiment and observation
rather than theoryrather than theory
Information documented during the projectInformation documented during the project
Data collected during the project through Data collected during the project through
observationobservation
January 29, 2015 9Software Requirement Specification
& Analysis
Problem Report:
Requirement deficiencies are written in the Requirement deficiencies are written in the problem reportsproblem reports
They are used to record the results of They are used to record the results of reviews or to request changesreviews or to request changes
Problem reports do not generally document Problem reports do not generally document the correction of deficiencies but they do the correction of deficiencies but they do record the symptoms of the problemrecord the symptoms of the problem
January 29, 2015 10Software Requirement Specification
& Analysis
Sources of Problem Reports
January 29, 2015 11Software Requirement Specification
& Analysis
Sources of Problem Reports:
Most of the problem reports are generated Most of the problem reports are generated during reviews, during design and during during reviews, during design and during implementationimplementation
The same software requirements deficiency The same software requirements deficiency may be identified at any of several points in may be identified at any of several points in the project life the project life
January 29, 2015 12Software Requirement Specification
& Analysis
Data Limitation
January 29, 2015 13Software Requirement Specification
& Analysis
Data Limitations
in
Software Requirement Problems report
January 29, 2015 14Software Requirement Specification
& Analysis
Limitations:
Develop project in undisciplined manner Develop project in undisciplined manner
Need for interpretation of textual materialsNeed for interpretation of textual materials
Insufficient information about the problems Insufficient information about the problems causescauses
January 29, 2015 15Software Requirement Specification
& Analysis
Apparently no problem in Apparently no problem in requirement existsrequirement exists
January 29, 2015 16Software Requirement Specification
& Analysis
Can't interpret problems into a Can't interpret problems into a general classified schemegeneral classified scheme
January 29, 2015 17Software Requirement Specification
& Analysis
Abstracting from unspecified Abstracting from unspecified problem statementproblem statement““Something is wrong”Something is wrong”
January 29, 2015 18Software Requirement Specification
& Analysis
The Main ProblemThe Main Problem
Not concerned about reason of problems Not concerned about reason of problems in requirementin requirement
January 29, 2015 19Software Requirement Specification
& Analysis
Small System Case
Chosen because:Chosen because: Environment can be controlledEnvironment can be controlled Observation of outcomes is possibleObservation of outcomes is possible Easily understandable system decisionsEasily understandable system decisions
January 29, 2015 20Software Requirement Specification
& Analysis
The Small System Case
A class divided to two teams by Dr. BoehmA class divided to two teams by Dr. Boehm Requirements TeamRequirements Team Design TeamDesign Team
All students received same All students received same
““Needs Statement”.Needs Statement”.
January 29, 2015 21Software Requirement Specification
& Analysis
January 29, 2015 22Software Requirement Specification
& Analysis
Small System Case
Student Employment Information SystemStudent Employment Information System accept and store information about accept and store information about
students' job qualifications and students' job qualifications and interestsinterests
employers' available openingemployers' available opening provide timely responses to students' provide timely responses to students'
or employers' job-matching queriesor employers' job-matching queries
January 29, 2015 23Software Requirement Specification
& Analysis
Small System Case
• Student Employment Information SystemStudent Employment Information System– track the progress of outstanding job track the progress of outstanding job
offersoffers– provide summary information on the provide summary information on the
job market to appropriate UCLA job market to appropriate UCLA administratorsadministrators
January 29, 2015 24Software Requirement Specification
& Analysis
The progress
Both teams met their time limits.Both teams met their time limits. Both Both informalinformal and formal meetings took and formal meetings took
place between themplace between them Record the problems by form (RPR)Record the problems by form (RPR)
January 29, 2015 25Software Requirement Specification
& Analysis
January 29, 2015 26Software Requirement Specification
& Analysis
What happened in Observation…
• Design team prepared Design team prepared – two designstwo designs
– Manual methodManual method• Batch data processing systemBatch data processing system
• Noticeable factor:Noticeable factor:– Design team estimated a cost which is Design team estimated a cost which is
about half the original costabout half the original cost
January 29, 2015 27Software Requirement Specification
& Analysis
Impressive (?) Requirements Document According to some senior TRW personnelAccording to some senior TRW personnel
Superior to most documentsSuperior to most documents More problem specificMore problem specific DirectDirect CompleteComplete
January 29, 2015 28Software Requirement Specification
& Analysis
Analyzing Document in Detail
20 RPR used by design team20 RPR used by design team 32 Problems in reality32 Problems in reality
Estimated number of problems: 50 (by Estimated number of problems: 50 (by Boehm)Boehm)
Still an underestimationStill an underestimation
January 29, 2015 29Software Requirement Specification
& Analysis
January 29, 2015 30Software Requirement Specification
& Analysis
Classification of Found Problems
Design team made 23 classificationsDesign team made 23 classifications Authors made 32 classificationsAuthors made 32 classifications Different definitions of classification by Different definitions of classification by
author and design teamauthor and design team Inconsistency-ambiguityInconsistency-ambiguity Design constraining – Incorrect Design constraining – Incorrect
requirementrequirement
January 29, 2015 31Software Requirement Specification
& Analysis
Analyzing the Case
Most common problems are:Most common problems are: AmbiguousAmbiguous Design constrainingDesign constraining
Statistically total number of problems seems Statistically total number of problems seems to be in excess of one (and probably in to be in excess of one (and probably in excess of two) times the number of pages in excess of two) times the number of pages in the requirements document.the requirements document.
January 29, 2015 32Software Requirement Specification
& Analysis
Large System Case
January 29, 2015 33Software Requirement Specification
& Analysis
Ballistic Missile Defense(BMD)
January 29, 2015 34Software Requirement Specification
& Analysis
Requirement Review:
1 million machine instructions1 million machine instructions
B-5 DocumentB-5 Document
Configuration Control Board (CCB)Configuration Control Board (CCB)
Classification of software error traceabilityClassification of software error traceability
STP development techniquesSTP development techniques
January 29, 2015 35Software Requirement Specification
& Analysis
Comparison:
Software Requirements Problems Early STP Experience (1973)
Software Requirements Problems Recent STP Experience (1975)
January 29, 2015 36Software Requirement Specification
& Analysis
Sample Requirement:
January 29, 2015 37Software Requirement Specification
& Analysis
January 29, 2015Software Requirement Specification
& Analysis38
Problem Strategy:
Categories 1-000 & 6-000Categories 1-000 & 6-000: register acceptable : register acceptable changeschanges
Category 2-000Category 2-000: violates technical & contractual : violates technical & contractual boundariesboundaries
Total of 722 problems reports & 972 unique Total of 722 problems reports & 972 unique requirements out of 8248 general requirement requirements out of 8248 general requirement (support paragraphs in the 2500 pages)(support paragraphs in the 2500 pages)
January 29, 2015 39Software Requirement Specification
& Analysis
Findings:
A huge number of requirementsA huge number of requirements
Details requirement for proper developmentDetails requirement for proper development
Change of requirement during project Change of requirement during project
lifetimelifetime
Good planning helps to reduce requirementGood planning helps to reduce requirement
January 29, 2015 40Software Requirement Specification
& Analysis
Requirement Challenges:
Difficult to control development environmentDifficult to control development environment Long development timeLong development time Large number of participantsLarge number of participants Complex requirement specifications & analysis Complex requirement specifications & analysis
phasephase Large number of variables & control functionLarge number of variables & control function Less supporting documentsLess supporting documents
January 29, 2015 41Software Requirement Specification
& Analysis
Reasons for Changing Requirements:
External reasonsExternal reasons Social & political factorsSocial & political factors Change in business & technological Change in business & technological
environmentenvironment Internal reasonsInternal reasons
Better understanding of functionalityBetter understanding of functionality Marketing & other business viewpointsMarketing & other business viewpoints
January 29, 2015 42Software Requirement Specification
& Analysis
Categories of Requirement Problems:
MissingMissing InadequateInadequate UnclearUnclear IncompleteIncomplete AccuracyAccuracy Criteria absentCriteria absent
January 29, 2015 43Software Requirement Specification
& Analysis
Quantity of Problems:
Sheer volume of problems encounteredSheer volume of problems encountered
Difficult to prioritize requirements due to large sizeDifficult to prioritize requirements due to large size
Unclearness in classification & organizationUnclearness in classification & organization
Difficult to document & keep track of the Difficult to document & keep track of the
requirementsrequirements
Failure to identify critical problemsFailure to identify critical problems
January 29, 2015 44Software Requirement Specification
& Analysis
Ways to Solve Problems:
Good understandabilityGood understandability
Better organization & classificationBetter organization & classification
Resolving conflicts timelyResolving conflicts timely
Documenting requirementsDocumenting requirements
Use of requirement management software toolsUse of requirement management software tools
January 29, 2015 45Software Requirement Specification
& Analysis
Critical Review Certain methods are outdated that have already been dealt Certain methods are outdated that have already been dealt
withwith Modules of data collection techniques deemed Modules of data collection techniques deemed
replaceablereplaceable Negligible use of Requirements Management ToolsNegligible use of Requirements Management Tools Requirement gathering methods like RPR replaceableRequirement gathering methods like RPR replaceable Manual documentation replaced by automated toolsManual documentation replaced by automated tools No mentioned use of case toolsNo mentioned use of case tools RMT has already replaced CCB mentioned hereRMT has already replaced CCB mentioned here Instant Retrieval of information have become automatedInstant Retrieval of information have become automated
Critical Review(continued)
Requirements traceability is automatedRequirements traceability is automated Change management process has become Change management process has become
automatedautomated Manual storage of data is outdatedManual storage of data is outdated Identification of critical requirements have Identification of critical requirements have
become automated as wellbecome automated as well
January 29, 2015 48Software Requirement Specification
& Analysis
January 29, 2015 49Software Requirement Specification
& Analysis