SlideShare a Scribd company logo
1 of 28
Requirements
              Engineering

              Mohamed Shaaban| Systems Analyst
              February 2011|   mohamed.shaaban@mail.link.net



w w w. l i n kd e v. c o m
w w w. l i n kd e v. c o m
Blind Men
and the
Elephant



            w w w. l i n kd e v. c o m
The blind man
who feels a leg
says the elephant
is like a pillar



              w w w. l i n kd e v. c o m
the one who feels
the tail says the
elephant is like
a rope



             w w w. l i n kd e v. c o m
the one who feels
the trunk says the
elephant is like a
tree branch



              w w w. l i n kd e v. c o m
the one who feels
the ear says the
elephant is like a
hand fan



              w w w. l i n kd e v. c o m
the one who feels
the belly says the
elephant is like a
wall



              w w w. l i n kd e v. c o m
and the one who
feels the tusk
says the elephant
is like a solid pipe



                w w w. l i n kd e v. c o m
The king explained to them:
"All of you are right. The reason why every one of you
is telling it differently is because each one of you
touched the different part of the elephant. So,
actually the elephant has all the features you
mentioned."




                    w w w. l i n kd e v. c o m
III. Requirements Analysis
  • The system is your elephant, and it has
    multiple views:
    – Process Analysis
    – System Analysis
    – Functions Analysis
    – Reports Analysis



                    w w w. l i n kd e v. c o m
Process Analysis
 • Swimlane Activity Diagrams
    – Depict the flow of activities
    – A lane is assigned to each actor
    – Data is not present
    – Allows you to pinpoint problems
    – Can be used to compare existing models with
      proposed models


                    w w w. l i n kd e v. c o m
Process Analysis
   – Swimlane example




                  w w w. l i n kd e v. c o m
Process Analysis
  • Flowcharts
    – Decide on the level of abstraction you want to
      include
    – More user friendly
    – Less focus on actors
    – Better view of routing decisions




                    w w w. l i n kd e v. c o m
Process Analysis
    – Flowcharts example




                   w w w. l i n kd e v. c o m
System Analysis
  • System Leveling for Scoping
                   System Name



  Major Module 1             Major Module 2                       Major Module 3


                                                         Task 1
                                   Function 1
                                                         Task 2


                                   Function 2            Task 3

                            w w w. l i n kd e v. c o m
System Analysis
  • User Stories
     – Agile concept
     – Define user roles and goals
        • As a book buyer, I want to browse books
        • As a system admin, I want to cancel a transaction
     – Find out the details of each story
        • What is the result of the action, from a business perspective? e.g.
          after payment, do shipping?
        • What is the result of the action, from a system perspective? e.g.
          after saving request, notify user? Keep data?
     – Find the links between stories
        • Will order cancellation affect payment? Shipping?
     – A good story is singular, estimable, and testable

                          w w w. l i n kd e v. c o m
System Analysis
  • Use Cases
    – Scenario description: the user interaction with the
      system
    – Easier to envision and customer-friendly
    – Summarized enough to produce test cases
    – They lack the integration aspect
    – They say very little of the data
    – They deal poorly with quality requirements

                    w w w. l i n kd e v. c o m
System Analysis
     – Use Cases example
   Usecase ID          UC-CusAcc-1
   Description         This usecase scenario describes the steps of creating a new customer profile
                       on the system
   Actors              Sales agent
   Assumptions &       None
   Constraints
   Pre-Conditions          The sales agent has an active user account and logged in to the system
   Basic Flow          1.   The sales agent chooses to create a new customer profile
                       2.   The system displays the New Customer Profile form (see Data Form 1)
                       3.   The sales agent fills in the form fields and submits it
                       4.   The system checks uniqueness of customer data against existing
                            accounts. Please refer to Uniqueness Check for more information
                       5.   For new customers, the system saves their information and requests a
                            unique identifier (UCID) from the CRM system
                       6.    The system displays a message that confirms creation of the profile to
                            the agent. The message includes the UCID

   Alternative Flows       In step #5, in case the CRM system is down, the system (Offline Sales
                            Portal) should generate a UCID for the new profile, as well as enable the
                            agent to enter a UCID manually into the form. The UCID provided by the
                            agent should w .validateddfor uniqueness against the system database
                                    w w be l i n k e v . c o m
   Post Conditions      A new customer profile is created to which new sales can be linked
   Notes               Please refer to Figure 3.1
Functions Analysis
• The following attributes generate the requirement
   – Who: who will do an action, and who will receive it or be affected by it
   – Why: the real need, the problem that the requirement will solve
   – What: the business activity. There are 3 “whats”:
       • What does the user do (as-is)
       • What does he want (the real problem)
       • What does he ask for (to-be)
   – Where: the environment in which the work takes place, and the scope
     of implementation across geographical areas and branches
   – When: timing, not only of delivery but also of the inclusion in the
     process
   – How: the implementation, how will the problem be solved (design)


                             w w w. l i n kd e v. c o m
Functions Analysis
  • Method H

                            Functionality
                           What do you do?
            Inputs                                  Outputs
                            Business Rules      What do you give
         What do other
                           What rules apply?    to other people?
        people give you?
                                 Data
                           What do you need
                           to keep track of?




                       w w w. l i n kd e v. c o m
Functions Analysis
    – Method H example: employee monthly payment
                               Functionality
                           •Take out deductions
                           •Take out taxes/loans
                                •Print check
                                 •Post to GL
         Inputs                Business Rules               Outputs
      •Hours worked      •Check with manager before          •Check
    •Managers approval            calculation           •Payments record
                         •Don’t calculate if employee
                                    is fired
                                    Data
                             •Employee records
                              •Deduction tables
                                 •Taxes table
                          w w w. l i n kd e v. c o m
Reports Analysis
• Think about the following
  – Description: why do users need this report?
  – Distribution method: will the report be printed? Will it
    be automatically generated and emailed to customers?
  – Specific output formats: PDF, Excel… etc
  – Report usage frequency: daily, monthly, yearly?
  – Filtering of data
  – Sorting of rows and order of columns
  – Grouping rules: by department, then employees title?
  – Formulas: subtotals, grand totals, average… etc
                     w w w. l i n kd e v. c o m
IV Requirements Communication
• Possible Analyst Deliverables
   –   Stakeholders List
   –   Requirements Specifications Document
   –   Change Requests
   –   Prototype
        •   Horizontal: shallow view of the system with no logic
        •   Vertical: deep slice of the system
        •   Throw-away Prototype: in the form of paper and pen
        •   Evolutionary Prototype: like HTML, extended later to produce the actual
            application
   – Internal
        • Requirements Database
        • Traceability Matrices
        • Requirements Management Plan
                                w w w. l i n kd e v. c o m
IV Requirements Communication
• Recommended Documentation Practices
 Keyword               Meaning
 MUST, SHALL           Absolute requirement of the specification
 MUST NOT, SHALL NOT   Absolute prohibition of the specification
 SHOULD, RECOMMENDED   Requirement can be ignored if there’s a valid reason, but
                       the implication must be understood and communicated
                       before choosing a different approach
 SHOULD NOT, NOT       A particular item may be acceptable in certain situations,
 RECOMMENDED           but the implication must be understood and
                       communicated before implementing it
 MAY, OPTIONAL         A requirement is optional


                         w w w. l i n kd e v. c o m
IV Requirements Communication
 – Naming Consistency: make sure you use the same
   terminology with one definition
 – Separate facts from assumptions and goals from
   requirements
 – Writing for an audience
    • Sophisticated vs. Simple, average users
 – Introductory section
    •   Always write an introduction to orient readers
    •   Include document purpose, audience, and scope
    •   Refer to relevant documents
    •   Introduce the product
                        w w w. l i n kd e v. c o m
IV Requirements Communication
• Types of Revision
  – Peer Review: Help you see weak points without the
    pressure of a supervisor judgment
  – Technical Review
     • Developers
     • Quality Control
     • Quality Assurance
  – External/Customer Review
     • Agreement on Requirements and Signoff

                       w w w. l i n kd e v. c o m
IV Requirements Communication
• Revision Strategy
  – Check the flow of ideas
  – Validate the accuracy of information
  – Review pictures: location and caption
  – Check clarity and consistency
  – Proofread: check grammar, spelling, and punctuation
  – Confirm accuracy of the Table of
    Content, References, and Index

                      w w w. l i n kd e v. c o m
Thank You




w w w. l i n kd e v. c o m

More Related Content

What's hot

The importance of requirement elicitation and analysis
The importance of requirement elicitation and analysisThe importance of requirement elicitation and analysis
The importance of requirement elicitation and analysisTunde Adeniran
 
Software Requirement Elicitation Techniques http://www.imran.xyz
Software Requirement Elicitation Techniques http://www.imran.xyzSoftware Requirement Elicitation Techniques http://www.imran.xyz
Software Requirement Elicitation Techniques http://www.imran.xyzImran Hussain Khan
 
Lecture4 requirement engineering
Lecture4 requirement engineeringLecture4 requirement engineering
Lecture4 requirement engineeringShahid Riaz
 
Chp3 requirments analysis
Chp3 requirments analysisChp3 requirments analysis
Chp3 requirments analysisasmaanawaiseh
 
Software requirements engineering
Software requirements engineeringSoftware requirements engineering
Software requirements engineeringDr. Hamdan Al-Sabri
 
Requirement elicitation
Requirement elicitationRequirement elicitation
Requirement elicitationSHIVANGI GOEL
 
software requirement
software requirement software requirement
software requirement nimmik4u
 
Elicitation Techniques
Elicitation TechniquesElicitation Techniques
Elicitation TechniquesSwati Sinha
 
Design for non functional requirements
Design for non functional requirementsDesign for non functional requirements
Design for non functional requirementsHabeeb Mahaboob
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Business requirement analysis session 5
Business requirement analysis   session 5Business requirement analysis   session 5
Business requirement analysis session 5sampad_senapati
 

What's hot (19)

The importance of requirement elicitation and analysis
The importance of requirement elicitation and analysisThe importance of requirement elicitation and analysis
The importance of requirement elicitation and analysis
 
Requirements Elicitation
Requirements ElicitationRequirements Elicitation
Requirements Elicitation
 
Software Requirement Elicitation Techniques http://www.imran.xyz
Software Requirement Elicitation Techniques http://www.imran.xyzSoftware Requirement Elicitation Techniques http://www.imran.xyz
Software Requirement Elicitation Techniques http://www.imran.xyz
 
Lecture4 requirement engineering
Lecture4 requirement engineeringLecture4 requirement engineering
Lecture4 requirement engineering
 
Introduction
IntroductionIntroduction
Introduction
 
Chp3 requirments analysis
Chp3 requirments analysisChp3 requirments analysis
Chp3 requirments analysis
 
Software requirements engineering
Software requirements engineeringSoftware requirements engineering
Software requirements engineering
 
Chap04
Chap04Chap04
Chap04
 
Requirement elicitation
Requirement elicitationRequirement elicitation
Requirement elicitation
 
software requirement
software requirement software requirement
software requirement
 
Chap03
Chap03Chap03
Chap03
 
Chapter 04
Chapter 04Chapter 04
Chapter 04
 
Elicitation Techniques
Elicitation TechniquesElicitation Techniques
Elicitation Techniques
 
Design for non functional requirements
Design for non functional requirementsDesign for non functional requirements
Design for non functional requirements
 
Chapter03
Chapter03Chapter03
Chapter03
 
Chap07
Chap07Chap07
Chap07
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Business requirement analysis session 5
Business requirement analysis   session 5Business requirement analysis   session 5
Business requirement analysis session 5
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 

Similar to Requirements Engineering Insights

SDLC. BA Role
SDLC. BA RoleSDLC. BA Role
SDLC. BA Roleeleksdev
 
Chapter 4 ASE Slides ppt
Chapter 4  ASE Slides pptChapter 4  ASE Slides ppt
Chapter 4 ASE Slides pptMr SMAK
 
Lecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptxLecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptxGracePeter10
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling Benazir Fathima
 
5 Secret Weapons Of A Great Salesforce Architect
5 Secret Weapons Of A Great Salesforce Architect5 Secret Weapons Of A Great Salesforce Architect
5 Secret Weapons Of A Great Salesforce ArchitectSebastian Wagner
 
Software Requirements_Se lect8 btech
Software Requirements_Se lect8 btechSoftware Requirements_Se lect8 btech
Software Requirements_Se lect8 btechIIITA
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringsnehalkulkarni74
 
Software Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsSoftware Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsTaymoor Nazmy
 
16_10_2018 non functional requirements v
16_10_2018 non functional requirements v16_10_2018 non functional requirements v
16_10_2018 non functional requirements vbeyokob767
 
06 business and functional requirements
06 business and functional requirements06 business and functional requirements
06 business and functional requirementsNamita Razdan
 
Business Analyst Requirements Management
Business Analyst Requirements Management Business Analyst Requirements Management
Business Analyst Requirements Management Mark Borowski
 
Use Case Modelling.pptx
Use Case Modelling.pptxUse Case Modelling.pptx
Use Case Modelling.pptxazida3
 
Adept Change Management_Panna Visani 2015_1
Adept Change Management_Panna Visani 2015_1Adept Change Management_Panna Visani 2015_1
Adept Change Management_Panna Visani 2015_1Panna Visani MBCS ACCA
 
Requirements engineering iv
Requirements engineering ivRequirements engineering iv
Requirements engineering ivindrisrozas
 
The final frontier
The final frontierThe final frontier
The final frontierTerry Bunio
 

Similar to Requirements Engineering Insights (20)

SDLC. BA Role
SDLC. BA RoleSDLC. BA Role
SDLC. BA Role
 
Chapter 4 ASE Slides ppt
Chapter 4  ASE Slides pptChapter 4  ASE Slides ppt
Chapter 4 ASE Slides ppt
 
Lecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptxLecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptx
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
5 Secret Weapons Of A Great Salesforce Architect
5 Secret Weapons Of A Great Salesforce Architect5 Secret Weapons Of A Great Salesforce Architect
5 Secret Weapons Of A Great Salesforce Architect
 
Defining tasks for User Stories
Defining tasks for User StoriesDefining tasks for User Stories
Defining tasks for User Stories
 
Requirement Analysis - Software Enigneering
Requirement Analysis - Software EnigneeringRequirement Analysis - Software Enigneering
Requirement Analysis - Software Enigneering
 
Software Requirements_Se lect8 btech
Software Requirements_Se lect8 btechSoftware Requirements_Se lect8 btech
Software Requirements_Se lect8 btech
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineering
 
AT2012_Pune_UserStories_BhawanaGupta
AT2012_Pune_UserStories_BhawanaGuptaAT2012_Pune_UserStories_BhawanaGupta
AT2012_Pune_UserStories_BhawanaGupta
 
Software Engineering Lec 4-requirments
Software Engineering Lec 4-requirmentsSoftware Engineering Lec 4-requirments
Software Engineering Lec 4-requirments
 
16_10_2018 non functional requirements v
16_10_2018 non functional requirements v16_10_2018 non functional requirements v
16_10_2018 non functional requirements v
 
06 business and functional requirements
06 business and functional requirements06 business and functional requirements
06 business and functional requirements
 
Software Engineering .pdf
Software Engineering .pdfSoftware Engineering .pdf
Software Engineering .pdf
 
Spec by-example
Spec by-exampleSpec by-example
Spec by-example
 
Business Analyst Requirements Management
Business Analyst Requirements Management Business Analyst Requirements Management
Business Analyst Requirements Management
 
Use Case Modelling.pptx
Use Case Modelling.pptxUse Case Modelling.pptx
Use Case Modelling.pptx
 
Adept Change Management_Panna Visani 2015_1
Adept Change Management_Panna Visani 2015_1Adept Change Management_Panna Visani 2015_1
Adept Change Management_Panna Visani 2015_1
 
Requirements engineering iv
Requirements engineering ivRequirements engineering iv
Requirements engineering iv
 
The final frontier
The final frontierThe final frontier
The final frontier
 

More from Mohamed Shaaban

Smart Government - Beyond Automation
Smart Government  - Beyond AutomationSmart Government  - Beyond Automation
Smart Government - Beyond AutomationMohamed Shaaban
 
Charity Business Automation
Charity Business AutomationCharity Business Automation
Charity Business AutomationMohamed Shaaban
 
Introduction to Systems Analysis for Students
Introduction to Systems Analysis for StudentsIntroduction to Systems Analysis for Students
Introduction to Systems Analysis for StudentsMohamed Shaaban
 
Writing Winning Proposals
Writing Winning ProposalsWriting Winning Proposals
Writing Winning ProposalsMohamed Shaaban
 

More from Mohamed Shaaban (6)

Smart Government - Beyond Automation
Smart Government  - Beyond AutomationSmart Government  - Beyond Automation
Smart Government - Beyond Automation
 
Charity Business Automation
Charity Business AutomationCharity Business Automation
Charity Business Automation
 
Client Intelligence
Client IntelligenceClient Intelligence
Client Intelligence
 
Ultimus BPMS
Ultimus BPMSUltimus BPMS
Ultimus BPMS
 
Introduction to Systems Analysis for Students
Introduction to Systems Analysis for StudentsIntroduction to Systems Analysis for Students
Introduction to Systems Analysis for Students
 
Writing Winning Proposals
Writing Winning ProposalsWriting Winning Proposals
Writing Winning Proposals
 

Recently uploaded

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Recently uploaded (20)

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Requirements Engineering Insights

  • 1. Requirements Engineering Mohamed Shaaban| Systems Analyst February 2011| mohamed.shaaban@mail.link.net w w w. l i n kd e v. c o m w w w. l i n kd e v. c o m
  • 2. Blind Men and the Elephant w w w. l i n kd e v. c o m
  • 3. The blind man who feels a leg says the elephant is like a pillar w w w. l i n kd e v. c o m
  • 4. the one who feels the tail says the elephant is like a rope w w w. l i n kd e v. c o m
  • 5. the one who feels the trunk says the elephant is like a tree branch w w w. l i n kd e v. c o m
  • 6. the one who feels the ear says the elephant is like a hand fan w w w. l i n kd e v. c o m
  • 7. the one who feels the belly says the elephant is like a wall w w w. l i n kd e v. c o m
  • 8. and the one who feels the tusk says the elephant is like a solid pipe w w w. l i n kd e v. c o m
  • 9. The king explained to them: "All of you are right. The reason why every one of you is telling it differently is because each one of you touched the different part of the elephant. So, actually the elephant has all the features you mentioned." w w w. l i n kd e v. c o m
  • 10. III. Requirements Analysis • The system is your elephant, and it has multiple views: – Process Analysis – System Analysis – Functions Analysis – Reports Analysis w w w. l i n kd e v. c o m
  • 11. Process Analysis • Swimlane Activity Diagrams – Depict the flow of activities – A lane is assigned to each actor – Data is not present – Allows you to pinpoint problems – Can be used to compare existing models with proposed models w w w. l i n kd e v. c o m
  • 12. Process Analysis – Swimlane example w w w. l i n kd e v. c o m
  • 13. Process Analysis • Flowcharts – Decide on the level of abstraction you want to include – More user friendly – Less focus on actors – Better view of routing decisions w w w. l i n kd e v. c o m
  • 14. Process Analysis – Flowcharts example w w w. l i n kd e v. c o m
  • 15. System Analysis • System Leveling for Scoping System Name Major Module 1 Major Module 2 Major Module 3 Task 1 Function 1 Task 2 Function 2 Task 3 w w w. l i n kd e v. c o m
  • 16. System Analysis • User Stories – Agile concept – Define user roles and goals • As a book buyer, I want to browse books • As a system admin, I want to cancel a transaction – Find out the details of each story • What is the result of the action, from a business perspective? e.g. after payment, do shipping? • What is the result of the action, from a system perspective? e.g. after saving request, notify user? Keep data? – Find the links between stories • Will order cancellation affect payment? Shipping? – A good story is singular, estimable, and testable w w w. l i n kd e v. c o m
  • 17. System Analysis • Use Cases – Scenario description: the user interaction with the system – Easier to envision and customer-friendly – Summarized enough to produce test cases – They lack the integration aspect – They say very little of the data – They deal poorly with quality requirements w w w. l i n kd e v. c o m
  • 18. System Analysis – Use Cases example Usecase ID UC-CusAcc-1 Description This usecase scenario describes the steps of creating a new customer profile on the system Actors Sales agent Assumptions & None Constraints Pre-Conditions  The sales agent has an active user account and logged in to the system Basic Flow 1. The sales agent chooses to create a new customer profile 2. The system displays the New Customer Profile form (see Data Form 1) 3. The sales agent fills in the form fields and submits it 4. The system checks uniqueness of customer data against existing accounts. Please refer to Uniqueness Check for more information 5. For new customers, the system saves their information and requests a unique identifier (UCID) from the CRM system 6. The system displays a message that confirms creation of the profile to the agent. The message includes the UCID Alternative Flows  In step #5, in case the CRM system is down, the system (Offline Sales Portal) should generate a UCID for the new profile, as well as enable the agent to enter a UCID manually into the form. The UCID provided by the agent should w .validateddfor uniqueness against the system database w w be l i n k e v . c o m Post Conditions  A new customer profile is created to which new sales can be linked Notes Please refer to Figure 3.1
  • 19. Functions Analysis • The following attributes generate the requirement – Who: who will do an action, and who will receive it or be affected by it – Why: the real need, the problem that the requirement will solve – What: the business activity. There are 3 “whats”: • What does the user do (as-is) • What does he want (the real problem) • What does he ask for (to-be) – Where: the environment in which the work takes place, and the scope of implementation across geographical areas and branches – When: timing, not only of delivery but also of the inclusion in the process – How: the implementation, how will the problem be solved (design) w w w. l i n kd e v. c o m
  • 20. Functions Analysis • Method H Functionality What do you do? Inputs Outputs Business Rules What do you give What do other What rules apply? to other people? people give you? Data What do you need to keep track of? w w w. l i n kd e v. c o m
  • 21. Functions Analysis – Method H example: employee monthly payment Functionality •Take out deductions •Take out taxes/loans •Print check •Post to GL Inputs Business Rules Outputs •Hours worked •Check with manager before •Check •Managers approval calculation •Payments record •Don’t calculate if employee is fired Data •Employee records •Deduction tables •Taxes table w w w. l i n kd e v. c o m
  • 22. Reports Analysis • Think about the following – Description: why do users need this report? – Distribution method: will the report be printed? Will it be automatically generated and emailed to customers? – Specific output formats: PDF, Excel… etc – Report usage frequency: daily, monthly, yearly? – Filtering of data – Sorting of rows and order of columns – Grouping rules: by department, then employees title? – Formulas: subtotals, grand totals, average… etc w w w. l i n kd e v. c o m
  • 23. IV Requirements Communication • Possible Analyst Deliverables – Stakeholders List – Requirements Specifications Document – Change Requests – Prototype • Horizontal: shallow view of the system with no logic • Vertical: deep slice of the system • Throw-away Prototype: in the form of paper and pen • Evolutionary Prototype: like HTML, extended later to produce the actual application – Internal • Requirements Database • Traceability Matrices • Requirements Management Plan w w w. l i n kd e v. c o m
  • 24. IV Requirements Communication • Recommended Documentation Practices Keyword Meaning MUST, SHALL Absolute requirement of the specification MUST NOT, SHALL NOT Absolute prohibition of the specification SHOULD, RECOMMENDED Requirement can be ignored if there’s a valid reason, but the implication must be understood and communicated before choosing a different approach SHOULD NOT, NOT A particular item may be acceptable in certain situations, RECOMMENDED but the implication must be understood and communicated before implementing it MAY, OPTIONAL A requirement is optional w w w. l i n kd e v. c o m
  • 25. IV Requirements Communication – Naming Consistency: make sure you use the same terminology with one definition – Separate facts from assumptions and goals from requirements – Writing for an audience • Sophisticated vs. Simple, average users – Introductory section • Always write an introduction to orient readers • Include document purpose, audience, and scope • Refer to relevant documents • Introduce the product w w w. l i n kd e v. c o m
  • 26. IV Requirements Communication • Types of Revision – Peer Review: Help you see weak points without the pressure of a supervisor judgment – Technical Review • Developers • Quality Control • Quality Assurance – External/Customer Review • Agreement on Requirements and Signoff w w w. l i n kd e v. c o m
  • 27. IV Requirements Communication • Revision Strategy – Check the flow of ideas – Validate the accuracy of information – Review pictures: location and caption – Check clarity and consistency – Proofread: check grammar, spelling, and punctuation – Confirm accuracy of the Table of Content, References, and Index w w w. l i n kd e v. c o m
  • 28. Thank You w w w. l i n kd e v. c o m