![Page 1: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/1.jpg)
Software Assurance: What Should We Do next?
Software Design for Reliability
Ivica CrnkovicMälardalen University, Sweden
[email protected], www.idt.mdh.se/~icc
COMPSAC July 24, Kyoto
![Page 2: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/2.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 2
Panel ChairMohammad Zulkernine, Queen's University, CanadaPanelistsIvica Crnkovic, Mälardalen University, SwedenT.H. Tse, The University of Hong Kong, Hong KongBruce McMillin, Missouri University of Science & Technology, USATetsutaro Uehara, Kyoto University, Japan
![Page 3: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/3.jpg)
04/11/2023 3
Mälardalen University, Västerås, Sweden
COMPSAC 2014July 21-25
COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto
ASE 2014Sep 14-19
![Page 4: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/4.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 4
Reliability – is that enough?
• Reliability is defined as the probability that a system will perform its intended function during a specified period of time under stated conditions.
• Assumptions:– Reliability is predicated on "intended function:” i.e. a
particular operation without failure.– Reliability applies to a specified period of time. – Reliability is restricted to operation under stated (or
explicitly defined) conditions.
![Page 5: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/5.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 5
Microkernel Complexity - function call graph 2011 NICTA (ABN: 62 102 206 173)
(this is simple)
Software Complexity
What is software of today?
The Blue Brain Projecthttp://bluebrain.epfl.ch/cms/lang/en/pid/56882
![Page 6: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/6.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 6
What is Software of Today?
8 years of Unix evolutionhttp://www.levenez.com/unix/unix.pdfSoftware Evolution
![Page 7: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/7.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 7
What is software of today?
Software ubiquityAugmented reality Dynamic Environment
![Page 8: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/8.jpg)
Reliability: Robustness vs. Resilience ?
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 8
Robust & resistant systems”states
• Highly controlled• Operates in a narrow band• Predefined states (“modes”)• Top-down design• Challenge: predict all states
caused by the environment
• A broad spectrum of possible equilibrium state• Not necessary all states are predicted • Adaptive and evolving systems• impact of the system on the environment• Challenge:
• Adaptation • Optimal performance in different states• Minimize unwanted impact on the
environment
“Resilient systems”
![Page 9: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/9.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 9
Software Design
Reliability
Robustness
Adaptability
Resilience
![Page 10: Software Assurance: What Should We Do next? - Software Design for Reliability](https://reader034.vdocuments.us/reader034/viewer/2022052504/554a17e0b4c9058c5d8b508d/html5/thumbnails/10.jpg)
04/11/2023 COMPSAC 2013, Panel "Software Assurance - what should we do next?" , Kyoto 10
Challenges
• Design– Bottom-up vs. top-down– Composability vs. analyzability– Static vs. dynamic deployment– Robustness vs. adaptability– Predictability vs. monitoring and healing– Embedded vs. service-oriented– Design by Contract