Software requirements engineering problems and challenges erp implementation as a case study:
Requirements Engineering
Why are Requirements so important?
Purpose of Requirements Engineering
RE process inputs and outputs
Requirements Engineering Activities
Requirements Quality
Requirements quality indicators
Systems RE Standards
Requirements problems and challenges
Research Strategies in RE
RE Research directions
Conclusion
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Software requirements engineering problems and challenges erp implementation as a case study
1. Software Requirements Engineering Problems
and Challenges: ERP Implementation as a Case
Study (COTS Requirements Engineering)
PREPARED BY : DR. HAMDAN M. AL-SABRI 2014
College of Computer and Information Sciences
Information Systems
2. Outline
Requirements Engineering
Why are Requirements so important?
Purpose of Requirements Engineering
RE process inputs and outputs
Requirements Engineering Activities
Requirements Quality
Requirements quality indicators
Systems RE Standards
Requirements problems and challenges
Research Strategies in RE
RE Research directions
Conclusion by Dr. Hamdan Al-Sabri
3. What are requirements?
IEEE Std 610.12,”IEEE Standard Glossary of Software Engineering Terminology”
A condition or capability needed by a user to solve a problem or
achieve an objective.
A condition or capability that must be met or possessed by a system or
system component to satisfy a contract, standard, specification, or
other formally imposed documents.
A documented representation of a condition or capability as in (1) or
(2).
Ref: [1][2]2014 1by Dr. Hamdan Al-Sabri
4. Requirements Classification
Requirements
Process Product
Cost
Marketing
Lead time
Distribution
Organization
Documentation
Functional Nonfunctional
For User
User interface
Use cases
Services
For Developer
Architecture
Load balancing
Power supply
For User
Performance
Reliability
Usability
For Developer
Testability
Maintainability
Libraries and tools
Ref: [3]2014 2by Dr. Hamdan Al-Sabri
8. Why are Requirements so important?
Distribution of defects in software projects Distribution of effort to repair defects
RE are becoming the cornerstone of develop high-quality systems
Code 7%
Other 10%
Design
27%
Requirements
56%
Other 4%
Design 13%
Requirements
82%
Code 1%
Ref: [5][6]2014 6by Dr. Hamdan Al-Sabri
9. Purpose of Requirements Engineering
Determine the requirements for a system
Functional Requirements,
Non-functional Requirements, and
Other types of Requirements
Support consequent development activities
Architecture design,
Implementation, and
Test
Ref: [7]2014 7User needs SystemRequirement Engineeringby Dr. Hamdan Al-Sabri
10. RE process inputs and outputs
Existing Systems
Information
Stakeholder Needs
Organizational
Standards
Regulations
Domain Information
Agreed
Requirements
System
Specification
System ModelsRequirements
Engineering Process
Ref: [2]2014 8by Dr. Hamdan Al-Sabri
12. Requirements Development Environments
Requirements Development Environments
Cloud Computing
Follow the sun
(without time
overlapping)
Global Software
Development ( time
overlapping)
Colocation ( same time,
same place)
Ref: [6][8]2014 9by Dr. Hamdan Al-Sabri
13. Requirements Elicitation Techniques
ClassificationTechnique name
Traditional techniquesInterviews, Surveys, Questionnaires, Analysis of
existing documentation, Meetings,…..
Group elicitation techniquesRAD/JAD , Brainstorming ,…
Collaborative techniquesPrototyping,…
Contextual techniquesParticipant observation , Conversation
analysis,…
……
Ref: [8][9][10][11]2014 10by Dr. Hamdan Al-Sabri
14. Requirements Elicitation Methods
UsingMethods name
FacilitationFive whys, Use cases, ,...
Prioritizing NeedsWiegers Prioritization Matrix Analytical
Hierarchy Process (AHP), Borda's Method,…
Transforming gathered data into requirementsArchitecture tradeoff analysis, Rapid
prototyping,…
Methodology based requirements elicitationStructured Analysis and Design,…
Identifying stakeholders, eliciting their
requirements
Systemic Enterprise Architecture Method
(SEAM) ,…
……
Ref: [12][13][14]2014 11by Dr. Hamdan Al-Sabri
15. Requirements Elicitation Approaches
UsingApproaches name
To improving operational processesOperational processes approach [15]
To elicit software requirements through surveysSurveys approach [16]
To the requirements elicitation process in
complex situations.
Systems thinking-based perspective and
approach [17]
Used for establish connect from the business
context to elicited requirements for solution
development
Business context approach [18]
To elicit the software requirements and its
prioritization of the requirements
Algorithmic approach [19]
……
Ref: [15][16][17][18][19]2014 12by Dr. Hamdan Al-Sabri
16. Requirements Elicitation Tools
UsingTools name
Requirements ElicitationRequisitPro
Requirements Elicitation, R ManagementDOORS
Requirements ElicitationGroupware
Requirements ElicitationAbsFindeer
Requirements ElicitationART-SCENE
……
Ref: [20][21]2014 13by Dr. Hamdan Al-Sabri
17. A Good Set of Requirements is…
Feasible
Complete
Non-
redundant
Correct
Clear
Unambiguous
Testable
(Verifiable)
Independent
Traceable
Consistent
Ref: [22][23]2014 14by Dr. Hamdan Al-Sabri
18. Requirements Quality (IEEE803)
Number of weak phrases
Number of optional phrases
Ambiguity
Number of TBDs/TBAs
Completeness
Document Structure
Readability indexUnderstandability
Life cycle changes when
change is made
Count of changes/count of
requirements
Volatility
No. of SW requirements not
traced to system requirements
No. of SW requirements not
traced to code and test
Tractability
Requirements
quality
Ref: [24]2014 15by Dr. Hamdan Al-Sabri
19. Requirements Quality Indicators (ARM)
Quality
indicators
(requirement
statements)
Imperatives
Command words. (Shall, Must, Is required to,
Are applicable, Should,…)
Directives
Words are often used to make requirements
more understandable.(e.g., For example,
Figure, Table ,Note,…)
Continuances
Words that introduce more detailed
specification(below, as follows, following,
listed, in particular, support, and,… )
Options
Words that allowing the developer latitude
in implementing a requirement. This
introduces risks to schedule and cost. (can,
may, optionally,…)
Include words and phrases that introduce
uncertainty into requirements statements.
(as appropriate, as preferred, as possible,…)
Weak phrases
Ref: [24][25]2014 16by Dr. Hamdan Al-Sabri
20. Requirements Quality Indicators
Quality
indicators for
SRS as a whole
Size
Includes counts of three indicators: total
lines of text , total number of imperative
phases, total number specification
statements
Readability
Flesch reading ease index: the average
number of syllables per word and the
average number of words per sentence
Specification
depth
The number of imperative statements
found at each level of the document’s
text structure.
Text Structure
The number of quality indicators found at
each hierarchical level of the document
Ref: [24][25]2014 17by Dr. Hamdan Al-Sabri
21. Systems Requirements Engineering Standards
DescriptionStandards name
Standard for system and software quality
requirements and evaluation (SQyaRE)
ISO/IEC/IEEE 15288:2002
Standard for software product quality
requirements and evaluation (SQuaRE)
ISO/IEC 25030:2007
Standard for software life cycle processesISO/IEC/IEEE 12207:2008
Standard for system and software engineering
vocabulary
ISO/IEC/IEEE 24765:2010
Standard for software engineering, and guide
for requirements engineering tool capabilities
ISO/IEC TR 24766:2010
Standard for system engineering, application
and management of the systems engineering
process
IEEE 1220 (ISO/IEC 26702)
……
Ref: [26][27]2014 18by Dr. Hamdan Al-Sabri
22. Requirements problems and challenges
ClassificationProblems/Challenges/ Errors
Requirements problems
Incomplete requirements
Ambiguous requirements
Inconsistent requirements
Incomplete domain analysis
Missing requirements
Difficult to understand requirements
Incorrect requirements
Time-consuming and error-prone
Ref: [28][29][30][31][32]2014 19by Dr. Hamdan Al-Sabri
23. Requirements problems and challenges
ClassificationProblems/Challenges/ Errors
Challenges of global
requirements elicitation
Communication problem
Language problem
Time constraint
Domain identification
Stakeholder identification
Eliciting requirements
Techniques selection
Sources identification
Ref: [28][29][30][31][32]2014 20by Dr. Hamdan Al-Sabri
24. Requirements problems and challenges
ClassificationProblems/Challenges/ Errors
Challenges of requirements
development
Difficulty of identifying and accessing to the right
stakeholders
Missing domain analysis and domain description
Confusion between problem domain and solution domain
Not clarification requirements process
People errors (Requirement errors)
Communication
Participation
Domain knowledge
Ref: [28][29][30][31][32]2014 21by Dr. Hamdan Al-Sabri
25. Requirements problems and challenges
ClassificationProblems/Challenges/ Errors
process errors(Requirement errors)
Management
Elicitation
Analysis
Traceability
documentation
errors(Requirement errors)
Organization
No usage of standard
……
Ref: [28][29][30][31][32]2014 22by Dr. Hamdan Al-Sabri
26. ExampleDefinitionResearch Strategy
Shift toward Global Software
Development (GSD).
Introduce radically new ideas of
technologies to tackle a new or
existing problem.
Paradigm Shift
The concept of genetic algorithms
leverages ideas from biology (using to
improve the efficiency of searching for
an optimal requirements decision,...).
Leverage and recast principles,
practices, processes,…. From
another discipline.
Leverage other
disciplines
Use natural-language processing
techniques to parse textual requirements
descriptions.
Make advances by leveraging
new tools or technology
Leverage
New technology
New methodologies, patterns, strategies,
and tools.
Develop a new solution or
technique that applies narrowly
to a specific problem domain.
Evolutionary
Towards more domain-specific
specification languages that provide
native facilities for describing important
entities and behaviors in.
Develop a new solution or
technique that applies narrowly
to a specific problem domain.
Domain-specific
Research Strategies in RE
Ref: [33][34][36]2014 23by Dr. Hamdan Al-Sabri
27. Research Strategies in RE
ExampleDefinitionResearch Strategy
Abstract interfaces, and new
inspection strategies.
Develop processes or strategies
that make it easier or cheaper to
apply research solutions in
practice.
Engineering
Many of the ideas in
telecommunications notations, like
Message Sequence Charts and the
Specification and Description
Language, have been incorporated
into the more general Unified
Modeling Language 2.0.
Evaluate existing research
solutions – with respect to
specified metrics, real or realistic
problems, current practices, or
related research results.
Generalization
Ref: [33][34][36]2014 24by Dr. Hamdan Al-Sabri
28. RE Research directions
DescriptionDirection
Current modeling paradigms and analysis techniques cannot effectively
manage the Large-Scale systems, ultra-large-scale (CCS)).
Scale
How to improve software security (Nonfunctional requirements (Security))Security
How to extract tacit knowledge.KM with RE
Integrated systems, select suitable techniques, methods,….Increased Reliance
on the Environment
Self-managing systems (adapts its behavior at run time with new target
behavior), Self-healing systems (recover dynamically from system failure),
Self-optimizing systems (optimize their performance dynamically).
Self-Management
Systems
Ref: [21][33][34][35]2014 25by Dr. Hamdan Al-Sabri
29. RE Research directions
DescriptionDirection
Global Software Development (GSD)Globalization
Software Product LineRequirements Reuse
Sharing requirements, semantic wiki technology,…Collaborative RE
Assessment the software requirements, Quality matrix,…Quality assurance for
requirements
Semi-automated, fully automated for requirements developmentDegree of automation
……
Ref: [21][33][34][35]2014 26by Dr. Hamdan Al-Sabri
30. 2014 27
Interested Research Area in RE
Functional Requirements (For User)
Requirements
Classification
Requirements Development (Elicitation)RE Activities
Time-consuming and error-prone
R Problems and
Challenges
Leverage other disciplines, Evolutionary
Research
Strategies in RE
Self- Management Systems, Degree of
automation
RE Research
direction
Controlled Experiment, R Quality Matrix
Evaluation
Approach
Efficiency, Correctness& Completeness
Evaluation
Concepts
by Dr. Hamdan Al-Sabri
31. The State of the art in automated R elicitation
Objectives
This paper aims to capture the current state of automated
requirements elicitation.
Method
A systematic review of the literature in automated
requirements elicitation,
Identified works are categorized using an analysis
framework.
Ref: [21]2014 28by Dr. Hamdan Al-Sabri
32. The State of the art in automated R elicitation
Degree of
Automation
Tool Category
Knowledge
Reuse
Evaluation
Approach
Evaluation
Concepts
Design Perspective Evaluation Perspective
Requirements
Identification
R Quality
Analysis
R Model
Generation
Abstraction
Identification
Semi-
Automation
Full
Automation
Retrieved
Knowledge
Imported
Knowledge
No
Knowledge
base
Proof of
Concept
Case Study
Simulation
Controlled
Experiment
No Evaluation
Concepts
Correctness&
Completeness
Efficiency
Other
Concepts
Ref: [21]2014 29by Dr. Hamdan Al-Sabri
33. RE for Software in Emerging Markets
Ref: [37]2014 30
Paper Summary
This paper explores the history and evolution of requirements
engineering processes (1970-2001).
Requirements Engineering Activities, and
Develop requirements engineering process model and
applied it to a case study; SERPENT.
by Dr. Hamdan Al-Sabri
34. Conclusion
Requirements engineering is the systematic approach to collecting, specifying,
analyzing, verifying, allocating, tracing and managing the requirements,
RE are becoming the cornerstone of develop high-quality systems,
There is quality matrix developed by IEEE, NASA to assessment the Software
Requirements Specification (SRS),
There are several standards for Systems Requirements Engineering that must be
followed when developing and management the requirements,
Although there are many techniques, methods, approaches, tools in RE filed.
there are still many problems in the requirements engineering that must be
addressed, and
The RE Research directions and research strategies has been discussed in this
presentation.
2014 31by Dr. Hamdan Al-Sabri
36. References…
[7] http://www.sse.uni-due.de/en/research-focus/requirements-engineering.
[8]Bashar Nuseibeh, Steve Easterbrook," Requirements Engineering: A Roadmap", 2000.
[9]J. A. Goguen and C. Linde, "Techniques for Requirements Elicitation", Proceedings of
Requirements Engineering '93, IEEE Computer Society, 1993.
[10]Maiden, N. & Rugg, G.,"ACRE: Selecting Methods For Requirements Acquisition", Software
Engineering Journal, 11(3): 183-192, 1996.
[11]van Lamsweerde, A., Darimont, R. & Letier, E. "Managing conflicts in goal-driven
requirements engineering", IEEE Transactions on Software Engineering, 24(11): 908-926, 1998.
[12]Yvonne Bijan, Junfang Yu, Jerrell Stracener, and Timothy Woods, " Systems Requirements
Engineering—State of the Methodology", Wiley Periodicals, Systems Engineering, 2013.
[13]Ivan J. Jureta, " Requirements Engineering Methods: A Classification Framework and
Research Challenges", 2012.
2014 33by Dr. Hamdan Al-Sabri
37. References…
[14]Carla Pacheco, Ivan Garcia, "A systematic literature review of stakeholder identification
methods in requirements elicitation", Elsevier, the Journal of Systems and Software, 2012.
[15] Len Bass, Ross Jeffery, Hiroshi Wada, Ingo Weber, Liming Zhu, " Eliciting Operations
Requirements for Applications", IEEE, 2013.
[16]Hrvoje Belani, Krešimir Pripužić and Katarina Kobaš,"Implementing Web-Surveys for Software
Requirements Elicitation", 2005.
[17]Polinpapilinho F. Katina, Charles B. Keating, Ra’ed M. Jaradat, "System requirements
engineering in complex situations", Springer, Requirements Engineer, 2012.
[18]Padmalata Nistala, Supriya Kummamuru, MGPL Narayana, " An approach to understand
and elicit requirements using systemic models: Ensuring a connect from problem context to
requirements", ELSEVIER, 2013.
[19]Mohd. Sadiq, Shabina Ghafir, Mohd. Shahid, " An Approach for Eliciting Software
Requirements and its Prioritization using Analytic Hierarchy Process", IEEE, International
Conference on Advances in Recent Technologies in Communication and Computing, 2009.
2014 34by Dr. Hamdan Al-Sabri
38. References…
[20]Cristina Palomares, Carme Quer, Xavier Franch," PABRE-Proj: Applying Patterns in
Requirements Elicitation", IEEE, 2013.
[21]Hendrik Meth, Manuel Brhel, Alexander Maedche, " The state of the art in automated
requirements elicitation", Elsevier, Information and Software Technology, 2013.
[22]Yudistira Asnar , Paolo Giorgini, John Mylopoulos, " Goal-driven risk assessment in
requirements engineering", Springer, 2010.
[23]Mahmood Niazi, Karl Cox, June Verner, " A measurement framework for assessing the
maturity of requirements engineering process", Springer, 2007.
[24]Nathan Carlson, Phil Laplante, "The NASA automated requirements measurement tool: a
reconstruction", Springer, Innovations Syst Softw Eng, 2014.
[25]Yudistira Asnar , Paolo Giorgini, John Mylopoulos, " Goal-driven risk assessment in
requirements engineering", Springer, 2010.
2014 35by Dr. Hamdan Al-Sabri
39. References…
[26]Florian Schneidera, Brian Berenbach, "A Literature Survey on International Standards for
Systems Requirements Engineering", ELSEVIER, Conference on Systems Engineering Research
(CSER’13), 2013.
[27]International Organization for Standardization, “ISO/IEC/IEEE 29148:2011 - Systems and
software engineering — Life cycle processes — Requirements engineering,” ISO/IEC/IEEE, Nov.
2011.
[28]Nosheen Sabahat, Faiza Iqbal, Farooque Azam, Muhammad Younus Javed, "An Iterative
Approach for Global Requirements Elicitation: A Case Study Analysis", International
Conference on Electronics and Information Engineering (ICEIE), 2010.
[29]Rafael Capilla, Muhammad Ali Babar," Quality requirements engineering for systems and
software architecting: methods, approaches, and tools", Springer, Requirements Eng, 2012.
[30]Sandra Kelly, Frank Keenan, Fergal McCaffery , "Challenges for Requirements
Development: An Industry Perspective", Communications in Computer and Information
Science Volume 155, pp 217-220, 2011.
2014 36by Dr. Hamdan Al-Sabri
40. References…
[31]Gursimran Singh Walia, Jeffrey C. Carver, "A systematic literature review to identify and
classify software requirement errors", ELSEVIER, Information and Software Technology, 2009.
[32]Raoul Jetley, Anil Nair, Prakash Chandrasekaran, Alpana Dubey, " Applying Software
Engineering Practices for Development of Industrial Automation Applications", IEEE, 2013.
[33]Betty H.C. Cheng and Joanne M. Atlee,” Research Directions in Requirements
Engineering”, IEEE, 2009.
[34]Ernst Sikor, Bastian Tenbergen, Klaus Pohl, “ Industry needs and research directions in
requirements engineering for embedded systems”, requirements eng, Springer, 2011.
[35]John Favaro, Hans,” Next Generation Requirements Engineering”, INCOSE, 2012.
[37]Bin Ling, Adam Chenog, “ Requirements Engineering for Software in Emerging Markets”,
IEEE, 2008.
2014 37by Dr. Hamdan Al-Sabri