SlideShare a Scribd company logo
1 of 37
SOFTWARE REQUIREMENT ENGINEERING
Prepared By:
Ahmed Alageed
1
1- INTRODUCTION
COURSE DETAILS
This Course will cover the following Topics:
 1. Basics
 2. Procedure and Processes
 3. Project and Risk Management
 4. Responsibilities and Roles
 5.Identification of Requirements
2
COURSE DETAILS
 6. Specification of requirements
 7. Requirements Analysis
 8.Tracking of Requirements
 9. Quality Assurance
 10. Tools
3
ASSESSMENT METHOD
The assessment method will be as following:
 Final Exam: 60%
 Mid-Term Exam:15% ( it will be between the
5th & 10th lecture without any more
notifications)
 Tutorial & Presentation:25% ( including The
Lab. Remarks & attendance.
4
COURSE LAB.
 In the practical part of this course you will be
requested to do some tutorial on requirement
as well as learning in details some of tools
and model which used in the requirement
engineering
5
CONTACT INFO.
 You can contact me at any time by Email:
Aalageed@neelain.edu.sd
 I will be available at my office on Sat. after 12
PM
6
COURSE REFERENCES
 Main Reading:
1. Software Engineering by Ian Sommerville,
8th edition, Addison-Wesley, 2006.
2. Software Engineering: A practitioner's
approach by Roger S. Pressman, 6th edition,
McGraw-Hill International edition, 2005.
3. Software Requirements, by Karl E.
Wiegers , Microsoft Press © 2003
7
COURSE REFERENCES
4. The Requirements Engineering Handbook
by Ralph R. Young
5. Software requirements: Styles and
techniques by Soren Lauesen
8
LEARNING TARGET
 What is a requirement?
 What is the meaning and purpose of
requirements?
 How can requirements be classified?
 What types of requirements are there?
 What problems are there concerning
requirements?
9
LEARNING TARGET
 What concepts are important in connection
with requirements?
 What is the difference between RM
(Requirements Management) and RE
 Requirements Engineering)?
 What important norms and standards exist?
 Why is Requirements Engineering
important?
10
1. WHAT IS A REQUIREMENT?
 A requirement is a condition or a skill that a
user needs in order to solve a problem or
arrive at a goal.
 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
11
WHAT IS THE MEANING AND PURPOSE OF
REQUIREMENTS?
 Foundation for
assessment, planning, execution and
monitoring of the project activity
 Customer expectations
 Component of agreements, orders, project
plans…
 Setting of system boundaries, scope of
delivery, contractual services
12
CLASSIFICATION OF REQUIREMENTS
 Requirements consist of:
 process requirements
 product requirements
 Process requirements:
costs, marketing, processing time, sales and
distribution, organization, documentation
 Describe needs and limitations of the
business processes.
13
PRODUCT REQUIREMENTS
 Product requirements consist of functional
and non-functional product requirements.
 Both can be regarded from the point of view
of the user (external) or customer and
 from the point of view of the developer
(internal).
14
FUNCTIONAL PRODUCT REQUIREMENTS
 Functional requirements describe the
function of the system
 from the user's point of view: user
interface, applications, services
 from the customer’s point of view: user
interface, applications, services
Note: User and customer can be different!
15
FUNCTIONAL PRODUCT REQUIREMENTS
 from the developer's point of view:
architecture, power supply, load distribution
16
NON-FUNCTIONAL PRODUCT REQUIREMENTS
 Non-functional requirements describe the
quality attributes of the system.
 from the point of view of the user:
reliability, performance, usability
 from the point of view of the customer:
reliability, performance, usability
 from the point of view of the developer:
testability, serviceability, tools
17
TYPES OF REQUIREMENTS
 customer requirements
 solution/system requirements,
 product/component requirements
18
19
PROBLEMS WITH REQUIREMENTS
 unclear objectives
 communication problems
 language barriers
 knowledge barriers
 vague formulation
 too formal formulations
 ambiguous, overly
specified, unclear, impossible, contradictory
requirements
20
PROBLEMS WITH REQUIREMENTS
 instability of the requirements
 bad quality of the requirements
 insufficient user involvement
 overlooked user classes
 inaccurate planning
 minimal specification
21
QUALITY CRITERIA FOR REQUIREMENTS
 Necessary: If the system can meet prioritized real needs
without the requirement, it isn’t necessary.
 Feasible: The requirement is doable and can be accomplished
within budget and schedule.
 Correct: The facts related to the requirement are accurate, and
it is technically and legally possible.
 Concise: The requirement is stated simply.
 Unambiguous: The requirement can be interpreted in only one
way.
 Complete: All conditions under which the requirement applies
are stated, and it expresses a whole idea or statement.
22
QUALITY CRITERIA FOR REQUIREMENTS
 Consistent: It is not in conflict with other requirements.
 Verifiable: Implementation of the requirement in the system
can be proved.
 Traceable: The source of the requirement can be traced, and it
can be tracked throughout the system (e.g., to the design, code,
test, and documentation).
 Allocated: The requirement is assigned to a component of the
designed system.
 Design independent: It does not pose a specific
implementation solution.
23
QUALITY CRITERIA FOR REQUIREMENTS
 Non-redundant: It is not a duplicate requirement.
 Written using the standard construct: The requirement is
stated as an imperative using “shall.”
 Assigned a unique identifier: Each requirement shall have a
unique identifying number.
 Devoid of escape clauses: Language should not include such
phrases as “if,” “when,” “but,” “except,” “unless,” and
“although.” Language should not be speculative or general
(i.e., avoid wording such as “usually,” “generally,” “often,”
“normally,” and “typically”).
24
QUALITY CRITERIA FOR REQUIREMENTS
 The requirements specification must be
complete, consistent, modifiable and
traceable
25
SOLUTION
 A solution is the implementation of the
requirement Engineering & Requirement
management.
26
PRIORITY OF REQUIREMENTS
 Commitment
 Commitment is the degree of obligation
 Observing legal responsibilities, especially in
case of fault
Fault
 Deviation of the current state from the target
state
 Evaluation of the importance/urgency
27
CRITICALITY OF REQUIREMENTS
 Evaluation of the risk of a requirement by
evaluating the damage in case of non-
fulfillment of a requirement
28
VALIDATION
 Process of confirmation that the specification
of a phase or the entire system fulfills the
customer's requirements
29
VERIFICATION
 Comparison of an intermediate product with
its specifications. It is thereby determined if
the software was developed correctly and if
the specifications that were determined
during the previous phase were fulfilled
30
DELINEATION BETWEEN REQUIREMENTS
MANAGEMENT AND ENGINEERING
 Requirements Management (RM) includes
processes for the identification and
management of requirements
 Requirements engineering includes the basic
engineering skills
31
STANDARDS AND NORMS
 ISO 9000:
 Requirements of a quality management system:
 defined concepts and basics of a QMS
 domain or industry neutral
 ISO 9126:
 Defines a quality model with six categories:
 Functionality, reliability, usability, efficiency,
maintainability, portability
32
STANDARDS AND NORMS
 IEEE 610:
 Standard Glossary of Software Engineering
Terminology
 IEEE 830:
 Recommended Practice for Software
Requirements Specifications
 IEEE 1233:
 Guide for Developing of System Requirements
Specifications
33
 IEEE 1362:
 Guide for Information Technology – System
Definition
34
STANDARDS AND NORMS
PROCESS NORMS
 ISO 12207:
 Standard for Software Life Cycle Process
 ISO 15288:
 System Life Cycle Process
 ISO 15504:
 Software Process Improvement and Capability
Determination (SPICE)
 Capability Maturity Model Integrated (CMMI)
35
REASONS WHY REQUIREMENT ENGINEERING IS
OFTEN NEGLECTED
 Neglect due to high time pressure
 Neglect due to an exclusive orientation
toward fast results
 Neglect due to an exclusive fixation on costs
 Neglect due to misinterpretations (many
things are seen as given)
36
POSSIBLE CONSEQUENCES OF NEGLECTING
REQUIREMENTS ENGINEERING
 Requirements become imprecise
 Requirements are ambiguous
 Requirements are contradictory
 Requirements that change
 Requirements that do not fulfill the criteria
 Requirements that can be interpreted
differently
 Missing requirements
37

More Related Content

What's hot

REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)kunj desai
 
Requirements Engineering Processes in Software Engineering SE6
Requirements Engineering Processes in Software Engineering SE6Requirements Engineering Processes in Software Engineering SE6
Requirements Engineering Processes in Software Engineering SE6koolkampus
 
McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance sundas Shabbir
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
Lecture 5: Human-Computer Interaction Course (2015) @VU University Amsterdam
Lecture 5: Human-Computer Interaction Course (2015) @VU University AmsterdamLecture 5: Human-Computer Interaction Course (2015) @VU University Amsterdam
Lecture 5: Human-Computer Interaction Course (2015) @VU University AmsterdamLora Aroyo
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )eshtiyak
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceEr. Nancy
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement AnalysisSADEED AMEEN
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
Software Requirements
Software RequirementsSoftware Requirements
Software RequirementsNethan Shaik
 
Business requirements gathering and analysis
Business requirements gathering and analysisBusiness requirements gathering and analysis
Business requirements gathering and analysisMena M. Eissa
 

What's hot (20)

Software requirements
Software requirementsSoftware requirements
Software requirements
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Chapter 16
Chapter 16Chapter 16
Chapter 16
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
 
Requirements Engineering Processes in Software Engineering SE6
Requirements Engineering Processes in Software Engineering SE6Requirements Engineering Processes in Software Engineering SE6
Requirements Engineering Processes in Software Engineering SE6
 
McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance McCall Software Quality Model in Software Quality Assurance
McCall Software Quality Model in Software Quality Assurance
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
Lecture 5: Human-Computer Interaction Course (2015) @VU University Amsterdam
Lecture 5: Human-Computer Interaction Course (2015) @VU University AmsterdamLecture 5: Human-Computer Interaction Course (2015) @VU University Amsterdam
Lecture 5: Human-Computer Interaction Course (2015) @VU University Amsterdam
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and Design
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
 
Business requirements gathering and analysis
Business requirements gathering and analysisBusiness requirements gathering and analysis
Business requirements gathering and analysis
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 

Viewers also liked

Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement EngineeringSlideshare
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineeringPreeti Mishra
 
Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)Ian Sommerville
 
Requirements Engineering Process
Requirements Engineering ProcessRequirements Engineering Process
Requirements Engineering ProcessJomel Penalba
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelmohamed khalaf alla mohamedain
 
Requirement engineering process
Requirement engineering processRequirement engineering process
Requirement engineering processDr. Loganathan R
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysisasimnawaz54
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and designPreeti Mishra
 
Project Time Management
Project Time Management Project Time Management
Project Time Management Ahmed Alageed
 
software requirement engineering
software requirement engineeringsoftware requirement engineering
software requirement engineeringdeviyasharwin
 
Coal 1 - introduction to assembly programming in Assembly Programming
Coal 1 - introduction to assembly programming in Assembly ProgrammingCoal 1 - introduction to assembly programming in Assembly Programming
Coal 1 - introduction to assembly programming in Assembly ProgrammingMuhammad Taqi Hassan Bukhari
 
Agile Software Development - making programming fun again
Agile Software Development - making programming fun againAgile Software Development - making programming fun again
Agile Software Development - making programming fun againcalenlegaspi
 
Capabilities and characteristic of software processing
Capabilities and characteristic of software   processingCapabilities and characteristic of software   processing
Capabilities and characteristic of software processingPAQUIAAIZEL
 
Information system building block
Information system building blockInformation system building block
Information system building blockAinul Yaqin
 

Viewers also liked (20)

Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineering
 
Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)
 
Requirements Engineering Process
Requirements Engineering ProcessRequirements Engineering Process
Requirements Engineering Process
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
 
Requirement engineering process
Requirement engineering processRequirement engineering process
Requirement engineering process
 
03 requirement engineering_process
03 requirement engineering_process03 requirement engineering_process
03 requirement engineering_process
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
 
Lecture4
Lecture4Lecture4
Lecture4
 
Testable requirements
Testable requirementsTestable requirements
Testable requirements
 
Project Time Management
Project Time Management Project Time Management
Project Time Management
 
Process Support for requirements engineering
Process Support for requirements engineeringProcess Support for requirements engineering
Process Support for requirements engineering
 
software requirement engineering
software requirement engineeringsoftware requirement engineering
software requirement engineering
 
Coal 2 - concepts in Assembly Programming
Coal 2 - concepts in Assembly ProgrammingCoal 2 - concepts in Assembly Programming
Coal 2 - concepts in Assembly Programming
 
Coal 1 - introduction to assembly programming in Assembly Programming
Coal 1 - introduction to assembly programming in Assembly ProgrammingCoal 1 - introduction to assembly programming in Assembly Programming
Coal 1 - introduction to assembly programming in Assembly Programming
 
Agile Software Development - making programming fun again
Agile Software Development - making programming fun againAgile Software Development - making programming fun again
Agile Software Development - making programming fun again
 
Capabilities and characteristic of software processing
Capabilities and characteristic of software   processingCapabilities and characteristic of software   processing
Capabilities and characteristic of software processing
 
Modeling and analysis
Modeling and analysisModeling and analysis
Modeling and analysis
 
Information system building block
Information system building blockInformation system building block
Information system building block
 

Similar to Requirement Engineering Lec.1 & 2 & 3

Software Quality Assurance class 1
Software Quality Assurance  class 1Software Quality Assurance  class 1
Software Quality Assurance class 1Santhiya Grace
 
Design Requirements Training
Design Requirements TrainingDesign Requirements Training
Design Requirements TrainingKathy Vinatieri
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing BasicsBelal Raslan
 
SW Development Methodologies
SW Development MethodologiesSW Development Methodologies
SW Development Methodologiesthiago_tadeu
 
SE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle ModelSE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle ModelAmr E. Mohamed
 
A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...Sehrish Asif
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineeringRa'Fat Al-Msie'deen
 
Software requirement & specification .pptx
Software requirement & specification .pptxSoftware requirement & specification .pptx
Software requirement & specification .pptxSarowarSuman
 
SE Chapter 4 - Software Requirements.pptx
SE Chapter 4 - Software  Requirements.pptxSE Chapter 4 - Software  Requirements.pptx
SE Chapter 4 - Software Requirements.pptxDibyesh1
 
software requirement and architecture.pdf
software requirement and architecture.pdfsoftware requirement and architecture.pdf
software requirement and architecture.pdfwajoce8790
 
Requirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharyaRequirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharyaSharbani Bhattacharya
 
7.quality management chapter 7
7.quality management chapter 77.quality management chapter 7
7.quality management chapter 7Warui Maina
 
Software Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxSoftware Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxNikilesh8
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineeringSutha31
 
Software Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summarySoftware Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summaryAhmed Kamel Taha
 

Similar to Requirement Engineering Lec.1 & 2 & 3 (20)

Software Quality Assurance class 1
Software Quality Assurance  class 1Software Quality Assurance  class 1
Software Quality Assurance class 1
 
Design Requirements Training
Design Requirements TrainingDesign Requirements Training
Design Requirements Training
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics
 
SE2.ppt
SE2.pptSE2.ppt
SE2.ppt
 
SW Development Methodologies
SW Development MethodologiesSW Development Methodologies
SW Development Methodologies
 
Sqm2mark
Sqm2markSqm2mark
Sqm2mark
 
SE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle ModelSE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle Model
 
A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...A Research Study on importance of Testing and Quality Assurance in Software D...
A Research Study on importance of Testing and Quality Assurance in Software D...
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
 
Software requirement & specification .pptx
Software requirement & specification .pptxSoftware requirement & specification .pptx
Software requirement & specification .pptx
 
SE Chapter 4 - Software Requirements.pptx
SE Chapter 4 - Software  Requirements.pptxSE Chapter 4 - Software  Requirements.pptx
SE Chapter 4 - Software Requirements.pptx
 
3-Requirements.ppt
3-Requirements.ppt3-Requirements.ppt
3-Requirements.ppt
 
software requirement and architecture.pdf
software requirement and architecture.pdfsoftware requirement and architecture.pdf
software requirement and architecture.pdf
 
Requirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharyaRequirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharya
 
Se lec-uosl-8
Se lec-uosl-8Se lec-uosl-8
Se lec-uosl-8
 
Ch24
Ch24Ch24
Ch24
 
7.quality management chapter 7
7.quality management chapter 77.quality management chapter 7
7.quality management chapter 7
 
Software Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxSoftware Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptx
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Software Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summarySoftware Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summary
 

More from Ahmed Alageed

Project Scope Management
Project Scope ManagementProject Scope Management
Project Scope ManagementAhmed Alageed
 
Project / Program / Portfolio Management and Processes Groups
Project / Program / Portfolio Management and Processes GroupsProject / Program / Portfolio Management and Processes Groups
Project / Program / Portfolio Management and Processes GroupsAhmed Alageed
 
مدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software Engineeringمدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software EngineeringAhmed Alageed
 
Project Management slide 2
Project Management slide 2Project Management slide 2
Project Management slide 2Ahmed Alageed
 
Project Management Course slide 1
Project Management Course slide 1Project Management Course slide 1
Project Management Course slide 1Ahmed Alageed
 
Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Ahmed Alageed
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAhmed Alageed
 
المحاضرة الرابعة والخامسة
المحاضرة الرابعة والخامسةالمحاضرة الرابعة والخامسة
المحاضرة الرابعة والخامسةAhmed Alageed
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project ManagmentAhmed Alageed
 

More from Ahmed Alageed (18)

Project Scope Management
Project Scope ManagementProject Scope Management
Project Scope Management
 
Project / Program / Portfolio Management and Processes Groups
Project / Program / Portfolio Management and Processes GroupsProject / Program / Portfolio Management and Processes Groups
Project / Program / Portfolio Management and Processes Groups
 
مدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software Engineeringمدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software Engineering
 
Project Management slide 2
Project Management slide 2Project Management slide 2
Project Management slide 2
 
Project Management Course slide 1
Project Management Course slide 1Project Management Course slide 1
Project Management Course slide 1
 
Lecture 4
Lecture 4Lecture 4
Lecture 4
 
Lecture 5
Lecture 5 Lecture 5
Lecture 5
 
Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3
 
Ch06
Ch06Ch06
Ch06
 
Ch05
Ch05Ch05
Ch05
 
Ch07
Ch07Ch07
Ch07
 
Ch04
Ch04Ch04
Ch04
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
المحاضرة الرابعة والخامسة
المحاضرة الرابعة والخامسةالمحاضرة الرابعة والخامسة
المحاضرة الرابعة والخامسة
 
Lecture 3
Lecture 3Lecture 3
Lecture 3
 
Lecture 2
Lecture 2 Lecture 2
Lecture 2
 
Software Project Managment
Software Project ManagmentSoftware Project Managment
Software Project Managment
 
1 se-introduction
1 se-introduction1 se-introduction
1 se-introduction
 

Recently uploaded

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Recently uploaded (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

Requirement Engineering Lec.1 & 2 & 3

  • 1. SOFTWARE REQUIREMENT ENGINEERING Prepared By: Ahmed Alageed 1 1- INTRODUCTION
  • 2. COURSE DETAILS This Course will cover the following Topics:  1. Basics  2. Procedure and Processes  3. Project and Risk Management  4. Responsibilities and Roles  5.Identification of Requirements 2
  • 3. COURSE DETAILS  6. Specification of requirements  7. Requirements Analysis  8.Tracking of Requirements  9. Quality Assurance  10. Tools 3
  • 4. ASSESSMENT METHOD The assessment method will be as following:  Final Exam: 60%  Mid-Term Exam:15% ( it will be between the 5th & 10th lecture without any more notifications)  Tutorial & Presentation:25% ( including The Lab. Remarks & attendance. 4
  • 5. COURSE LAB.  In the practical part of this course you will be requested to do some tutorial on requirement as well as learning in details some of tools and model which used in the requirement engineering 5
  • 6. CONTACT INFO.  You can contact me at any time by Email: Aalageed@neelain.edu.sd  I will be available at my office on Sat. after 12 PM 6
  • 7. COURSE REFERENCES  Main Reading: 1. Software Engineering by Ian Sommerville, 8th edition, Addison-Wesley, 2006. 2. Software Engineering: A practitioner's approach by Roger S. Pressman, 6th edition, McGraw-Hill International edition, 2005. 3. Software Requirements, by Karl E. Wiegers , Microsoft Press © 2003 7
  • 8. COURSE REFERENCES 4. The Requirements Engineering Handbook by Ralph R. Young 5. Software requirements: Styles and techniques by Soren Lauesen 8
  • 9. LEARNING TARGET  What is a requirement?  What is the meaning and purpose of requirements?  How can requirements be classified?  What types of requirements are there?  What problems are there concerning requirements? 9
  • 10. LEARNING TARGET  What concepts are important in connection with requirements?  What is the difference between RM (Requirements Management) and RE  Requirements Engineering)?  What important norms and standards exist?  Why is Requirements Engineering important? 10
  • 11. 1. WHAT IS A REQUIREMENT?  A requirement is a condition or a skill that a user needs in order to solve a problem or arrive at a goal.  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 11
  • 12. WHAT IS THE MEANING AND PURPOSE OF REQUIREMENTS?  Foundation for assessment, planning, execution and monitoring of the project activity  Customer expectations  Component of agreements, orders, project plans…  Setting of system boundaries, scope of delivery, contractual services 12
  • 13. CLASSIFICATION OF REQUIREMENTS  Requirements consist of:  process requirements  product requirements  Process requirements: costs, marketing, processing time, sales and distribution, organization, documentation  Describe needs and limitations of the business processes. 13
  • 14. PRODUCT REQUIREMENTS  Product requirements consist of functional and non-functional product requirements.  Both can be regarded from the point of view of the user (external) or customer and  from the point of view of the developer (internal). 14
  • 15. FUNCTIONAL PRODUCT REQUIREMENTS  Functional requirements describe the function of the system  from the user's point of view: user interface, applications, services  from the customer’s point of view: user interface, applications, services Note: User and customer can be different! 15
  • 16. FUNCTIONAL PRODUCT REQUIREMENTS  from the developer's point of view: architecture, power supply, load distribution 16
  • 17. NON-FUNCTIONAL PRODUCT REQUIREMENTS  Non-functional requirements describe the quality attributes of the system.  from the point of view of the user: reliability, performance, usability  from the point of view of the customer: reliability, performance, usability  from the point of view of the developer: testability, serviceability, tools 17
  • 18. TYPES OF REQUIREMENTS  customer requirements  solution/system requirements,  product/component requirements 18
  • 19. 19
  • 20. PROBLEMS WITH REQUIREMENTS  unclear objectives  communication problems  language barriers  knowledge barriers  vague formulation  too formal formulations  ambiguous, overly specified, unclear, impossible, contradictory requirements 20
  • 21. PROBLEMS WITH REQUIREMENTS  instability of the requirements  bad quality of the requirements  insufficient user involvement  overlooked user classes  inaccurate planning  minimal specification 21
  • 22. QUALITY CRITERIA FOR REQUIREMENTS  Necessary: If the system can meet prioritized real needs without the requirement, it isn’t necessary.  Feasible: The requirement is doable and can be accomplished within budget and schedule.  Correct: The facts related to the requirement are accurate, and it is technically and legally possible.  Concise: The requirement is stated simply.  Unambiguous: The requirement can be interpreted in only one way.  Complete: All conditions under which the requirement applies are stated, and it expresses a whole idea or statement. 22
  • 23. QUALITY CRITERIA FOR REQUIREMENTS  Consistent: It is not in conflict with other requirements.  Verifiable: Implementation of the requirement in the system can be proved.  Traceable: The source of the requirement can be traced, and it can be tracked throughout the system (e.g., to the design, code, test, and documentation).  Allocated: The requirement is assigned to a component of the designed system.  Design independent: It does not pose a specific implementation solution. 23
  • 24. QUALITY CRITERIA FOR REQUIREMENTS  Non-redundant: It is not a duplicate requirement.  Written using the standard construct: The requirement is stated as an imperative using “shall.”  Assigned a unique identifier: Each requirement shall have a unique identifying number.  Devoid of escape clauses: Language should not include such phrases as “if,” “when,” “but,” “except,” “unless,” and “although.” Language should not be speculative or general (i.e., avoid wording such as “usually,” “generally,” “often,” “normally,” and “typically”). 24
  • 25. QUALITY CRITERIA FOR REQUIREMENTS  The requirements specification must be complete, consistent, modifiable and traceable 25
  • 26. SOLUTION  A solution is the implementation of the requirement Engineering & Requirement management. 26
  • 27. PRIORITY OF REQUIREMENTS  Commitment  Commitment is the degree of obligation  Observing legal responsibilities, especially in case of fault Fault  Deviation of the current state from the target state  Evaluation of the importance/urgency 27
  • 28. CRITICALITY OF REQUIREMENTS  Evaluation of the risk of a requirement by evaluating the damage in case of non- fulfillment of a requirement 28
  • 29. VALIDATION  Process of confirmation that the specification of a phase or the entire system fulfills the customer's requirements 29
  • 30. VERIFICATION  Comparison of an intermediate product with its specifications. It is thereby determined if the software was developed correctly and if the specifications that were determined during the previous phase were fulfilled 30
  • 31. DELINEATION BETWEEN REQUIREMENTS MANAGEMENT AND ENGINEERING  Requirements Management (RM) includes processes for the identification and management of requirements  Requirements engineering includes the basic engineering skills 31
  • 32. STANDARDS AND NORMS  ISO 9000:  Requirements of a quality management system:  defined concepts and basics of a QMS  domain or industry neutral  ISO 9126:  Defines a quality model with six categories:  Functionality, reliability, usability, efficiency, maintainability, portability 32
  • 33. STANDARDS AND NORMS  IEEE 610:  Standard Glossary of Software Engineering Terminology  IEEE 830:  Recommended Practice for Software Requirements Specifications  IEEE 1233:  Guide for Developing of System Requirements Specifications 33
  • 34.  IEEE 1362:  Guide for Information Technology – System Definition 34 STANDARDS AND NORMS
  • 35. PROCESS NORMS  ISO 12207:  Standard for Software Life Cycle Process  ISO 15288:  System Life Cycle Process  ISO 15504:  Software Process Improvement and Capability Determination (SPICE)  Capability Maturity Model Integrated (CMMI) 35
  • 36. REASONS WHY REQUIREMENT ENGINEERING IS OFTEN NEGLECTED  Neglect due to high time pressure  Neglect due to an exclusive orientation toward fast results  Neglect due to an exclusive fixation on costs  Neglect due to misinterpretations (many things are seen as given) 36
  • 37. POSSIBLE CONSEQUENCES OF NEGLECTING REQUIREMENTS ENGINEERING  Requirements become imprecise  Requirements are ambiguous  Requirements are contradictory  Requirements that change  Requirements that do not fulfill the criteria  Requirements that can be interpreted differently  Missing requirements 37