SlideShare una empresa de Scribd logo
1 de 14
Software Quality Attributes 
Hayim Makabee 
International Association of Software Architects in Israel
About Me: 
 Education: 
 Experience of 20 years in the Israeli software industry. 
 Today:
Software Quality Attributes 
 Quality of software systems = Collection of software quality 
attributes. 
 System requirements => Define what is expected regarding 
these quality attributes. 
 Software Quality Attributes: 
 Static 
 Dynamic
Static Quality Attributes 
 Static quality attributes reflect the system’s structure and 
organization. 
 Static quality attributes are directed related to: 
 The architecture and design of the software system. 
 The way the system was implemented (its source code). 
 Static quality attributes are not visible to the end-user but they 
affect the system’s development and maintenance costs.
Examples of Static Attributes 
 Modularity 
 Coupling 
 Cohesion 
 Testability 
 Maintainability 
 Extensibility 
 Reusability
Testing Static Quality Attributes 
 Inspection: 
 Design Reviews 
 Code Reviews 
 Pair Programming
Static Code Analysis 
 Coding Style: 
 Naming 
 Documentation 
 Software Quality Metrics: 
 Complexity 
 Coupling
Dynamic Quality Attributes 
 Dynamic quality attributes reflect the behavior of the system 
during its execution. 
 Dynamic quality attributes are directly related to: 
 The system’s architecture, design and source code. 
 The system’s configuration and deployment parameters. 
 The system’s environment and the platform on which it is running. 
 Dynamic quality attributes exist at runtime, and are visible to 
the end-user.
Examples of Dynamic Attributes 
 Latency 
 Throughput 
 Robustness 
 Scalability 
 Fault-Tolerance
Testing Dynamic Quality Attributes 
 Code Profilers: 
 Memory Usage 
 Execution Time
Non-Functional Testing 
 Performance Tests 
 Load/Stress Tests 
 Robustness Tests 
 Simulators 
 Bombers 
 Log Players
Quality Attributes and Architectural 
Tradeoffs 
 Architectural Decision: Stateless vs. Stateful Servers. 
Load 
Balancer 
Server 1 
Server 2 
Server 3 
DB
Summary 
 Quality of software systems = Collection of software quality 
attributes. 
 Static quality attributes reflect the system’s structure and 
organization. 
 Dynamic quality attributes reflect the behavior of the system 
during its execution. 
 Quality attributes require diverse testing methods and tools. 
 Quality attributes may drive architectural tradeoffs.
Thanks! 
Q&A

Más contenido relacionado

La actualidad más candente

Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design IntroductionUsman Khan
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-designOliver Cheng
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)IIUI
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSachithra Gayan
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design Saqib Raza
 
Quality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design PatternsQuality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design PatternsGatte Ravindranath
 
Software Quality Challenge
Software Quality ChallengeSoftware Quality Challenge
Software Quality ChallengeHelmy Satria
 
Software quality
Software qualitySoftware quality
Software qualityjagadeesan
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9koolkampus
 

La actualidad más candente (20)

Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design Introduction
 
Pressman ch-11-component-level-design
Pressman ch-11-component-level-designPressman ch-11-component-level-design
Pressman ch-11-component-level-design
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Quality & Reliability in Software Engineering
Quality & Reliability in Software EngineeringQuality & Reliability in Software Engineering
Quality & Reliability in Software Engineering
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
User Interface Analysis and Design
User Interface Analysis and DesignUser Interface Analysis and Design
User Interface Analysis and Design
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Software design
Software designSoftware design
Software design
 
Quality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design PatternsQuality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design Patterns
 
Software Quality Challenge
Software Quality ChallengeSoftware Quality Challenge
Software Quality Challenge
 
Software quality
Software qualitySoftware quality
Software quality
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Software process
Software processSoftware process
Software process
 
Software quality
Software qualitySoftware quality
Software quality
 
Ch1 introduction
Ch1 introductionCh1 introduction
Ch1 introduction
 

Similar a Software Quality Attributes and Their Testing

Architecting Component-Based Systems
Architecting Component-Based SystemsArchitecting Component-Based Systems
Architecting Component-Based Systemsvadapav123
 
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using addJavid iqbal hashmi
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysissslovepk
 
System quality attributes
System quality attributes System quality attributes
System quality attributes Adil Mehmoood
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleNeeraj Kumar Singh
 
Hirschmann: Automotive SPICE Requirements for development process and tools
Hirschmann: Automotive SPICE Requirements for development process and tools Hirschmann: Automotive SPICE Requirements for development process and tools
Hirschmann: Automotive SPICE Requirements for development process and tools Intland Software GmbH
 
Differences asked in Software Testing Interview.
Differences asked in Software Testing Interview. Differences asked in Software Testing Interview.
Differences asked in Software Testing Interview. Siddharth Sharma
 
Software Quality Architecture And Code Audit
Software Quality Architecture And Code AuditSoftware Quality Architecture And Code Audit
Software Quality Architecture And Code AuditXebia IT Architects
 
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)Amr E. Mohamed
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validationAman Adhikari
 
Emad Samy Mahmoud Mekdad
Emad Samy Mahmoud MekdadEmad Samy Mahmoud Mekdad
Emad Samy Mahmoud MekdadEmad
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineeringNameirakpam Sundari
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleNeeraj Kumar Singh
 
Mohammed Kharma - A flexible framework for quality assurance and testing of s...
Mohammed Kharma - A flexible framework for quality assurance and testing of s...Mohammed Kharma - A flexible framework for quality assurance and testing of s...
Mohammed Kharma - A flexible framework for quality assurance and testing of s...Mohammed Kharma
 
Software testing
Software testingSoftware testing
Software testingRavi Dasari
 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Education Front
 

Similar a Software Quality Attributes and Their Testing (20)

Architecting Component-Based Systems
Architecting Component-Based SystemsArchitecting Component-Based Systems
Architecting Component-Based Systems
 
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using add
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
System quality attributes
System quality attributes System quality attributes
System quality attributes
 
software engineering
 software engineering software engineering
software engineering
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle
 
Hirschmann: Automotive SPICE Requirements for development process and tools
Hirschmann: Automotive SPICE Requirements for development process and tools Hirschmann: Automotive SPICE Requirements for development process and tools
Hirschmann: Automotive SPICE Requirements for development process and tools
 
Differences asked in Software Testing Interview.
Differences asked in Software Testing Interview. Differences asked in Software Testing Interview.
Differences asked in Software Testing Interview.
 
Software Quality Architecture And Code Audit
Software Quality Architecture And Code AuditSoftware Quality Architecture And Code Audit
Software Quality Architecture And Code Audit
 
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validation
 
Emad Samy Mahmoud Mekdad
Emad Samy Mahmoud MekdadEmad Samy Mahmoud Mekdad
Emad Samy Mahmoud Mekdad
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineering
 
Amq Overview Continuous Quality Assurance
Amq Overview Continuous Quality AssuranceAmq Overview Continuous Quality Assurance
Amq Overview Continuous Quality Assurance
 
Chapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software LifecycleChapter 3 - Performance Testing in the Software Lifecycle
Chapter 3 - Performance Testing in the Software Lifecycle
 
Mohammed Kharma - A flexible framework for quality assurance and testing of s...
Mohammed Kharma - A flexible framework for quality assurance and testing of s...Mohammed Kharma - A flexible framework for quality assurance and testing of s...
Mohammed Kharma - A flexible framework for quality assurance and testing of s...
 
Software testing
Software testingSoftware testing
Software testing
 
EffectiveSoft QA Services
EffectiveSoft QA ServicesEffectiveSoft QA Services
EffectiveSoft QA Services
 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)
 

Más de Hayim Makabee

Managing your Reputation
Managing your ReputationManaging your Reputation
Managing your ReputationHayim Makabee
 
Applications of Machine Learning - INDT Webinar
Applications of Machine Learning - INDT WebinarApplications of Machine Learning - INDT Webinar
Applications of Machine Learning - INDT WebinarHayim Makabee
 
Applications of Machine Learning
Applications of Machine LearningApplications of Machine Learning
Applications of Machine LearningHayim Makabee
 
Blue Ocean Strategy: KashKlik Use Case
Blue Ocean Strategy: KashKlik Use CaseBlue Ocean Strategy: KashKlik Use Case
Blue Ocean Strategy: KashKlik Use CaseHayim Makabee
 
Managing your Reputation Gvahim Webinar
Managing your Reputation Gvahim WebinarManaging your Reputation Gvahim Webinar
Managing your Reputation Gvahim WebinarHayim Makabee
 
Explainable Machine Learning (Explainable ML)
Explainable Machine Learning (Explainable ML)Explainable Machine Learning (Explainable ML)
Explainable Machine Learning (Explainable ML)Hayim Makabee
 
Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)Hayim Makabee
 
Managing your Reputation
Managing your ReputationManaging your Reputation
Managing your ReputationHayim Makabee
 
The Story of a Young Oleh (Immigrant in Israel)
The Story of a Young Oleh (Immigrant in Israel)The Story of a Young Oleh (Immigrant in Israel)
The Story of a Young Oleh (Immigrant in Israel)Hayim Makabee
 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile DevelopmentHayim Makabee
 
Adaptable Designs for Agile Software Development
Adaptable Designs for Agile  Software DevelopmentAdaptable Designs for Agile  Software Development
Adaptable Designs for Agile Software DevelopmentHayim Makabee
 
Applications of Machine Learning
Applications of Machine LearningApplications of Machine Learning
Applications of Machine LearningHayim Makabee
 
Antifragile Software Design
Antifragile Software DesignAntifragile Software Design
Antifragile Software DesignHayim Makabee
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...Hayim Makabee
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...Hayim Makabee
 
The SOLID Principles Illustrated by Design Patterns
The SOLID Principles Illustrated by Design PatternsThe SOLID Principles Illustrated by Design Patterns
The SOLID Principles Illustrated by Design PatternsHayim Makabee
 
Aliyah: Looking for a hi-tech job in Israel
Aliyah: Looking for a hi-tech job in IsraelAliyah: Looking for a hi-tech job in Israel
Aliyah: Looking for a hi-tech job in IsraelHayim Makabee
 
The Role of the Software Architect (short version)
The Role of the Software Architect (short version)The Role of the Software Architect (short version)
The Role of the Software Architect (short version)Hayim Makabee
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software ArchitectHayim Makabee
 
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...Hayim Makabee
 

Más de Hayim Makabee (20)

Managing your Reputation
Managing your ReputationManaging your Reputation
Managing your Reputation
 
Applications of Machine Learning - INDT Webinar
Applications of Machine Learning - INDT WebinarApplications of Machine Learning - INDT Webinar
Applications of Machine Learning - INDT Webinar
 
Applications of Machine Learning
Applications of Machine LearningApplications of Machine Learning
Applications of Machine Learning
 
Blue Ocean Strategy: KashKlik Use Case
Blue Ocean Strategy: KashKlik Use CaseBlue Ocean Strategy: KashKlik Use Case
Blue Ocean Strategy: KashKlik Use Case
 
Managing your Reputation Gvahim Webinar
Managing your Reputation Gvahim WebinarManaging your Reputation Gvahim Webinar
Managing your Reputation Gvahim Webinar
 
Explainable Machine Learning (Explainable ML)
Explainable Machine Learning (Explainable ML)Explainable Machine Learning (Explainable ML)
Explainable Machine Learning (Explainable ML)
 
Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)
 
Managing your Reputation
Managing your ReputationManaging your Reputation
Managing your Reputation
 
The Story of a Young Oleh (Immigrant in Israel)
The Story of a Young Oleh (Immigrant in Israel)The Story of a Young Oleh (Immigrant in Israel)
The Story of a Young Oleh (Immigrant in Israel)
 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile Development
 
Adaptable Designs for Agile Software Development
Adaptable Designs for Agile  Software DevelopmentAdaptable Designs for Agile  Software Development
Adaptable Designs for Agile Software Development
 
Applications of Machine Learning
Applications of Machine LearningApplications of Machine Learning
Applications of Machine Learning
 
Antifragile Software Design
Antifragile Software DesignAntifragile Software Design
Antifragile Software Design
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...
 
The SOLID Principles Illustrated by Design Patterns
The SOLID Principles Illustrated by Design PatternsThe SOLID Principles Illustrated by Design Patterns
The SOLID Principles Illustrated by Design Patterns
 
Aliyah: Looking for a hi-tech job in Israel
Aliyah: Looking for a hi-tech job in IsraelAliyah: Looking for a hi-tech job in Israel
Aliyah: Looking for a hi-tech job in Israel
 
The Role of the Software Architect (short version)
The Role of the Software Architect (short version)The Role of the Software Architect (short version)
The Role of the Software Architect (short version)
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software Architect
 
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...
 

Último

A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 

Último (20)

A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 

Software Quality Attributes and Their Testing

  • 1. Software Quality Attributes Hayim Makabee International Association of Software Architects in Israel
  • 2. About Me:  Education:  Experience of 20 years in the Israeli software industry.  Today:
  • 3. Software Quality Attributes  Quality of software systems = Collection of software quality attributes.  System requirements => Define what is expected regarding these quality attributes.  Software Quality Attributes:  Static  Dynamic
  • 4. Static Quality Attributes  Static quality attributes reflect the system’s structure and organization.  Static quality attributes are directed related to:  The architecture and design of the software system.  The way the system was implemented (its source code).  Static quality attributes are not visible to the end-user but they affect the system’s development and maintenance costs.
  • 5. Examples of Static Attributes  Modularity  Coupling  Cohesion  Testability  Maintainability  Extensibility  Reusability
  • 6. Testing Static Quality Attributes  Inspection:  Design Reviews  Code Reviews  Pair Programming
  • 7. Static Code Analysis  Coding Style:  Naming  Documentation  Software Quality Metrics:  Complexity  Coupling
  • 8. Dynamic Quality Attributes  Dynamic quality attributes reflect the behavior of the system during its execution.  Dynamic quality attributes are directly related to:  The system’s architecture, design and source code.  The system’s configuration and deployment parameters.  The system’s environment and the platform on which it is running.  Dynamic quality attributes exist at runtime, and are visible to the end-user.
  • 9. Examples of Dynamic Attributes  Latency  Throughput  Robustness  Scalability  Fault-Tolerance
  • 10. Testing Dynamic Quality Attributes  Code Profilers:  Memory Usage  Execution Time
  • 11. Non-Functional Testing  Performance Tests  Load/Stress Tests  Robustness Tests  Simulators  Bombers  Log Players
  • 12. Quality Attributes and Architectural Tradeoffs  Architectural Decision: Stateless vs. Stateful Servers. Load Balancer Server 1 Server 2 Server 3 DB
  • 13. Summary  Quality of software systems = Collection of software quality attributes.  Static quality attributes reflect the system’s structure and organization.  Dynamic quality attributes reflect the behavior of the system during its execution.  Quality attributes require diverse testing methods and tools.  Quality attributes may drive architectural tradeoffs.