SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
Assignment
Course Code: SWE-121
Course Title: Software Requirements Analysis & Design
Assignment Title: Modern Elicitation Process
SUBMITTED BY:
MD.ASHIQUR RAHMAN
ID: 152-35-1264
Section-C
Department of SWE
Daffodil International University
SUBMITTED TO:
DR. MD. ASRAF ALI
Associate Professor
Department of Software Engineering
Daffodil International University
Date of Submission: 09-11-2015
INDEX
Chapter Name: Page Number:
1. Introduction -------------------------------------------------- 01
2. What is Elicitation?
Prepare for Elicitation
------------------------------------- 02
3. Prototyping ----------------------- 03
4.Requirements reuse ------------------------------------- 04-05
5.Scenarios ---------------------------------------------------- 06
6.Brainstorming.
Joint Application Development
------------------------------------------------------- 07
7.User Centered Design
Conclusion
-------------------------------------- 08
8.Reference ----------------------------------------------------- 09
1
INTRODUCTION
Nowadays the usage of computer applications and software is increasing
day by day and these systems play a vital role in the management of
businesses existing today. Most of the software products developed today
is to extend the existing system functionalities. Due to the today’s
commercial on the shelf products development the vast range of fields
that uses the computers today, different services are expected by
customers,which make it difficult to develop software that fulfills the
expectations of the users. Since the 1960’s the development of computer
based systems has faced many problems that leaded to too many projects
being delayed and over budget. The systems that were delivered also did
not meet the requirements, or satisfy the intended purpose which
resulted in the dissatisfaction of the users. The main reason that could
be stated for this problem is difficulties faced in the gathering of
requirements, as requirements engineering is the first step in the
software development. Whenever the requirements engineers lack the
knowledge of the performance and characteristics of the different
elicitation methods, the activities related to requirements will fail, thus
leading to wrong gathering of requirements that makes the wrong
requirements specification document. The wrong specification document
set the improper objectives in product development phase. The product
developed with the wrong specification document never meets the
customers’ expectations and the intended services. Moreover, the
changes in the requirements in the middle of the project development
phase will lead to delay and increased cost. There are some famous cases
of software failure due to improper use of requirements elicitation
methods. One of such famous case is the Ariane5 Flight 501 (European
Ariane 5 expendable launch System) where the requirements
specifications of Ariane4 were reused. But, Ariane5’s flight path was
much different which could not be handled by the code developed using
Ariane4’s requirements specification. This is one of the examples which
show the importance of requirements elicitation and also the importance
of selecting the appropriate elicitation method.
Goals of this paper to describes the requirement elicitation process.
2
What is Elicitation?
A thorough discovery of business requirements is almost never readily available at an
analyst’s fingertips—rarely can requirements be quickly looked up as one would
gather information for a term paper or study for a test. Much of business or technical
requirements is not documented anywhere—it resides in the minds of stakeholders, in
feedback that has yet to be obtained from end users, and from a study of flowcharts
and surveys that have yet to be created. And so requirements must be elicited, or
drawn out, and the methodology in doing so must be logical and meticulous. The
importance of elicitation cannot be overstated, for it is the linchpin to any
requirements project. As one scholarly article notes: “Mistakes made in elicitation
have been shown many times to be major causes of systems failure or abandonment
and this has a very large cost either in the complete loss or the expense of fixing
mistakes.” Adequate study and preparation for elicitation can go a long way to
preventing these types of errors. The purpose of requirements elicitation, therefore, is
to thoroughly identify the business needs, risks, and assumptions associated with any
given project.
Prepare for Elicitation:
1. The first step in requirements elicitation is gleaning a comprehensive and
accurate understanding of the project’s business need. During the elicitation
process, an analyst’s strong understanding of the business need will help her
guard against scope creep and gold plating, as well as select the proper
stakeholders and elicitation techniques.
2. An analyst’s next step in eliciting requirements is ensuring that an adequate
amount and mix of stakeholders are secured for the project’s duration. For, as
BABOK 2.0 (Business Analysis Body of Knowledge, the definitive guide to
all things related to business analysis) notes, a good analyst must “actively
engage stakeholders in defining requirements.” According to BABOK, a
project’s stakeholders may include customers/end users, suppliers, the project
manager, quality analysis, regulators, project sponsors, operational support,
domain subject matter experts, and implementation subject matter experts. An
analyst must recruit the participation of appropriate stakeholders based on the
unique business needs of her project. After an analyst has identified and
recruited her stakeholders, and chosen the method(s) by which she will elicit
requirements (outlined below), it is advisable for her to schedule the time for
3
conducting those methods with stakeholders as far in advance as possible to ensure
adequate participation on their parts.
Modern Requirements Elicitation Techniques:
There are different types of modern elicitation techniques, which will be described in
the following section.
Prototyping:
Prototype is the representations or visualizations of the actual system parts
The prototype is designed in the early stages of the implementation of the project. It
provides the General idea of the actual system functions and the work flow.
Prototyping is used to gather the requirements from the users by presenting GUI
based system functions. The main aim of
Requirements Elicitation is to gather the requirements
before the product is developed. But it is difficult to
discover the additional requirements until it comes in
to usage or some body is actually using it. The process
of gathering the requirements from the stakeholders
and the end users is limited and it is difficult to
discover their expectations and the requirements on
the new product with out providing some model that
resembles the appearance of the real product. A
prototype represents the actual product in both
functional and graphical sense. It provides the
flexibility to the users and the stake holders to work
with the initial version of the product to understand the system and discuss them to
think of the additional and missed requirements. Prototyping is a most expensive than
the all other methods of requirements elicitation.
Prototypes are generally developed in the early stages of the actual product
development process. The software developers use these prototypes in the situations
like,
1. When the users are unable to express their requirements.
2. If it is a new product and the users have no experience with this product
3. When ever the requirements analysis and feasibility studies is difficult.
These prototypes are typically of two types. They are [1, 4, 31, 32],
1. Throw-away prototypes: This type of prototype is not reusable and hence is
4
discarded when ever the requirements elicitation process is complete.
2. Evolutionary prototypes: This type of prototypes is reusable. They are evolved
or improved according to the feedback and is given as the original product.
Advantages of Prototyping
• Reduces time of development.
• Reduces cost of development.
• The users provided with a visual representation, thus facilitating system
implementation.
• Provides high level of user satisfaction.
• The ways in which the system can be enhanced in future is known.
Disadvantages of Prototyping
• The users may expect the finished product to be the same as the prototype
• Developers may be tempted to stop with the prototype.
• Can lead to unfinished system implementation
Requirements reuse:
In the field of software engineering reusing the requirements of the existing system is
common method of requirements elicitation. Using the existing Knowledge to
develop the new product has many advantages that include low cost and less time.
Though each product has their own type of stake holders and users, there is still
number of situations that the reusing of the requirements takes place.
Example:
1. User interface designs of the application domain information
2. Different companies’ database and security policies.
Nowadays in software industries the more than half of the requirements for the new
project requirements are acquired from the existing projects. Although there is need to
check the requirements before they are used in the proposed product, the reuse.
requirements are already validated and analyzed thus reducing the time of testing.
“Successful reuse starts with the having an organizational culture that consciously
encourage reuse rather than reinvention”.
The various questions that help us to find the reusable requirements are,
5
What are the problems in the existing product?
What the proposed product should provide to over come the difficulties in the
existing product?
Who are the users and the stakeholders of the existing and proposed products?
It is difficult to say that particular proposed product is completely different from the
existing product, because it is easy to find reused requirements in any project
requirement specification.
Diagrammatic representation of Reusable requirements:
Stake holders will provide the related documents and the existing system
documents to find the reusable requirements. Some times the documents
of the existing product questionnaire are also helpful in finding the source
of reusable requirements. Finding and using the reusable requirements for
the projects is the best way of requirements
Elicitation.
6
Scenarios:
The scenarios of the particular system will give the working method of different
interaction sessions or the situations of the system. These scenarios are helpful for
requirements elicitation in two ways. They are:
1. Analyzing the different sessions of the system gives the flexibility to find the
requirements.
2. The user response after interaction with the scenarios will give the flexibility to
find the requirements.
Scenarios are generally used after the initial requirements specification is finished.
The scenarios are produced by the developers when the initial requirements are
collected and the basic idea about the functions to be provided by the system is
prepared. The developed scenarios will be used to find and prepare the detailed
requirements specification.
The method to prepare the scenario is as follows:
1. Scenario should start with the particular state called the starting point
2. Every state should be connected with the next state.
3. Every state should contain the Normal, exceptional and alternative flow of events.
4. Every state should describe the actions performed on that state.
5. The interaction should be ended with the final state.
Generally the software industries use the text based and picture based scenarios.
The developer provides the scenario model for the system. The user and the
requirements engineer work with the scenarios of the proposed system. The
requirements engineer takes the notes of the user comments, suggestions and
difficulties that user faced when interacting with the scenario. Scenarios of the
proposed system are always prepared with the involvement of the stake holders to
clarify what they require in each interaction. Use cases developed for the system are
the basic guidelines for the scenario models.
7
Brainstorming:
Brainstorming is a techniques used to generate new ideas and find the solution to a
specific issue. This is conducted as a conference with six to ten members. The
members are from the different departments and domain experts are also included.
This conference is headed by the organizer, who states the issue to be discussed. The
conference is generally held in a round table fashion. Every member person is allotted
with certain time interval to explain their ideas. Notepads are provided to all members
to write their ideas and suggestions. The team of brainstorming will then decide the
best idea by voting from the group and that idea is selected as the solution to the issue
discussed in the conference. Brainstorming can be used to answer the following
questions:
*What exactly the system should provide
*What are the business and organization rules required to follow
*What type of questions should be there in the interviews and questionnaires?
*What are the risk factors effect the proposed system development and what to do
avoid that?
Joint Application Development:
It is an organized and structured technique for requirements elicitation. This is
conducted in the same manner as brainstorming, except that the stakeholders and the
users are also allowed to participate and discuss on the design of the proposed system.
The participant in these sessions does not exceed 20 to 30.
The requirements engineers start the session by providing the general overview of the
system. The discussion with the stakeholders and the users continues until the final
requirements are gathered. This leads to elicitation of better requirements in the first
attempt and it reduces the time spent on the requirements phase.
The success of the JAD depends on:
1. leader of the JAD session
2. Developers, end-users and the stakeholders of the product.
3. Group involvement.
8
User Centered Design:
This method is similar to Joint Application Development. The one difference is that
the user acts as the part of the development team. The user takes active part in the
designing and development of the system. The user provides his ideas and contributes
his suggestions as a member of the development team. The activities involved in user
centered design shown in figure below.
Advantages of User Centered Design:
The user is closely involved with the development
The user feedback can be obtained immediately
Reduces time and cost spent on gathering user feedback.
Conclusion:
By Seeing above, We Can Understand it Plays An Important Role In
Requirement analysis. This assignment inspire me to learn more and more about
Modern Requirement process.
9
REFERENCES
1.http://www.modernanalyst.com/Resources/Articles/t
abid/115/ID/1427/An-Overview-of-Requirements-
Elicitation.aspx
2.http://www.divaportal.org/smash/get/diva2:215169/f
ulltext01
3. http://www.google.com
4. BABOK Guide 2.0 (Note that the BABOK Guide covers not only elicitation
but is a thorough reference to all aspects of business analysis.)
5.A Survey on Requirements Elicitation by Martin Fehrenbach.

Weitere ähnliche Inhalte

Was ist angesagt?

Requirement Engineering Challenges in Development of Software Applications an...
Requirement Engineering Challenges in Development of Software Applications an...Requirement Engineering Challenges in Development of Software Applications an...
Requirement Engineering Challenges in Development of Software Applications an...
Waqas Tariq
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
Slideshare
 
Software quality requirements and evaluation
Software quality requirements and evaluationSoftware quality requirements and evaluation
Software quality requirements and evaluation
Eric Lai
 

Was ist angesagt? (20)

Chapter 5 - Reviews
Chapter 5 - ReviewsChapter 5 - Reviews
Chapter 5 - Reviews
 
IRJET- Development Operations for Continuous Delivery
IRJET- Development Operations for Continuous DeliveryIRJET- Development Operations for Continuous Delivery
IRJET- Development Operations for Continuous Delivery
 
Agile software development and challenges
Agile software development and challengesAgile software development and challenges
Agile software development and challenges
 
Unit 2 analysis and software requirements
Unit 2 analysis and software requirementsUnit 2 analysis and software requirements
Unit 2 analysis and software requirements
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software Lifecycle
 
Agile software development and challenges
Agile software development and challengesAgile software development and challenges
Agile software development and challenges
 
Lecture 4
Lecture 4Lecture 4
Lecture 4
 
Requirement Engineering Challenges in Development of Software Applications an...
Requirement Engineering Challenges in Development of Software Applications an...Requirement Engineering Challenges in Development of Software Applications an...
Requirement Engineering Challenges in Development of Software Applications an...
 
Software Requirements and Specifications
Software Requirements and SpecificationsSoftware Requirements and Specifications
Software Requirements and Specifications
 
Machine Learning Approach for Quality Assessment and Prediction in Large Soft...
Machine Learning Approach for Quality Assessmentand Prediction in Large Soft...Machine Learning Approach for Quality Assessmentand Prediction in Large Soft...
Machine Learning Approach for Quality Assessment and Prediction in Large Soft...
 
SOFTWARE ENGINEERING
SOFTWARE ENGINEERINGSOFTWARE ENGINEERING
SOFTWARE ENGINEERING
 
Chapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and EnvironmentChapter 4 - Mobile Application Platforms, Tools and Environment
Chapter 4 - Mobile Application Platforms, Tools and Environment
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Software Testing - Beginners
Software Testing - Beginners Software Testing - Beginners
Software Testing - Beginners
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineering
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Software quality requirements and evaluation
Software quality requirements and evaluationSoftware quality requirements and evaluation
Software quality requirements and evaluation
 
Software quality
Software qualitySoftware quality
Software quality
 

Ähnlich wie Modern Elicitation Process

Fromscrumtokanbantowardlean
FromscrumtokanbantowardleanFromscrumtokanbantowardlean
Fromscrumtokanbantowardlean
Luca Aliberti
 

Ähnlich wie Modern Elicitation Process (20)

Sdpl1
Sdpl1Sdpl1
Sdpl1
 
software engineering
software engineering software engineering
software engineering
 
Management of time uncertainty in agile
Management of time uncertainty in agileManagement of time uncertainty in agile
Management of time uncertainty in agile
 
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
 
Software engineering the process
Software engineering the processSoftware engineering the process
Software engineering the process
 
Slcm sharbani bhattacharya
Slcm sharbani bhattacharyaSlcm sharbani bhattacharya
Slcm sharbani bhattacharya
 
Ijetcas14 545
Ijetcas14 545Ijetcas14 545
Ijetcas14 545
 
Process Models IN software Engineering
Process Models IN software EngineeringProcess Models IN software Engineering
Process Models IN software Engineering
 
The process
The processThe process
The process
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 
Agile projects are for delivering packaged software too
Agile projects are for delivering packaged software tooAgile projects are for delivering packaged software too
Agile projects are for delivering packaged software too
 
Agile projects
Agile projectsAgile projects
Agile projects
 
Asset Finance Agile Projects
Asset Finance Agile ProjectsAsset Finance Agile Projects
Asset Finance Agile Projects
 
SE-Lecture-2.pptx
SE-Lecture-2.pptxSE-Lecture-2.pptx
SE-Lecture-2.pptx
 
Prototyping
PrototypingPrototyping
Prototyping
 
Health Informatics- Module 2-Chapter 1.pptx
Health Informatics- Module 2-Chapter 1.pptxHealth Informatics- Module 2-Chapter 1.pptx
Health Informatics- Module 2-Chapter 1.pptx
 
Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)Software engineering (Unit-1 Introduction)
Software engineering (Unit-1 Introduction)
 
Fromscrumtokanbantowardlean
FromscrumtokanbantowardleanFromscrumtokanbantowardlean
Fromscrumtokanbantowardlean
 
Week_02.pptx
Week_02.pptxWeek_02.pptx
Week_02.pptx
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 

Mehr von Rajon

Pillar's of Pixel's | Project report
Pillar's of Pixel's | Project reportPillar's of Pixel's | Project report
Pillar's of Pixel's | Project report
Rajon
 

Mehr von Rajon (16)

Chat Application | RSD
Chat Application | RSDChat Application | RSD
Chat Application | RSD
 
AND | OR |XOR | Conditional | Bi-condtional
AND | OR |XOR | Conditional | Bi-condtionalAND | OR |XOR | Conditional | Bi-condtional
AND | OR |XOR | Conditional | Bi-condtional
 
Numerical Analysis lab 4
Numerical Analysis lab 4Numerical Analysis lab 4
Numerical Analysis lab 4
 
Pillar's of Pixel's | Project report
Pillar's of Pixel's | Project reportPillar's of Pixel's | Project report
Pillar's of Pixel's | Project report
 
Farm Manager | Project Proposal
Farm Manager | Project ProposalFarm Manager | Project Proposal
Farm Manager | Project Proposal
 
Pillar's of Pixel' | Project proposal
Pillar's of Pixel' | Project proposalPillar's of Pixel' | Project proposal
Pillar's of Pixel' | Project proposal
 
Displacement addressing
Displacement addressingDisplacement addressing
Displacement addressing
 
System Design Flow
System Design FlowSystem Design Flow
System Design Flow
 
Backup Photos- Project Proposal
Backup Photos- Project ProposalBackup Photos- Project Proposal
Backup Photos- Project Proposal
 
Chat Application - Requirements Analysis & Design
Chat Application - Requirements Analysis & DesignChat Application - Requirements Analysis & Design
Chat Application - Requirements Analysis & Design
 
Regular expression
Regular expressionRegular expression
Regular expression
 
Canvas
CanvasCanvas
Canvas
 
Chat Application FAQ
Chat Application FAQChat Application FAQ
Chat Application FAQ
 
Presentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life CyclePresentation On Software Testing Bug Life Cycle
Presentation On Software Testing Bug Life Cycle
 
Chat Application [Full Documentation]
Chat Application [Full Documentation]Chat Application [Full Documentation]
Chat Application [Full Documentation]
 
Presentation On Online Airline Ticket Booking Project Planning
Presentation On Online Airline Ticket Booking Project PlanningPresentation On Online Airline Ticket Booking Project Planning
Presentation On Online Airline Ticket Booking Project Planning
 

Kürzlich hochgeladen

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Kürzlich hochgeladen (20)

How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Plant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptxPlant propagation: Sexual and Asexual propapagation.pptx
Plant propagation: Sexual and Asexual propapagation.pptx
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 

Modern Elicitation Process

  • 1. Assignment Course Code: SWE-121 Course Title: Software Requirements Analysis & Design Assignment Title: Modern Elicitation Process SUBMITTED BY: MD.ASHIQUR RAHMAN ID: 152-35-1264 Section-C Department of SWE Daffodil International University SUBMITTED TO: DR. MD. ASRAF ALI Associate Professor Department of Software Engineering Daffodil International University Date of Submission: 09-11-2015
  • 2. INDEX Chapter Name: Page Number: 1. Introduction -------------------------------------------------- 01 2. What is Elicitation? Prepare for Elicitation ------------------------------------- 02 3. Prototyping ----------------------- 03 4.Requirements reuse ------------------------------------- 04-05 5.Scenarios ---------------------------------------------------- 06 6.Brainstorming. Joint Application Development ------------------------------------------------------- 07 7.User Centered Design Conclusion -------------------------------------- 08 8.Reference ----------------------------------------------------- 09
  • 3. 1 INTRODUCTION Nowadays the usage of computer applications and software is increasing day by day and these systems play a vital role in the management of businesses existing today. Most of the software products developed today is to extend the existing system functionalities. Due to the today’s commercial on the shelf products development the vast range of fields that uses the computers today, different services are expected by customers,which make it difficult to develop software that fulfills the expectations of the users. Since the 1960’s the development of computer based systems has faced many problems that leaded to too many projects being delayed and over budget. The systems that were delivered also did not meet the requirements, or satisfy the intended purpose which resulted in the dissatisfaction of the users. The main reason that could be stated for this problem is difficulties faced in the gathering of requirements, as requirements engineering is the first step in the software development. Whenever the requirements engineers lack the knowledge of the performance and characteristics of the different elicitation methods, the activities related to requirements will fail, thus leading to wrong gathering of requirements that makes the wrong requirements specification document. The wrong specification document set the improper objectives in product development phase. The product developed with the wrong specification document never meets the customers’ expectations and the intended services. Moreover, the changes in the requirements in the middle of the project development phase will lead to delay and increased cost. There are some famous cases of software failure due to improper use of requirements elicitation methods. One of such famous case is the Ariane5 Flight 501 (European Ariane 5 expendable launch System) where the requirements specifications of Ariane4 were reused. But, Ariane5’s flight path was much different which could not be handled by the code developed using Ariane4’s requirements specification. This is one of the examples which show the importance of requirements elicitation and also the importance of selecting the appropriate elicitation method. Goals of this paper to describes the requirement elicitation process.
  • 4. 2 What is Elicitation? A thorough discovery of business requirements is almost never readily available at an analyst’s fingertips—rarely can requirements be quickly looked up as one would gather information for a term paper or study for a test. Much of business or technical requirements is not documented anywhere—it resides in the minds of stakeholders, in feedback that has yet to be obtained from end users, and from a study of flowcharts and surveys that have yet to be created. And so requirements must be elicited, or drawn out, and the methodology in doing so must be logical and meticulous. The importance of elicitation cannot be overstated, for it is the linchpin to any requirements project. As one scholarly article notes: “Mistakes made in elicitation have been shown many times to be major causes of systems failure or abandonment and this has a very large cost either in the complete loss or the expense of fixing mistakes.” Adequate study and preparation for elicitation can go a long way to preventing these types of errors. The purpose of requirements elicitation, therefore, is to thoroughly identify the business needs, risks, and assumptions associated with any given project. Prepare for Elicitation: 1. The first step in requirements elicitation is gleaning a comprehensive and accurate understanding of the project’s business need. During the elicitation process, an analyst’s strong understanding of the business need will help her guard against scope creep and gold plating, as well as select the proper stakeholders and elicitation techniques. 2. An analyst’s next step in eliciting requirements is ensuring that an adequate amount and mix of stakeholders are secured for the project’s duration. For, as BABOK 2.0 (Business Analysis Body of Knowledge, the definitive guide to all things related to business analysis) notes, a good analyst must “actively engage stakeholders in defining requirements.” According to BABOK, a project’s stakeholders may include customers/end users, suppliers, the project manager, quality analysis, regulators, project sponsors, operational support, domain subject matter experts, and implementation subject matter experts. An analyst must recruit the participation of appropriate stakeholders based on the unique business needs of her project. After an analyst has identified and recruited her stakeholders, and chosen the method(s) by which she will elicit requirements (outlined below), it is advisable for her to schedule the time for
  • 5. 3 conducting those methods with stakeholders as far in advance as possible to ensure adequate participation on their parts. Modern Requirements Elicitation Techniques: There are different types of modern elicitation techniques, which will be described in the following section. Prototyping: Prototype is the representations or visualizations of the actual system parts The prototype is designed in the early stages of the implementation of the project. It provides the General idea of the actual system functions and the work flow. Prototyping is used to gather the requirements from the users by presenting GUI based system functions. The main aim of Requirements Elicitation is to gather the requirements before the product is developed. But it is difficult to discover the additional requirements until it comes in to usage or some body is actually using it. The process of gathering the requirements from the stakeholders and the end users is limited and it is difficult to discover their expectations and the requirements on the new product with out providing some model that resembles the appearance of the real product. A prototype represents the actual product in both functional and graphical sense. It provides the flexibility to the users and the stake holders to work with the initial version of the product to understand the system and discuss them to think of the additional and missed requirements. Prototyping is a most expensive than the all other methods of requirements elicitation. Prototypes are generally developed in the early stages of the actual product development process. The software developers use these prototypes in the situations like, 1. When the users are unable to express their requirements. 2. If it is a new product and the users have no experience with this product 3. When ever the requirements analysis and feasibility studies is difficult. These prototypes are typically of two types. They are [1, 4, 31, 32], 1. Throw-away prototypes: This type of prototype is not reusable and hence is
  • 6. 4 discarded when ever the requirements elicitation process is complete. 2. Evolutionary prototypes: This type of prototypes is reusable. They are evolved or improved according to the feedback and is given as the original product. Advantages of Prototyping • Reduces time of development. • Reduces cost of development. • The users provided with a visual representation, thus facilitating system implementation. • Provides high level of user satisfaction. • The ways in which the system can be enhanced in future is known. Disadvantages of Prototyping • The users may expect the finished product to be the same as the prototype • Developers may be tempted to stop with the prototype. • Can lead to unfinished system implementation Requirements reuse: In the field of software engineering reusing the requirements of the existing system is common method of requirements elicitation. Using the existing Knowledge to develop the new product has many advantages that include low cost and less time. Though each product has their own type of stake holders and users, there is still number of situations that the reusing of the requirements takes place. Example: 1. User interface designs of the application domain information 2. Different companies’ database and security policies. Nowadays in software industries the more than half of the requirements for the new project requirements are acquired from the existing projects. Although there is need to check the requirements before they are used in the proposed product, the reuse. requirements are already validated and analyzed thus reducing the time of testing. “Successful reuse starts with the having an organizational culture that consciously encourage reuse rather than reinvention”. The various questions that help us to find the reusable requirements are,
  • 7. 5 What are the problems in the existing product? What the proposed product should provide to over come the difficulties in the existing product? Who are the users and the stakeholders of the existing and proposed products? It is difficult to say that particular proposed product is completely different from the existing product, because it is easy to find reused requirements in any project requirement specification. Diagrammatic representation of Reusable requirements: Stake holders will provide the related documents and the existing system documents to find the reusable requirements. Some times the documents of the existing product questionnaire are also helpful in finding the source of reusable requirements. Finding and using the reusable requirements for the projects is the best way of requirements Elicitation.
  • 8. 6 Scenarios: The scenarios of the particular system will give the working method of different interaction sessions or the situations of the system. These scenarios are helpful for requirements elicitation in two ways. They are: 1. Analyzing the different sessions of the system gives the flexibility to find the requirements. 2. The user response after interaction with the scenarios will give the flexibility to find the requirements. Scenarios are generally used after the initial requirements specification is finished. The scenarios are produced by the developers when the initial requirements are collected and the basic idea about the functions to be provided by the system is prepared. The developed scenarios will be used to find and prepare the detailed requirements specification. The method to prepare the scenario is as follows: 1. Scenario should start with the particular state called the starting point 2. Every state should be connected with the next state. 3. Every state should contain the Normal, exceptional and alternative flow of events. 4. Every state should describe the actions performed on that state. 5. The interaction should be ended with the final state. Generally the software industries use the text based and picture based scenarios. The developer provides the scenario model for the system. The user and the requirements engineer work with the scenarios of the proposed system. The requirements engineer takes the notes of the user comments, suggestions and difficulties that user faced when interacting with the scenario. Scenarios of the proposed system are always prepared with the involvement of the stake holders to clarify what they require in each interaction. Use cases developed for the system are the basic guidelines for the scenario models.
  • 9. 7 Brainstorming: Brainstorming is a techniques used to generate new ideas and find the solution to a specific issue. This is conducted as a conference with six to ten members. The members are from the different departments and domain experts are also included. This conference is headed by the organizer, who states the issue to be discussed. The conference is generally held in a round table fashion. Every member person is allotted with certain time interval to explain their ideas. Notepads are provided to all members to write their ideas and suggestions. The team of brainstorming will then decide the best idea by voting from the group and that idea is selected as the solution to the issue discussed in the conference. Brainstorming can be used to answer the following questions: *What exactly the system should provide *What are the business and organization rules required to follow *What type of questions should be there in the interviews and questionnaires? *What are the risk factors effect the proposed system development and what to do avoid that? Joint Application Development: It is an organized and structured technique for requirements elicitation. This is conducted in the same manner as brainstorming, except that the stakeholders and the users are also allowed to participate and discuss on the design of the proposed system. The participant in these sessions does not exceed 20 to 30. The requirements engineers start the session by providing the general overview of the system. The discussion with the stakeholders and the users continues until the final requirements are gathered. This leads to elicitation of better requirements in the first attempt and it reduces the time spent on the requirements phase. The success of the JAD depends on: 1. leader of the JAD session 2. Developers, end-users and the stakeholders of the product. 3. Group involvement.
  • 10. 8 User Centered Design: This method is similar to Joint Application Development. The one difference is that the user acts as the part of the development team. The user takes active part in the designing and development of the system. The user provides his ideas and contributes his suggestions as a member of the development team. The activities involved in user centered design shown in figure below. Advantages of User Centered Design: The user is closely involved with the development The user feedback can be obtained immediately Reduces time and cost spent on gathering user feedback. Conclusion: By Seeing above, We Can Understand it Plays An Important Role In Requirement analysis. This assignment inspire me to learn more and more about Modern Requirement process.
  • 11. 9 REFERENCES 1.http://www.modernanalyst.com/Resources/Articles/t abid/115/ID/1427/An-Overview-of-Requirements- Elicitation.aspx 2.http://www.divaportal.org/smash/get/diva2:215169/f ulltext01 3. http://www.google.com 4. BABOK Guide 2.0 (Note that the BABOK Guide covers not only elicitation but is a thorough reference to all aspects of business analysis.) 5.A Survey on Requirements Elicitation by Martin Fehrenbach.