managing assurance cases in model based software systemskokalys/files/icse17slides.pdf ·  ·...

28
Managing Assurance Cases in Model Based Software Systems Sahar Kokaly McMaster University and University of Toronto, Canada [email protected] Supervised by: Tom Maibaum (McMaster University) and Marsha Chechik (University of Toronto) ICSE’17 Doctoral Symposium May 23, 2017

Upload: vuongdan

Post on 15-Apr-2018

222 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Managing Assurance Cases in Model Based Software Systems

Sahar Kokaly McMaster University and University of Toronto, Canada

[email protected]

Supervised by: Tom Maibaum (McMaster University) and Marsha Chechik (University of Toronto)

ICSE’17 Doctoral Symposium May 23, 2017

Page 2: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

The “thesis” of my thesis

¤  The state of practice in compliance management can be made more effective using model management.

2

Page 3: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

The “thesis” of my thesis

¤  The state of practice in compliance management can be made more effective using model management.

3

Page 4: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Context

4

Page 5: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Software Safety Standards

¤  Regulations and standards, e.g., ISO 26262 (Functional Safety in Road Vehicles) to demonstrate compliance.

Hazardous Events (HE)

Safety Goals (SG)

Functional Safety Requirements (FSR)

Technical Safety Requirements (TSR)

Hardware Safety Requirements

(HWSR)

Software Safety Requirements

(SWSR)

defined by

refines

refines

decomposed

5

Page 6: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Safety Cases (a special kind of assurance case)

¤  A Safety Case is an argument which demonstrates that each of the safety goals has been met, by eventually linking them to evidence in the system.

¤  Evidence can come in many forms: e.g., test results, analyses, model checking results, expert opinion, etc.

6

Page 7: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Example: Power Sliding Door

7

Page 8: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

The “thesis” of my thesis

¤  The state of practice in compliance management can be made more effective using model management.

8

Page 9: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Model Based Software Systems

¤  Models as first class citizens

¤  Model Driven Engineering “MDE” and the ultimate goal of automatic code generation

¤  Advantages: ¤  Reduce accidental complexity by working at a higher level

of abstraction

¤  Minimize development cost

9

Page 10: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Example: Power Sliding Door System

requestDoorOpen() requestDoorClose()

State: {open, closed}

requestSpeed() sensed_speed: Real

request Speed() closed: Boolean sensed_speed: Real

getSpeed(sensed_speed) sensed_speed: Real

openDoor() closeDoor() powered: Boolean activated: Boolean

powers controls

communicatesWith communicatesWith

communicatesWith

controls

vs_ecu:VSECU ac_ecu:ACECU a:Actuator ds:DriverSwitch s:RedundantSwitch

ds.requestDoorOpen() ac_ecu.requestSpeed()

ac_ecu.sensed_speed

[if ac_ecu.sensed_speed<=15 and a.powered and s.closed] a.activated = True, a.openDoor()

ds.requestDoorClose()

[if ac_ecu.sensed_speed<=15 and a.powered and s.closed] a.activated = True, a.closeDoor()

s.requestSpeed()

[if s.sensed_speed<=15] s.closed else s.open

par

R: CD-SD

PSD: CD

PSD: SD

ac_ecu.requestSpeed()

ac_ecu.sensed_speed

Power Sliding Door System

10

Page 11: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

The Model Management Toolbox

11

lift slice

match (bidirectional) model transformation

merge

+

diff

+ MegaModel Management Operators (map, filter, reduce) and lifted operators

Page 12: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

The “thesis” of my thesis

¤  The state of practice in compliance management can be made more effective using model management.

12

Page 13: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

let’s consider the following compliance management scenario…

13

Page 14: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Problem: Safety Case and System Co-Evolution

SafetyCase

SystemModel SystemModel’

SafetyCase’

Change

R R’

?

Problem: Can we aid the safety engineer in constructing a safety case for an evolved system by reusing the components of the original safety case as much and as soundly as possible, thus reducing the overall revision cost incurred?

14

Necessary step: Impact assessment to identify how changes in the system affect the safety case.

Page 15: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Model Based Safety Case Impact Assessment due to System Changes

ModelChecking

PSD:CD

TestResults

PSD:SD

!

!!! !

!!!

!

reuse recheck revise

Goal

Context

Sol.

Str.IsSupportedBy

IsSolvedBy

InContextOf

✓ ✓ ✓

𝐴

𝐶3

recheck𝐶2

6 7

𝑆 𝑆′

𝐴′complete

change 𝐶1𝑎𝑚𝐶0𝑚𝐶0𝑎

𝐶1𝑑𝑚𝐶0𝑚𝐶0𝑑

𝐷

𝑅 𝑅′𝑅𝐴′1

23

44

5

revise 8,9

System Megamodel

Annotated Safety Case

Model Slicers

Delta (change)

Safety Case

Traceability

Model-Based Impact Assessment Algorithm

[MODELS’16]: original approach

✓ ! reuse recheck revise

15 [SafeComp’17]: improved approach, safety case slicer, cost-savings analysis

Page 16: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Research Objectives

¤  RO1: Assurance Case Modeling.

¤  RO2: Modeling the Compliance Ecosystem.

¤  RO3: Assurance Case Operators.

¤  RO4: Model Management Workflows for Compliance Scenarios.

¤  RO5: Application in the Automotive Domain.

¤  RO6: Tool Building.

¤  RO7: Validation.

16

Page 17: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Research Objectives

¤  RO1: Assurance Case Modeling.

¤  RO2: Modeling the Compliance Ecosystem.

¤  RO3: Assurance Case Operators.

¤  RO4: Model Management Workflows for Compliance Scenarios.

¤  RO5: Application in the Automotive Domain.

¤  RO6: Tool Building.

¤  RO7: Validation.

17

Page 18: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Research Contributions

¤  RO1: Assurance Case Modeling à [SafeComp’17]

¤  RO2: Modeling the Compliance Ecosystem à [MiSE’16]

¤  RO3: Assurance Case Operators à [SafeComp’17]

¤  RO4: Model Management Workflows for Compliance Scenarios à [MiSE’16, MoDELS’16, SafeComp’17]

¤  RO5: Application in the Automotive Domain à partially in [SafeComp’17]

¤  RO6: Tool Building à [planned]

¤  RO7: Validation à [planned]

18

Page 19: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Related Work: Using Modeling for Compliance

¤  Compliance Management Frameworks ¤  e.g., [Hamou-Lhadj], [DLVara], [Habli2008]

¤  Algorithms and Operators for Compliance ¤  e.g., [Nejati], [Ghanavati]

¤  Modeling Standards and Assurance Cases ¤  e.g., [Kelly2004], [Luo] [Panesar-Walawege], [Ghanavati] [Bandur]

¤  Model-based Approaches for Compliance ¤  e.g., [Habli2010], [Gallina]

¤  Safety Case Construction and Maintenance ¤  e.g., [Kell2001], [Li], [Jaradat]

19

Page 20: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Our Work:

¤  Uses model management to construct workflows that address compliance scenarios especially for automotive systems.

¤  Uses specific operators defined in related work to construct larger and more impactful workflows.

¤  Out of scope: we do not focus on safety case construction, instead, we assume presence of a safety case and focus on constructing model-based workflows for scenarios such as safety case impact assessment and reuse.

20

Page 21: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Next Steps: Tool Support

•  RO6: Tool Support •  Q1: How do we best provide tool support for our approaches?

•  Q2: How can the compliance management workflows we propose be implemented on top of an existing model management tool? If so, what type of adaptation is needed?

•  Q3: What are the missing components that will allow us to work with and manage compliance ecosystems which are heterogeneous in nature?

21

Page 22: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Next Steps: Validation

•  RO7: Validation •  Q1: Given the tool support, how do we validate the correctness of

the approaches presented as model management workflows?

•  Q2: How do we evaluate their effectiveness with respect to efficiency, cost savings and applicability (e.g., how they fit into a real-world software development and safety assessment process)?

22

Page 23: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Summary

¤  The “thesis” of my thesis: The state of practice in compliance management can be made more effective using model management.

¤  So, what is the “impact”? ¤  Industrial:

¤  reduce cost of managing assurance cases as model-based systems evolve (e.g., composition, incrementality, product lines)

¤  Academic: ¤  many open problems stated in “Model Management for Regulatory

Compliance: a Position Paper” [MiSE’16] ¤  MMINT: Model Management INTeractive tool

https://github.com/adisandro/MMINT/

23

Page 24: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Managing Assurance Cases in Model Based Software Systems

Sahar Kokaly McMaster University and University of Toronto, Canada

[email protected]

Supervised by: Tom Maibaum (McMaster University) and Marsha Chechik (University of Toronto)

ICSE’17 Doctoral Symposium May 23, 2017

Questions?

Page 25: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Bibliography [DLVara] J. L. de la Vara and R. K. Panesar-Walawege, “Safetymet: A Metamodel or Safety Standards,” in Proc. of MODELS’13. Springer, 2013

[Habli2008] I. Habli and T. Kelly, “A Model-Driven Approach to Assuring Process Reliability,” in Proc. of ISSRE’08. IEEE, 2008.

[Hamou-Lhadj] A. Hamou-Lhadj and A. Hamou-Lhadj, “Towards a Compliance Support Framework for Global Software Companies,” in Proc. of SEA’07, 2007

[Nejati] S. Nejati, M. Sabetzadeh, D. Falessi, L. Briand, and T. Coq, “A SysMLbased Approach to Traceability Management and Design Slicing in Support of Safety Certification: Framework, Tool Support, and Case Studies,” Information and Software Technology, vol. 54, no. 6

[Ghanavati] S. Ghanavati, A. Rifaut, E. Dubois, and D. Amyot, “Goal-Oriented Compliance with Multiple Regulations,” in Proc. of RE’14. IEEE, 2014

[Luo] Y. Luo, M. van den Brand, L. Engelen, J. Favaro, M. Klabbers, and G. Sartori, “Extracting Models from ISO 26262 for Reusable SafetyAssurance,” in Proc. of ICSR’13. Springer, 2013, pp. 192–207

[Jaradat] Jaradat, O., Bate, I.: Systematic Maintenance of Safety Cases to Reduce Risk. In: Proc. of SafeComp'16. pp. 17{29. Springer (2016)

25

Page 26: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Bibliography ctd. [Panesar-Walawege] R. K. Panesar-Walawege, M. Sabetzadeh, and L. Briand, “Supporting the verification of compliance to safety standards via model-driven engineering: Approach, tool-support an empirical validation,” Information and Software Technology, vol. 55, no. 5, pp. 836–864, 2013.

[Brunel ] J. Brunel and J. Cazin, “Formal Verification of a Safety Argumentation and Application to a Complex UAV System,” in Prof. of SAFECOMP Workshops. Springer, 2012, pp. 307–318.

[Kelly2004] T. Kelly and R. Weaver, “The Goal Structuring Notation – A Safety Argument Notation,” in Proc. of DSN’04, 2004.

[Habli2010] Habli, I., Ibarra, I., Rivett, R.S., Kelly, T.: Model-Based Assurance for Justifying Automotive Functional Safety. Tech. rep., SAE (2010)

[Gallina] Gallina, B.: A Model-Driven Safety Certication Method for Process Compliance. In: Proc. of ISSRE'14 Workshops. pp. 204{209. IEEE (2014)

[Kelly2001] Kelly, T.P., McDermid, J.A.: A Systematic Approach to Safety Case Maintenance. J. Rel. Eng. & System Safety 71(3), 271{284 (2001)

[Li] Li, Z.: A Systematic Approach and Tool Support for Assessing GSN-Based Safety Case. Master's thesis, Technische Universiteit Eindhoven (2016)

26

Page 27: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Key Contributions

1.  Model Management for Regulatory Compliance [MiSE’16]

2.  A Model Management Approach for Assurance Case Reuse Due to System Evolution [MoDELS’16, SafeComp’17]

3.  Safety Case Impact Assessment in Automotive Software Systems: An Improved Model-Based Approach [SafeComp’17]

4.  Tool Support and Application in the Automotive Domain [SafeComp’17 and planned SoSym’17]

27

Page 28: Managing Assurance Cases in Model Based Software Systemskokalys/files/ICSE17slides.pdf ·  · 2017-06-19Managing Assurance Cases in Model Based Software Systems ... Managing Assurance

Other Contributions 1.  “Mapping-Aware Megamodeling: Design Patterns and Laws.” Zinovy

Diskin, Sahar Kokaly, Tom Maibaum [SLE’13]

2.  “Enriching Megamodel Management with Collection-Based Operators.” Rick Salay, Sahar Kokaly, Alessio Di Sandro, Marsha Chechik [MODELS’15]

3.  “MMINT: A Graphical Tool for Interactive Model Management.” Alessio Di Sandro, Rick Salay, Michalis Famelis, Sahar Kokaly, Marsha Chechik [Demo Track at MODELS'15]

4.  “Elementary Model Management Patterns.” Sahar Kokaly, Zinovy Diskin, Tom Maibaum, Hamid Gholizadeh [PAME'15]

5.  “Heterogenous Megamodel Slicing for Model Evolution.” Rick Salay, Sahar Kokaly, Marsha Chechik, Tom Maibaum [ME’16]

6.  “Managing Heterogeneous Collections of Related Models.” Rick Salay, Sahar Kokaly, Alessio Di Sandro, Marsha Chechik, Tom Maibaum [submitted]

28