agile requirements engineering by abdulkerim corbo
TRANSCRIPT
![Page 1: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/1.jpg)
Agile Requirements Engineering
![Page 2: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/2.jpg)
About lecturer
Abdulkerim Corbo• Quality Assurance Engineer and Consultant• Degree in Information Systems• Certified tester (CTFL by ISTQB)• Certified Requirements Engineer (CPRE by IREB)
![Page 3: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/3.jpg)
How to become CPRE
• IREB-recognized CPRE training providers• IREB CPRE-FL Syllabus• Book: Requirements Engineering Fundamentals• IREB CPRE-FL practice exam
![Page 4: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/4.jpg)
Requirement
Definition according to IEEE 610.12-19901. A condition or capability needed by a user to
solve a problem or achive an objective2. 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 document
3. A documented representation of a condition or capability as in (1) or (2).
![Page 5: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/5.jpg)
Requirements Engineering
• Requirements Engineering (RE) is a systematic and disciplined approach to the specification and management of requirements
![Page 6: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/6.jpg)
Requirement types
• Functional requirements: requirements provided by the function of system
• Non-functional Requirements • Quality requirements: requirements that address the
quality of a system• Constraints: requirements that put some limitations to
the system
![Page 7: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/7.jpg)
RE activities
• Elicitation• Finding and collecting requirements from
stakeholders, documents, systems• Documentation
• Describing the collected requirements• Validation and Negotiation
• Checking if the right requirements are documented and resolving the conflicts
• Requirements management• Structuring and changing requirements
![Page 8: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/8.jpg)
Sources of requirements
• Stakeholders• People or an organization that have direct or indirect
influence on the requirements (users, clients, managers, developers, testers…)
• Documents• Laws, standards, concepts
• Systems in operation• Existing, external or competitor systems
![Page 9: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/9.jpg)
Elicitation techniques
• Survey techniques• Creativity techniques• Document-centric techniques• Observation techniques• Supporting techniques
![Page 10: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/10.jpg)
Requirements documentation
• It is required to document all requirement information
• This can be done with:• Formal specification • Natural language specification• Semi formal specification
•
![Page 11: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/11.jpg)
Natural language documentation
• It considers non-technical readers• Reduces start-up time• Can however be ambiguous• Usage of templates is recommended• Usage of Glossary•
![Page 12: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/12.jpg)
Model-based documentation 1(2)
• It is easier to understand• Ambiguity is removed• Easier to memorize• Can be represented by models depending on the
perspective.
![Page 13: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/13.jpg)
• Functional Perspective• Use Case Model• Activity Diagram• Data Flow Diagram
• Data Perspective• Class Model• Entity Relationship Diagram
• Behavioral Perspective• State Diagram
Model-based documentation 2(2)
![Page 14: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/14.jpg)
Requirements validation
• Three quality aspects need to be validated:• Content (correct information without errors)• Document (avoid violation of agreed documentation
guidelines)• Agreement (ensure that stakeholders agree on
requirements)
![Page 15: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/15.jpg)
Requirements validation techniques
• Static techniques• Reviews (inspection, walkthrough, commenting, informal
review)• Notation check (help of tools)• Model check (help of tools)
• Dynamic techniques• Prototypes• Simulation• Storyboards
![Page 16: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/16.jpg)
Requirements negotiation
• Conflict types:• Interest, data, value, relationship, structural
• Conflict resolution techniques:• Agreement, compromise, voting, overruling…
• Conflict documentation:• Document contains cause, stakeholders, opinions,
decisions.• It is important so that future conflicts can be avoided
![Page 17: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/17.jpg)
Requirements management
• Improve the tracking and management by assigning attributes to requirements• ID, name, description, author, version…
• Change management• Requirements can be changed with change request• It is done through change control board
![Page 18: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/18.jpg)
Tool support
• Investigate the tools• Consider the cost of
maintaining the tool• Select the tool that will
ensure tracking and management of requirements
• Start a pilot project
![Page 19: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/19.jpg)
Agile RE
• Since requirements evolve during the Iteration, they might not contain all the details that stakeholder desires
• Importance of prioritizing requirements• Requirements do not need to be frozen during the
Iteration• However, requirements in current Iteration need to
be understood fully
![Page 20: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/20.jpg)
Why requirements change
• A defect is identified• Stakeholders didn’t know what they need• Politics• Standards• Competitors
![Page 21: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/21.jpg)
How to work with RE in Agile ENV.
• Importance of Requirements prioritization• Importance of Requirements estimation• Importance of flexibility•
![Page 22: Agile Requirements Engineering by Abdulkerim Corbo](https://reader033.vdocument.in/reader033/viewer/2022042615/55cd4415bb61eb8b0a8b45b5/html5/thumbnails/22.jpg)
Thank you