SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Requirements and Requirements
Engineering
Ian Sommerville
http://www.youtube.com/watch?v=Ec0s0z5uXQ8
An introduction to requirements engineering, 2013

Slide 1
Requirements and systems
Software-based
system

User
world
Requirements

An introduction to requirements engineering, 2013

Photo © Liam Quinn

Slide 2
What are system requirements?
• Requirements are defined during the
early stages of a system development
as a specification of what should be
implemented or as a constraint of
some kind on the system.

An introduction to requirements engineering, 2013

Slide 3
Types of requirement
• a user-level facility description,
• a detailed specification of expected
system behaviour,

An introduction to requirements engineering, 2013

Slide 4
• a general system property,
• a specific constraint on the system,

An introduction to requirements engineering, 2013

Slide 5
• information on how to carry out some
computation,
• a constraint on the development of the
system.

An introduction to requirements engineering, 2013

Slide 6
Functional requirements
• Requirements that define a function or
feature of the system
• Something that the system should DO

An introduction to requirements engineering, 2013

Slide 7
• “If a patient is known to be allergic to a
particular medication, then prescription
of that medication shall result in a
warning message being issued to to the
prescriber”

An introduction to requirements engineering, 2013

Slide 8
Non-functional requirements
• Requirements that define some
observable characteristics or quality of
the system
• Availability, reliability, safety, security,
resilience, …
An introduction to requirements engineering, 2013

Slide 9
• “The system shall be available to all
clinics during normal working hours
(Mon-Fri, 0830-1730). Downtime during
normal working hours shall not exceed 5
seconds in any one day”

An introduction to requirements engineering, 2013

Slide 10
Domain requirements
• Requirements that are derived from
characteristics of the application domain
or rules and regulations that apply in
that domain

An introduction to requirements engineering, 2013

Slide 11
• “The system shall implement patient
privacy provisions as set out in the 1998
Data Protection Act”

An introduction to requirements engineering, 2013

Slide 12
What is requirements
engineering?
• Requirements engineering covers
all of the activities involved in
discovering, documenting, and
maintaining a set of requirements for
a computer-based system.

An introduction to requirements engineering, 2013

Slide 13
An introduction to requirements engineering, 2013

Slide 14
• „engineering‟ implies that systematic
and repeatable techniques should be
used to ensure that system
requirements are complete, consistent,
relevant, etc.

An introduction to requirements engineering, 2013

Slide 15
Are requirements important?
“The principal problem areas in software
development and production are the
requirements specification and the
management of customer requirements”

An introduction to requirements engineering, 2013

Slide 16
“... difficulties with requirements are the
key root-cause of the safety-related
software errors that have persisted until
integration and system testing”

An introduction to requirements engineering, 2013

Slide 17
If the requirements are wrong
• the system may be delivered late
and cost more than originally
expected.

An introduction to requirements engineering, 2013

Slide 18
If the requirements are wrong
• the customer and end-users may not
satisfied with the system,
• they may not use its facilities or may
even decide to scrap it altogether.

An introduction to requirements engineering, 2013

Slide 19
If the requirements are wrong
• the system may be unreliable in use
with regular system errors and crashes
disrupting normal operation.

An introduction to requirements engineering, 2013

Slide 20
• If the system continues in use, the costs
of maintaining and evolving the system
are very high.

An introduction to requirements engineering, 2013

Slide 21
Software-based
system

User
world
Requirements

An introduction to requirements engineering, 2013

Photo © Liam Quinn

Slide 22
Difficulties with requirements
• Stakeholders don‟t know what they want
from a new system
• It is very difficult to imagine how future
systems might work

An introduction to requirements engineering, 2013

Slide 23
• Businesses operate in a rapidly
changing environment so their
requirements for system support
are constantly changing.

An introduction to requirements engineering, 2013

Slide 24
• Multiple stakeholders with different
goals and priorities are involved in
the requirements engineering
process.

An introduction to requirements engineering, 2013

Slide 25
• System stakeholders do not have clear
ideas about what they need
• They can only describe their
requirements in a vague and ambiguous
way
An introduction to requirements engineering, 2013

Slide 26
• Requirements are often influenced
by political and organisational
factors that stakeholders will not
admit to publicly.

An introduction to requirements engineering, 2013

Slide 27
Summary
•

Requirements define what a system should do and
the desirable qualities of that system

•

Requirements engineering is a set of systematic
techniques for defining and validating system
requirements

•

Requirements engineering is difficulties and problems
with requirements are the major cause of system
problems and project failures

An introduction to requirements engineering, 2013

Slide 28

Weitere ähnliche Inhalte

Was ist angesagt?

Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminariesMoutasm Tamimi
 
Ch6-Software Engineering 9
Ch6-Software Engineering 9Ch6-Software Engineering 9
Ch6-Software Engineering 9Ian Sommerville
 
Verifying and Validating Requirements
Verifying and Validating RequirementsVerifying and Validating Requirements
Verifying and Validating RequirementsRavikanth-BA
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineeringRa'Fat Al-Msie'deen
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9Ian Sommerville
 
Chap3 RE elicitation
Chap3 RE elicitationChap3 RE elicitation
Chap3 RE elicitationIan Sommerville
 
Ch16-Software Engineering 9
Ch16-Software Engineering 9Ch16-Software Engineering 9
Ch16-Software Engineering 9Ian Sommerville
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9Ian Sommerville
 

Was ist angesagt? (20)

Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
 
Ch9 evolution
Ch9 evolutionCh9 evolution
Ch9 evolution
 
Ch6-Software Engineering 9
Ch6-Software Engineering 9Ch6-Software Engineering 9
Ch6-Software Engineering 9
 
Ch3. agile sw dev
Ch3. agile sw devCh3. agile sw dev
Ch3. agile sw dev
 
Verifying and Validating Requirements
Verifying and Validating RequirementsVerifying and Validating Requirements
Verifying and Validating Requirements
 
Ch19 systems engineering
Ch19 systems engineeringCh19 systems engineering
Ch19 systems engineering
 
Legacy system.
Legacy system.Legacy system.
Legacy system.
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
 
Ch7-Software Engineering 9
Ch7-Software Engineering 9Ch7-Software Engineering 9
Ch7-Software Engineering 9
 
Chap3 RE elicitation
Chap3 RE elicitationChap3 RE elicitation
Chap3 RE elicitation
 
Ch16-Software Engineering 9
Ch16-Software Engineering 9Ch16-Software Engineering 9
Ch16-Software Engineering 9
 
Ch13 security engineering
Ch13 security engineeringCh13 security engineering
Ch13 security engineering
 
Ch11 reliability engineering
Ch11 reliability engineeringCh11 reliability engineering
Ch11 reliability engineering
 
Ch24 quality management
Ch24 quality managementCh24 quality management
Ch24 quality management
 
Ch1 introduction
Ch1 introductionCh1 introduction
Ch1 introduction
 
Ch4 req eng
Ch4 req engCh4 req eng
Ch4 req eng
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9
 
Ch9 - Evolution
Ch9 - EvolutionCh9 - Evolution
Ch9 - Evolution
 
Ch6 architectural design
Ch6 architectural designCh6 architectural design
Ch6 architectural design
 

Andere mochten auch

Ariane 5 launcher failure
Ariane 5 launcher failure Ariane 5 launcher failure
Ariane 5 launcher failure sommerville-videos
 
Architectural patterns for real-time systems
Architectural patterns for real-time systemsArchitectural patterns for real-time systems
Architectural patterns for real-time systemssommerville-videos
 
Introduction to real time software systems script
Introduction to real time software systems scriptIntroduction to real time software systems script
Introduction to real time software systems scriptsommerville-videos
 
Airbus Flight Control System
Airbus Flight Control SystemAirbus Flight Control System
Airbus Flight Control Systemsommerville-videos
 
Critical systems engineering
Critical systems engineeringCritical systems engineering
Critical systems engineeringsommerville-videos
 
System of systems classification
System of systems classificationSystem of systems classification
System of systems classificationsommerville-videos
 
Introduction to systems of systems
Introduction to systems of systemsIntroduction to systems of systems
Introduction to systems of systemssommerville-videos
 
Fundamental software engineering activities
Fundamental software engineering activitiesFundamental software engineering activities
Fundamental software engineering activitiessommerville-videos
 
Introducing Software Engineering
Introducing Software EngineeringIntroducing Software Engineering
Introducing Software Engineeringsommerville-videos
 
Availability and reliability
Availability and reliabilityAvailability and reliability
Availability and reliabilitysommerville-videos
 
Agile methods for large systems
Agile methods for large systemsAgile methods for large systems
Agile methods for large systemssommerville-videos
 
Agile and plan based development processes
Agile and plan based development processesAgile and plan based development processes
Agile and plan based development processessommerville-videos
 
System success and failure
System success and failureSystem success and failure
System success and failuresommerville-videos
 

Andere mochten auch (20)

Ariane 5 launcher failure
Ariane 5 launcher failure Ariane 5 launcher failure
Ariane 5 launcher failure
 
Architectural patterns for real-time systems
Architectural patterns for real-time systemsArchitectural patterns for real-time systems
Architectural patterns for real-time systems
 
Introduction to real time software systems script
Introduction to real time software systems scriptIntroduction to real time software systems script
Introduction to real time software systems script
 
User stories
User storiesUser stories
User stories
 
Airbus Flight Control System
Airbus Flight Control SystemAirbus Flight Control System
Airbus Flight Control System
 
Critical systems engineering
Critical systems engineeringCritical systems engineering
Critical systems engineering
 
System of systems classification
System of systems classificationSystem of systems classification
System of systems classification
 
Why se script
Why se scriptWhy se script
Why se script
 
Warsaw airbus accident
Warsaw airbus accidentWarsaw airbus accident
Warsaw airbus accident
 
Introduction to systems of systems
Introduction to systems of systemsIntroduction to systems of systems
Introduction to systems of systems
 
Fundamental software engineering activities
Fundamental software engineering activitiesFundamental software engineering activities
Fundamental software engineering activities
 
Introducing Software Engineering
Introducing Software EngineeringIntroducing Software Engineering
Introducing Software Engineering
 
Availability and reliability
Availability and reliabilityAvailability and reliability
Availability and reliability
 
Scaling agile
Scaling agileScaling agile
Scaling agile
 
Agile methods for large systems
Agile methods for large systemsAgile methods for large systems
Agile methods for large systems
 
Agile and plan based development processes
Agile and plan based development processesAgile and plan based development processes
Agile and plan based development processes
 
Reuse landscape
Reuse landscapeReuse landscape
Reuse landscape
 
System security
System securitySystem security
System security
 
System success and failure
System success and failureSystem success and failure
System success and failure
 
Emergent properties
Emergent propertiesEmergent properties
Emergent properties
 

Ă„hnlich wie Requirements Engineering Introduction

Requirements Engineering for LSCITS
Requirements Engineering for LSCITSRequirements Engineering for LSCITS
Requirements Engineering for LSCITSIan Sommerville
 
CS 5032 L4 requirements engineering 2013
CS 5032 L4 requirements engineering 2013CS 5032 L4 requirements engineering 2013
CS 5032 L4 requirements engineering 2013Ian Sommerville
 
Dependability requirements for LSCITS
Dependability requirements for LSCITSDependability requirements for LSCITS
Dependability requirements for LSCITSIan Sommerville
 
IT1204 - Software Engineering - L4
IT1204 - Software Engineering - L4IT1204 - Software Engineering - L4
IT1204 - Software Engineering - L4BakerTilly US
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineeringSutha31
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitationAshenafi Workie
 
Resilience and recovery
Resilience and recoveryResilience and recovery
Resilience and recoveryIan Sommerville
 
Software Requirements and Specifications
Software Requirements and SpecificationsSoftware Requirements and Specifications
Software Requirements and Specificationsvustudent1
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Software Engineering - Ch7
Software Engineering - Ch7Software Engineering - Ch7
Software Engineering - Ch7Siddharth Ayer
 
Model-Based Systems Requirements
Model-Based Systems RequirementsModel-Based Systems Requirements
Model-Based Systems RequirementsJean-Michel Bruel
 
Requirement engineering in S/W Engineering
Requirement engineering in S/W EngineeringRequirement engineering in S/W Engineering
Requirement engineering in S/W EngineeringMikel Raj
 
Software Requirements engineering
Software Requirements engineeringSoftware Requirements engineering
Software Requirements engineeringMd. Shafiuzzaman Hira
 
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdfJayanthi Kannan MK
 
Ch 1-Introduction.ppt
Ch 1-Introduction.pptCh 1-Introduction.ppt
Ch 1-Introduction.pptbalewayalew
 
Requirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsRequirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsIBM Rational software
 
Rekayasa-Perangkat-Lunak-Pertemuan-2.pdf
Rekayasa-Perangkat-Lunak-Pertemuan-2.pdfRekayasa-Perangkat-Lunak-Pertemuan-2.pdf
Rekayasa-Perangkat-Lunak-Pertemuan-2.pdfIntanPurnamasari425310
 

Ă„hnlich wie Requirements Engineering Introduction (20)

Requirements Engineering for LSCITS
Requirements Engineering for LSCITSRequirements Engineering for LSCITS
Requirements Engineering for LSCITS
 
CS 5032 L4 requirements engineering 2013
CS 5032 L4 requirements engineering 2013CS 5032 L4 requirements engineering 2013
CS 5032 L4 requirements engineering 2013
 
Dependability requirements for LSCITS
Dependability requirements for LSCITSDependability requirements for LSCITS
Dependability requirements for LSCITS
 
IT1204 - Software Engineering - L4
IT1204 - Software Engineering - L4IT1204 - Software Engineering - L4
IT1204 - Software Engineering - L4
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
 
SRE.pptx
SRE.pptxSRE.pptx
SRE.pptx
 
Requirementengg
RequirementenggRequirementengg
Requirementengg
 
Resilience and recovery
Resilience and recoveryResilience and recovery
Resilience and recovery
 
Software Requirements and Specifications
Software Requirements and SpecificationsSoftware Requirements and Specifications
Software Requirements and Specifications
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Software Engineering - Ch7
Software Engineering - Ch7Software Engineering - Ch7
Software Engineering - Ch7
 
Ch7
Ch7Ch7
Ch7
 
Model-Based Systems Requirements
Model-Based Systems RequirementsModel-Based Systems Requirements
Model-Based Systems Requirements
 
Requirement engineering in S/W Engineering
Requirement engineering in S/W EngineeringRequirement engineering in S/W Engineering
Requirement engineering in S/W Engineering
 
Software Requirements engineering
Software Requirements engineeringSoftware Requirements engineering
Software Requirements engineering
 
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
 
Ch 1-Introduction.ppt
Ch 1-Introduction.pptCh 1-Introduction.ppt
Ch 1-Introduction.ppt
 
Requirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsRequirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutions
 
Rekayasa-Perangkat-Lunak-Pertemuan-2.pdf
Rekayasa-Perangkat-Lunak-Pertemuan-2.pdfRekayasa-Perangkat-Lunak-Pertemuan-2.pdf
Rekayasa-Perangkat-Lunak-Pertemuan-2.pdf
 

Mehr von sommerville-videos

Introducing sociotechnical systems
Introducing sociotechnical systemsIntroducing sociotechnical systems
Introducing sociotechnical systemssommerville-videos
 
Cybersecurity 4 security is sociotechnical issue
Cybersecurity 4 security is sociotechnical issueCybersecurity 4 security is sociotechnical issue
Cybersecurity 4 security is sociotechnical issuesommerville-videos
 
Cybersecurity 3 cybersecurity costs and causes
Cybersecurity 3 cybersecurity costs and causesCybersecurity 3 cybersecurity costs and causes
Cybersecurity 3 cybersecurity costs and causessommerville-videos
 
Cybersecurity 2 cyber attacks
Cybersecurity 2 cyber attacksCybersecurity 2 cyber attacks
Cybersecurity 2 cyber attackssommerville-videos
 
Cybersecurity 1 intro to cybersecurity
Cybersecurity 1 intro to cybersecurityCybersecurity 1 intro to cybersecurity
Cybersecurity 1 intro to cybersecuritysommerville-videos
 

Mehr von sommerville-videos (7)

Introducing sociotechnical systems
Introducing sociotechnical systemsIntroducing sociotechnical systems
Introducing sociotechnical systems
 
System dependability
System dependabilitySystem dependability
System dependability
 
System safety
System safetySystem safety
System safety
 
Cybersecurity 4 security is sociotechnical issue
Cybersecurity 4 security is sociotechnical issueCybersecurity 4 security is sociotechnical issue
Cybersecurity 4 security is sociotechnical issue
 
Cybersecurity 3 cybersecurity costs and causes
Cybersecurity 3 cybersecurity costs and causesCybersecurity 3 cybersecurity costs and causes
Cybersecurity 3 cybersecurity costs and causes
 
Cybersecurity 2 cyber attacks
Cybersecurity 2 cyber attacksCybersecurity 2 cyber attacks
Cybersecurity 2 cyber attacks
 
Cybersecurity 1 intro to cybersecurity
Cybersecurity 1 intro to cybersecurityCybersecurity 1 intro to cybersecurity
Cybersecurity 1 intro to cybersecurity
 

KĂĽrzlich hochgeladen

Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
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
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 

KĂĽrzlich hochgeladen (20)

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
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
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
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 

Requirements Engineering Introduction

  • 1. Requirements and Requirements Engineering Ian Sommerville http://www.youtube.com/watch?v=Ec0s0z5uXQ8 An introduction to requirements engineering, 2013 Slide 1
  • 2. Requirements and systems Software-based system User world Requirements An introduction to requirements engineering, 2013 Photo © Liam Quinn Slide 2
  • 3. What are system requirements? • Requirements are defined during the early stages of a system development as a specification of what should be implemented or as a constraint of some kind on the system. An introduction to requirements engineering, 2013 Slide 3
  • 4. Types of requirement • a user-level facility description, • a detailed specification of expected system behaviour, An introduction to requirements engineering, 2013 Slide 4
  • 5. • a general system property, • a specific constraint on the system, An introduction to requirements engineering, 2013 Slide 5
  • 6. • information on how to carry out some computation, • a constraint on the development of the system. An introduction to requirements engineering, 2013 Slide 6
  • 7. Functional requirements • Requirements that define a function or feature of the system • Something that the system should DO An introduction to requirements engineering, 2013 Slide 7
  • 8. • “If a patient is known to be allergic to a particular medication, then prescription of that medication shall result in a warning message being issued to to the prescriber” An introduction to requirements engineering, 2013 Slide 8
  • 9. Non-functional requirements • Requirements that define some observable characteristics or quality of the system • Availability, reliability, safety, security, resilience, … An introduction to requirements engineering, 2013 Slide 9
  • 10. • “The system shall be available to all clinics during normal working hours (Mon-Fri, 0830-1730). Downtime during normal working hours shall not exceed 5 seconds in any one day” An introduction to requirements engineering, 2013 Slide 10
  • 11. Domain requirements • Requirements that are derived from characteristics of the application domain or rules and regulations that apply in that domain An introduction to requirements engineering, 2013 Slide 11
  • 12. • “The system shall implement patient privacy provisions as set out in the 1998 Data Protection Act” An introduction to requirements engineering, 2013 Slide 12
  • 13. What is requirements engineering? • Requirements engineering covers all of the activities involved in discovering, documenting, and maintaining a set of requirements for a computer-based system. An introduction to requirements engineering, 2013 Slide 13
  • 14. An introduction to requirements engineering, 2013 Slide 14
  • 15. • „engineering‟ implies that systematic and repeatable techniques should be used to ensure that system requirements are complete, consistent, relevant, etc. An introduction to requirements engineering, 2013 Slide 15
  • 16. Are requirements important? “The principal problem areas in software development and production are the requirements specification and the management of customer requirements” An introduction to requirements engineering, 2013 Slide 16
  • 17. “... difficulties with requirements are the key root-cause of the safety-related software errors that have persisted until integration and system testing” An introduction to requirements engineering, 2013 Slide 17
  • 18. If the requirements are wrong • the system may be delivered late and cost more than originally expected. An introduction to requirements engineering, 2013 Slide 18
  • 19. If the requirements are wrong • the customer and end-users may not satisfied with the system, • they may not use its facilities or may even decide to scrap it altogether. An introduction to requirements engineering, 2013 Slide 19
  • 20. If the requirements are wrong • the system may be unreliable in use with regular system errors and crashes disrupting normal operation. An introduction to requirements engineering, 2013 Slide 20
  • 21. • If the system continues in use, the costs of maintaining and evolving the system are very high. An introduction to requirements engineering, 2013 Slide 21
  • 22. Software-based system User world Requirements An introduction to requirements engineering, 2013 Photo © Liam Quinn Slide 22
  • 23. Difficulties with requirements • Stakeholders don‟t know what they want from a new system • It is very difficult to imagine how future systems might work An introduction to requirements engineering, 2013 Slide 23
  • 24. • Businesses operate in a rapidly changing environment so their requirements for system support are constantly changing. An introduction to requirements engineering, 2013 Slide 24
  • 25. • Multiple stakeholders with different goals and priorities are involved in the requirements engineering process. An introduction to requirements engineering, 2013 Slide 25
  • 26. • System stakeholders do not have clear ideas about what they need • They can only describe their requirements in a vague and ambiguous way An introduction to requirements engineering, 2013 Slide 26
  • 27. • Requirements are often influenced by political and organisational factors that stakeholders will not admit to publicly. An introduction to requirements engineering, 2013 Slide 27
  • 28. Summary • Requirements define what a system should do and the desirable qualities of that system • Requirements engineering is a set of systematic techniques for defining and validating system requirements • Requirements engineering is difficulties and problems with requirements are the major cause of system problems and project failures An introduction to requirements engineering, 2013 Slide 28