SlideShare uma empresa Scribd logo
1 de 24
© ABB Group
January 30, 2015 | Slide 1
A Large-Scale Industrial Case Study
on Architecture-based Software Reliability Analysis
Heiko Koziolek, Bastian Schlich, Carlos Bilich, ABB Corporate Research, 2010-11-01
Architecture-based Software Reliability Analysis (ABSRA)
What?
 Typical questions of software architects concerning reliability
 „What is the reliability (probability of failures) in my system?“
 „How do individual components contribute to the system reliability?“
 „Which architectural alternative is best for reliability?“
 „Where shall I introduce fault-tolerance mechanisms?“
 „How to distribute my limited testing efforts among components?“
 Additional questions by ABB
 „How much more reliable is a new architecture than a former one?“
 „Does ABSRA work on large-scale systems?“
© ABB Group
January 30, 2015 | Slide 2
Architecture-based Software Reliability Analysis (ABSRA)
How?
© ABB Group
January 30, 2015 | Slide 3
Software
components,
control flow,
reliabilities
R=0.995
R=0.982
R=0.937
Markov
Model
combine
Markov
Model
Solution
trans-
form
R = 0.9923
Predicted
system
reliability
solve
im-
prove
Related work
Existing empirical studies
© ABB Group
January 30, 2015 | Slide 4
”… very little effort has been devoted to the validation
of architecture-based software reliability techniques.”
[Gokhale2007, IEEE Transactions on Dependable and Secure Computing, Vol. 4, No. 1]
Source Name Year Lang. LOC # Components
[Gokhale2004,
Perf. Eval.]
SHARPE 1998 C 35,000 30
[Goseva2001,
ISSRE]
ESA 2001 C 10,000 3
[Goseva2005,
ISSRE]
GCC 2005 C 350,000 13
[Wang2005,
JSS]
SMS 2006 C/C++ 13,000 15
[Goseva2006,
ISSRE]
IDN 2006 C 11,000 6
Source Name Year Lang. LOC # Components
[Gokhale2004,
Perf. Eval.]
SHARPE 1998 C 35,000 30
[Goseva2001,
ISSRE]
ESA 2001 C 10,000 3
[Goseva2005,
ISSRE]
GCC 2005 C 350,000 13
[Wang2005,
JSS]
SMS 2006 C/C++ 13,000 15
[Goseva2006,
ISSRE]
IDN 2006 C 11,000 6
Our Paper ABB 2010 C++ >3,000,000 8 (>100)
System under study: Process control system
© ABB Group
January 30, 2015 | Slide 5
System under study: Process control system
Topology
© ABB Group
January 30, 2015 | Slide 6
Plant / Office Network
Network
Isolation
Device
Remote
Workplaces
Firewall
Internet
Remote
Workplaces
Redundant Network
Workplaces
Controllers
Servers
Fieldbus
Remote I/O and
Field devices
System under study: Process control system
Subsystems within the servers
© ABB Group
January 30, 2015 | Slide 7
Which steps are required for ABSRA?
Estimate component failure probabilities
Estimate transition probabilities
Construct the Markov model
Exploit the results
© ABB Group
January 30, 2015 | Slide 8
Estimate component failure probabilities
Existing methods
Code metrics [Nagappan2006]
• Validity debated
Reliability growth modeling [IEEE Std 1633-2008]
• Requires component failure reports
Random/statistical testing [Miller1992]
• Does not scale, difficult to apply on components
Fault injection [Gokhale2004]
• Does not determine the current reliability
Explicit failure modeling [Cheung2008]
• Accuracy unknown
© ABB Group
January 30, 2015 | Slide 9
Reliability growth modeling
General principle
© ABB Group
January 30, 2015 | Slide 10
  0,
)(
))(exp()()(
),,(
1





l
lilii
ilg




Littlewood/Verrall Model
Reliability growth modeling
Using the Littlewood/Verrall-model on one subsystem
© ABB Group
January 30, 2015 | Slide 11
 Filtered subsystem bug list
 Release dates
 Curve fitting in CASRE 3.0
http://www.openchannelsoftware.com/projects/CASRE_3.0/
Reliability growth modeling
Result
© ABB Group
January 30, 2015 | Slide 12
R1= ...
R8= ...
R4= ...
R3= ...
R5= ...
R6= ...
R7= ...
R2= ...
Which steps are required for ABSRA?
Estimate component failure probabilities
Estimate transition probabilities
Construct the Markov model
Exploit the results
© ABB Group
January 30, 2015 | Slide 13
Estimate component transition probabilities
Existing methods
Exploiting design document [Gokhale2007]
• Only static dependencies in SW architecture
Profiling [Goseva2005]
• Complicated filtering of data required
Manual code instrumentation
• Can be time-comsuming
© ABB Group
January 30, 2015 | Slide 14
Self-coded
script
Estimate component transition probabilities
Profiling with proprietary tools
© ABB Group
January 30, 2015 | Slide 15
Example trace from profiling
Set up and ran the system
Which steps are required for ABSRA?
Estimate component failure probabilities
Estimate transition probabilities
Construct the Markov model
Exploit the results
© ABB Group
January 30, 2015 | Slide 16
Construct the Markov model
Existing state-based methods
[Littlewood1979]
[Cheung1980]
[Laprie1984]
[Kubat1989]
[Gokhale1998]
[Ledoux1999]
[Gokhale1998-2]
© ABB Group
January 30, 2015 | Slide 17
[Goseva-Popstojanova2001]
Cheung model
Adding failure & end states, compute reliability
© ABB Group
January 30, 2015 | Slide 18
[Cheung1980]
Which steps are required for ABSRA?
Estimate component failure probabilities
Estimate transition probabilities
Construct the Markov model
Exploit the results
© ABB Group
January 30, 2015 | Slide 19
Exploit the results
Possibilities
Estimate system reliability [Cheung1980]
• Experience by customers hard to validate
Conduct sensitivity analysis [Gokhale2002]
• Study system reliability for varying component failure rates
Assess costs of bugs [Cheung1980]
• Quantify the effect of an error in component
Evaluate design alternatives [Goseva2001]
• Values for new componentes need to be guessed
Allocate test budgets efficiently [Pietrantuono2010]
• Test critical components more often
© ABB Group
January 30, 2015 | Slide 20
Sensitivity Analysis
Impact of varying subsystem failure rates
© ABB Group
January 30, 2015 | Slide 21
http://www.prismmodelchecker.org/
Evaluation
Cost estimations in person hours (best/worst case)
© ABB Group
January 30, 2015 | Slide 22
Conclusions
Lessons learned
 Getting failure and transition probabilities is hard
 Time consuming, error-prone, limited automation
  Main obstacle for ABSRA is data collection
 Currently rather simple models
 No technologies, concurrency, hardware
 Difficult to evaluate architecture alternatives
 Limited decision support from the predictions
 Lack of empirical studies in literature
 Predominantly small systems
 Often dubious techniques for estimating failure rates
 Replicated case studies needed
© ABB Group
January 30, 2015 | Slide 23
© ABB Group
January 30, 2015 | Slide 24

Mais conteúdo relacionado

Destaque

Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009
Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009
Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009Virtu Institute
 
Master Planning for a Sustainable Campus
Master Planning for a Sustainable CampusMaster Planning for a Sustainable Campus
Master Planning for a Sustainable CampusUNC FocusFoward
 
04 07 المحاضرة الرابعة- السابعة
04 07 المحاضرة الرابعة- السابعة04 07 المحاضرة الرابعة- السابعة
04 07 المحاضرة الرابعة- السابعةKhaled Ali
 
architecture case study bba msu
architecture case study bba msuarchitecture case study bba msu
architecture case study bba msuNisarg bhavsar
 
The bauhaus presentation
The bauhaus presentation The bauhaus presentation
The bauhaus presentation uguntina161616
 
The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...
The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...
The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...ish2009
 
Bauhaus presentation
Bauhaus presentation Bauhaus presentation
Bauhaus presentation chaegawoon
 
Bauhaus final ppt
Bauhaus final pptBauhaus final ppt
Bauhaus final pptSajida Shah
 

Destaque (12)

Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009
Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009
Lecture 2 - Site Analysis - Commercial-Institutional Interiors VDIS10009
 
Master Planning for a Sustainable Campus
Master Planning for a Sustainable CampusMaster Planning for a Sustainable Campus
Master Planning for a Sustainable Campus
 
04 07 المحاضرة الرابعة- السابعة
04 07 المحاضرة الرابعة- السابعة04 07 المحاضرة الرابعة- السابعة
04 07 المحاضرة الرابعة- السابعة
 
architecture case study bba msu
architecture case study bba msuarchitecture case study bba msu
architecture case study bba msu
 
Bauhaus
BauhausBauhaus
Bauhaus
 
The bauhaus presentation
The bauhaus presentation The bauhaus presentation
The bauhaus presentation
 
The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...
The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...
The Origin Of Bauhaus and its influences on The Foundation Program in Arts Ed...
 
The Bauhaus
The BauhausThe Bauhaus
The Bauhaus
 
Bauhaus presentation
Bauhaus presentation Bauhaus presentation
Bauhaus presentation
 
Bauhaus
BauhausBauhaus
Bauhaus
 
Bauhaus
BauhausBauhaus
Bauhaus
 
Bauhaus final ppt
Bauhaus final pptBauhaus final ppt
Bauhaus final ppt
 

Semelhante a A Large-Scale Industrial Case Study on Architecture-based Software Reliability Analysis

6 Years of Performance Modeling at ABB
6 Years of Performance Modeling at ABB6 Years of Performance Modeling at ABB
6 Years of Performance Modeling at ABBHeiko Koziolek
 
The Business Value of SW Quality
The Business Value of SW QualityThe Business Value of SW Quality
The Business Value of SW QualitySQALab
 
A Technique for Testing Composed Web Services Including Footprint
A Technique for Testing Composed Web Services Including FootprintA Technique for Testing Composed Web Services Including Footprint
A Technique for Testing Composed Web Services Including FootprintIRJET Journal
 
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...Altair
 
IRJET- Modelling and Control of Variable Frequency Drive using PLC and Ma...
IRJET-  	  Modelling and Control of Variable Frequency Drive using PLC and Ma...IRJET-  	  Modelling and Control of Variable Frequency Drive using PLC and Ma...
IRJET- Modelling and Control of Variable Frequency Drive using PLC and Ma...IRJET Journal
 
DevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQDevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQStuart Feasey
 
Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...Paul Brebner
 
VARIADORES DE FRECUENCIA ACS880 ABB - EECOL
VARIADORES DE FRECUENCIA ACS880  ABB -  EECOLVARIADORES DE FRECUENCIA ACS880  ABB -  EECOL
VARIADORES DE FRECUENCIA ACS880 ABB - EECOLDANILO PULIDO CARRASCO
 
IRJET - Hardware Benchmarking Application
IRJET - Hardware Benchmarking ApplicationIRJET - Hardware Benchmarking Application
IRJET - Hardware Benchmarking ApplicationIRJET Journal
 
Performance Calculation and Benchmarking using the ISBSG Release 10 Data Rep...
Performance Calculation and Benchmarking  using the ISBSG Release 10 Data Rep...Performance Calculation and Benchmarking  using the ISBSG Release 10 Data Rep...
Performance Calculation and Benchmarking using the ISBSG Release 10 Data Rep...Luigi Buglione
 
434671070-YuMi-Presentacion-pdf.pdf
434671070-YuMi-Presentacion-pdf.pdf434671070-YuMi-Presentacion-pdf.pdf
434671070-YuMi-Presentacion-pdf.pdfAHMEDSTITOU3
 
Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...Paul Brebner
 
Comprehensive Analysis of Software Development Life Cycle Models
Comprehensive Analysis of Software Development Life Cycle ModelsComprehensive Analysis of Software Development Life Cycle Models
Comprehensive Analysis of Software Development Life Cycle ModelsIRJET Journal
 
Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...
Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...
Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...IRJET Journal
 
Software or Service? That’s the question!
Software or Service? That’s the question!Software or Service? That’s the question!
Software or Service? That’s the question!Luigi Buglione
 
Software or service that's the question luigi buglione
Software or service that's the question   luigi buglioneSoftware or service that's the question   luigi buglione
Software or service that's the question luigi buglioneIWSM Mensura
 
Questions for successful test automation projects
Questions for successful test automation projectsQuestions for successful test automation projects
Questions for successful test automation projectsDaniel Ionita
 
Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Shelley Lambert
 

Semelhante a A Large-Scale Industrial Case Study on Architecture-based Software Reliability Analysis (20)

2011 05-27-icse
2011 05-27-icse2011 05-27-icse
2011 05-27-icse
 
6 Years of Performance Modeling at ABB
6 Years of Performance Modeling at ABB6 Years of Performance Modeling at ABB
6 Years of Performance Modeling at ABB
 
The Business Value of SW Quality
The Business Value of SW QualityThe Business Value of SW Quality
The Business Value of SW Quality
 
A Technique for Testing Composed Web Services Including Footprint
A Technique for Testing Composed Web Services Including FootprintA Technique for Testing Composed Web Services Including Footprint
A Technique for Testing Composed Web Services Including Footprint
 
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
Surrogate Model-Based Reliability Analysis of Composite UAV Wing facilitation...
 
IRJET- Modelling and Control of Variable Frequency Drive using PLC and Ma...
IRJET-  	  Modelling and Control of Variable Frequency Drive using PLC and Ma...IRJET-  	  Modelling and Control of Variable Frequency Drive using PLC and Ma...
IRJET- Modelling and Control of Variable Frequency Drive using PLC and Ma...
 
Using Reliability methods
Using Reliability methodsUsing Reliability methods
Using Reliability methods
 
DevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQDevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQ
 
Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...
 
VARIADORES DE FRECUENCIA ACS880 ABB - EECOL
VARIADORES DE FRECUENCIA ACS880  ABB -  EECOLVARIADORES DE FRECUENCIA ACS880  ABB -  EECOL
VARIADORES DE FRECUENCIA ACS880 ABB - EECOL
 
IRJET - Hardware Benchmarking Application
IRJET - Hardware Benchmarking ApplicationIRJET - Hardware Benchmarking Application
IRJET - Hardware Benchmarking Application
 
Performance Calculation and Benchmarking using the ISBSG Release 10 Data Rep...
Performance Calculation and Benchmarking  using the ISBSG Release 10 Data Rep...Performance Calculation and Benchmarking  using the ISBSG Release 10 Data Rep...
Performance Calculation and Benchmarking using the ISBSG Release 10 Data Rep...
 
434671070-YuMi-Presentacion-pdf.pdf
434671070-YuMi-Presentacion-pdf.pdf434671070-YuMi-Presentacion-pdf.pdf
434671070-YuMi-Presentacion-pdf.pdf
 
Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...
 
Comprehensive Analysis of Software Development Life Cycle Models
Comprehensive Analysis of Software Development Life Cycle ModelsComprehensive Analysis of Software Development Life Cycle Models
Comprehensive Analysis of Software Development Life Cycle Models
 
Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...
Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...
Predicting Machine Learning Pipeline Runtimes in the Context of Automated Mac...
 
Software or Service? That’s the question!
Software or Service? That’s the question!Software or Service? That’s the question!
Software or Service? That’s the question!
 
Software or service that's the question luigi buglione
Software or service that's the question   luigi buglioneSoftware or service that's the question   luigi buglione
Software or service that's the question luigi buglione
 
Questions for successful test automation projects
Questions for successful test automation projectsQuestions for successful test automation projects
Questions for successful test automation projects
 
Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014
 

Mais de Heiko Koziolek

Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...Heiko Koziolek
 
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...Heiko Koziolek
 
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of ThingsOpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of ThingsHeiko Koziolek
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringHeiko Koziolek
 
Self-commissioning Industrial IoT Systems
Self-commissioning Industrial IoT SystemsSelf-commissioning Industrial IoT Systems
Self-commissioning Industrial IoT SystemsHeiko Koziolek
 
IoT challenges for Smart Manufacturing
IoT challenges for Smart ManufacturingIoT challenges for Smart Manufacturing
IoT challenges for Smart ManufacturingHeiko Koziolek
 
Software Architecture in Process Automation: UML & the "Smart Factory"
Software Architecture in Process Automation: UML & the "Smart Factory"Software Architecture in Process Automation: UML & the "Smart Factory"
Software Architecture in Process Automation: UML & the "Smart Factory"Heiko Koziolek
 
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin ShellsPlug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin ShellsHeiko Koziolek
 
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...Heiko Koziolek
 
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...Heiko Koziolek
 
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability AnalysisMORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability AnalysisHeiko Koziolek
 
Sustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic ReviewSustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic ReviewHeiko Koziolek
 
The SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsThe SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsHeiko Koziolek
 
Towards Software Sustainability Guides for Industrial Software Systems
Towards Software Sustainability Guides for Industrial Software SystemsTowards Software Sustainability Guides for Industrial Software Systems
Towards Software Sustainability Guides for Industrial Software SystemsHeiko Koziolek
 
Towards an Architectural Style for Multi-tenant Software Applications
Towards an Architectural Style for Multi-tenant Software ApplicationsTowards an Architectural Style for Multi-tenant Software Applications
Towards an Architectural Style for Multi-tenant Software ApplicationsHeiko Koziolek
 
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Heiko Koziolek
 
A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...Heiko Koziolek
 
Parameter Dependencies for Component Reliability Specifications
Parameter Dependencies for Component Reliability SpecificationsParameter Dependencies for Component Reliability Specifications
Parameter Dependencies for Component Reliability SpecificationsHeiko Koziolek
 

Mais de Heiko Koziolek (19)

Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
Bottleneck Identification and Performance Modeling of OPC UA Communication Mo...
 
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
Architectural Decision Forces at Work: Experiences in an Industrial Consultan...
 
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of ThingsOpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
OpenPnP: a Plug-and-Produce Architecture for the Industrial Internet of Things
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
 
Self-commissioning Industrial IoT Systems
Self-commissioning Industrial IoT SystemsSelf-commissioning Industrial IoT Systems
Self-commissioning Industrial IoT Systems
 
IoT challenges for Smart Manufacturing
IoT challenges for Smart ManufacturingIoT challenges for Smart Manufacturing
IoT challenges for Smart Manufacturing
 
Software Architecture in Process Automation: UML & the "Smart Factory"
Software Architecture in Process Automation: UML & the "Smart Factory"Software Architecture in Process Automation: UML & the "Smart Factory"
Software Architecture in Process Automation: UML & the "Smart Factory"
 
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin ShellsPlug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
Plug-and-Produce based on Standardized Industrie 4.0 Asset Admin Shells
 
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
Towards the Automation Cloud: Architectural Challenges for a Novel Smart Ecos...
 
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
Rapid Performance Modeling by transforming Use Case Maps to Palladio Componen...
 
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability AnalysisMORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
MORPHOSIS: A Case Study on Lightweight Architecture Sustainability Analysis
 
Sustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic ReviewSustainability Evaluation of Software Architectures: A Systematic Review
Sustainability Evaluation of Software Architectures: A Systematic Review
 
The SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software ApplicationsThe SPOSAD Architectural Style for Multi-tenant Software Applications
The SPOSAD Architectural Style for Multi-tenant Software Applications
 
Towards Software Sustainability Guides for Industrial Software Systems
Towards Software Sustainability Guides for Industrial Software SystemsTowards Software Sustainability Guides for Industrial Software Systems
Towards Software Sustainability Guides for Industrial Software Systems
 
Towards an Architectural Style for Multi-tenant Software Applications
Towards an Architectural Style for Multi-tenant Software ApplicationsTowards an Architectural Style for Multi-tenant Software Applications
Towards an Architectural Style for Multi-tenant Software Applications
 
PerOpteryx
PerOpteryxPerOpteryx
PerOpteryx
 
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...Evolving Industrial Software Architectures into a Software Product Line: A Ca...
Evolving Industrial Software Architectures into a Software Product Line: A Ca...
 
A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...A Model Transformation from the Palladio Component Model to Layered Queueing ...
A Model Transformation from the Palladio Component Model to Layered Queueing ...
 
Parameter Dependencies for Component Reliability Specifications
Parameter Dependencies for Component Reliability SpecificationsParameter Dependencies for Component Reliability Specifications
Parameter Dependencies for Component Reliability Specifications
 

Último

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 

Último (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

A Large-Scale Industrial Case Study on Architecture-based Software Reliability Analysis

  • 1. © ABB Group January 30, 2015 | Slide 1 A Large-Scale Industrial Case Study on Architecture-based Software Reliability Analysis Heiko Koziolek, Bastian Schlich, Carlos Bilich, ABB Corporate Research, 2010-11-01
  • 2. Architecture-based Software Reliability Analysis (ABSRA) What?  Typical questions of software architects concerning reliability  „What is the reliability (probability of failures) in my system?“  „How do individual components contribute to the system reliability?“  „Which architectural alternative is best for reliability?“  „Where shall I introduce fault-tolerance mechanisms?“  „How to distribute my limited testing efforts among components?“  Additional questions by ABB  „How much more reliable is a new architecture than a former one?“  „Does ABSRA work on large-scale systems?“ © ABB Group January 30, 2015 | Slide 2
  • 3. Architecture-based Software Reliability Analysis (ABSRA) How? © ABB Group January 30, 2015 | Slide 3 Software components, control flow, reliabilities R=0.995 R=0.982 R=0.937 Markov Model combine Markov Model Solution trans- form R = 0.9923 Predicted system reliability solve im- prove
  • 4. Related work Existing empirical studies © ABB Group January 30, 2015 | Slide 4 ”… very little effort has been devoted to the validation of architecture-based software reliability techniques.” [Gokhale2007, IEEE Transactions on Dependable and Secure Computing, Vol. 4, No. 1] Source Name Year Lang. LOC # Components [Gokhale2004, Perf. Eval.] SHARPE 1998 C 35,000 30 [Goseva2001, ISSRE] ESA 2001 C 10,000 3 [Goseva2005, ISSRE] GCC 2005 C 350,000 13 [Wang2005, JSS] SMS 2006 C/C++ 13,000 15 [Goseva2006, ISSRE] IDN 2006 C 11,000 6 Source Name Year Lang. LOC # Components [Gokhale2004, Perf. Eval.] SHARPE 1998 C 35,000 30 [Goseva2001, ISSRE] ESA 2001 C 10,000 3 [Goseva2005, ISSRE] GCC 2005 C 350,000 13 [Wang2005, JSS] SMS 2006 C/C++ 13,000 15 [Goseva2006, ISSRE] IDN 2006 C 11,000 6 Our Paper ABB 2010 C++ >3,000,000 8 (>100)
  • 5. System under study: Process control system © ABB Group January 30, 2015 | Slide 5
  • 6. System under study: Process control system Topology © ABB Group January 30, 2015 | Slide 6 Plant / Office Network Network Isolation Device Remote Workplaces Firewall Internet Remote Workplaces Redundant Network Workplaces Controllers Servers Fieldbus Remote I/O and Field devices
  • 7. System under study: Process control system Subsystems within the servers © ABB Group January 30, 2015 | Slide 7
  • 8. Which steps are required for ABSRA? Estimate component failure probabilities Estimate transition probabilities Construct the Markov model Exploit the results © ABB Group January 30, 2015 | Slide 8
  • 9. Estimate component failure probabilities Existing methods Code metrics [Nagappan2006] • Validity debated Reliability growth modeling [IEEE Std 1633-2008] • Requires component failure reports Random/statistical testing [Miller1992] • Does not scale, difficult to apply on components Fault injection [Gokhale2004] • Does not determine the current reliability Explicit failure modeling [Cheung2008] • Accuracy unknown © ABB Group January 30, 2015 | Slide 9
  • 10. Reliability growth modeling General principle © ABB Group January 30, 2015 | Slide 10   0, )( ))(exp()()( ),,( 1      l lilii ilg     Littlewood/Verrall Model
  • 11. Reliability growth modeling Using the Littlewood/Verrall-model on one subsystem © ABB Group January 30, 2015 | Slide 11  Filtered subsystem bug list  Release dates  Curve fitting in CASRE 3.0 http://www.openchannelsoftware.com/projects/CASRE_3.0/
  • 12. Reliability growth modeling Result © ABB Group January 30, 2015 | Slide 12 R1= ... R8= ... R4= ... R3= ... R5= ... R6= ... R7= ... R2= ...
  • 13. Which steps are required for ABSRA? Estimate component failure probabilities Estimate transition probabilities Construct the Markov model Exploit the results © ABB Group January 30, 2015 | Slide 13
  • 14. Estimate component transition probabilities Existing methods Exploiting design document [Gokhale2007] • Only static dependencies in SW architecture Profiling [Goseva2005] • Complicated filtering of data required Manual code instrumentation • Can be time-comsuming © ABB Group January 30, 2015 | Slide 14
  • 15. Self-coded script Estimate component transition probabilities Profiling with proprietary tools © ABB Group January 30, 2015 | Slide 15 Example trace from profiling Set up and ran the system
  • 16. Which steps are required for ABSRA? Estimate component failure probabilities Estimate transition probabilities Construct the Markov model Exploit the results © ABB Group January 30, 2015 | Slide 16
  • 17. Construct the Markov model Existing state-based methods [Littlewood1979] [Cheung1980] [Laprie1984] [Kubat1989] [Gokhale1998] [Ledoux1999] [Gokhale1998-2] © ABB Group January 30, 2015 | Slide 17 [Goseva-Popstojanova2001]
  • 18. Cheung model Adding failure & end states, compute reliability © ABB Group January 30, 2015 | Slide 18 [Cheung1980]
  • 19. Which steps are required for ABSRA? Estimate component failure probabilities Estimate transition probabilities Construct the Markov model Exploit the results © ABB Group January 30, 2015 | Slide 19
  • 20. Exploit the results Possibilities Estimate system reliability [Cheung1980] • Experience by customers hard to validate Conduct sensitivity analysis [Gokhale2002] • Study system reliability for varying component failure rates Assess costs of bugs [Cheung1980] • Quantify the effect of an error in component Evaluate design alternatives [Goseva2001] • Values for new componentes need to be guessed Allocate test budgets efficiently [Pietrantuono2010] • Test critical components more often © ABB Group January 30, 2015 | Slide 20
  • 21. Sensitivity Analysis Impact of varying subsystem failure rates © ABB Group January 30, 2015 | Slide 21 http://www.prismmodelchecker.org/
  • 22. Evaluation Cost estimations in person hours (best/worst case) © ABB Group January 30, 2015 | Slide 22
  • 23. Conclusions Lessons learned  Getting failure and transition probabilities is hard  Time consuming, error-prone, limited automation   Main obstacle for ABSRA is data collection  Currently rather simple models  No technologies, concurrency, hardware  Difficult to evaluate architecture alternatives  Limited decision support from the predictions  Lack of empirical studies in literature  Predominantly small systems  Often dubious techniques for estimating failure rates  Replicated case studies needed © ABB Group January 30, 2015 | Slide 23
  • 24. © ABB Group January 30, 2015 | Slide 24

Notas do Editor

  1. Why is this done? Benefits:- Determine components most contributing to software architecture- Allocate testing efforts, goals for testing units- Evaluate design alternatives, improve architecture- More reliabile system, quantitative numbers
  2. report on experiences and methods usedlessons learnedwhat needs to be improved (from our perspective)
  3. 3 MLOC C++, COM, ATL9 subsystems, >100 componentsmanaging industrial process (e.g., power generation, paper production, oil and gas refining, etc.)distributed system, controllers, servers, networks, field devicesoperator workplace for controlling the process: montoring sensor readings, manipulating actuators
  4. - also agenda of the rest of the talk
  5. Schrift größer, weniger text
  6. -Selected Littlewood/Verrall model from IEEE Std. 1633Industry affinity (SCADA), good fit in initial testsTime between failures exponentially distributed:Repair may introduce new faults, repair time = 0  is a random variable with Gamma distributionWe were able to fit the whole dataset without filtering data at5% significance level with the quadratic Littlewood/Verrallmodel (LV-Q)failure reports are often not mapped to components in bug tracking systemsdifficult to select a Modeltoo many models availablestatistical validity hard
  7. failure data from bugtracker, filtered for critical/high severity bugsquadratic model: programmers have good intentions in fixing the codedone for each subsystem, result: 9 failure probabilities
  8. Installed and configured the systemDefined 2 load profiles, configured load driversConfigured ABB tool to log subsystem transitionsExecuted load drivers for each profile (2 days)Processed logs (2 GB) with scriptAdded initial, final stateCalculate transition probabilitiesValidated the modelCompared with architectural documentationInterviewed PCS experts
  9. - Q: transition probabilitiy matrix (by eliminating failure state)S: steady state probabilitiesR: system reliability (probability of reaching the successstate
  10. units obfuscated for confidentiality reasonssubsystem 8 has highest failure probabilitysubsystem 1 has highest sensitivity to system reliabilitysubsystem 6 is used by many subsystems, but only limited contribution to system reliability
  11. verteilung erklärenMany variation points, limited step-by-step guidanceTime-consuming data collection for non-expertsBest for for small changes to existing systemsNeeds to be tailored to available data