CPSC 875 John D. McGregor C19.

Slides:



Advertisements
Similar presentations
Building the business case for Business Continuity Justin Davey Senior Consultant CA.
Advertisements

SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
C.S. Holling Father of Resilience Theory. Awards and Honors Austrian Cross for Science and Art.
Software Connectors Software Architecture. Importance of Connectors Complex, distributed, multilingual, modern software system functionality and managing.
Analysis of compressed depth and image streaming on unreliable networks Pietro Zanuttigh, Andrea Zanella, Guido M. Cortelazzo.
Notion of a Project Notes from OOSE Slides - modified.
1 Software Testing and Quality Assurance Lecture 30 – Testing Systems.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software Dependability CIS 376 Bruce R. Maxim UM-Dearborn.
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
Version 4.0. Objectives Describe how networks impact our daily lives. Describe the role of data networking in the human network. Identify the key components.
CPSC 873 John D. McGregor Session 1 Introduction.
Quality Control Project Management Unit Credit Value : 4 Essential
Computer Science Open Research Questions Adversary models –Define/Formalize adversary models Need to incorporate characteristics of new technologies and.
™ ™ © 2006, KDM Analytics Software Assurance Ecosystem and its Applications Djenana Campara Chief Executive Officer, KDM Analytics Board Director, Object.
111 Notion of a Project Notes from OOSE Slides – a different textbook used in the past Read/review carefully and understand.
Sustainability Science RobustnessEvolvability BIO AC Meeting 19 April 2007 How do biological systems create, test and maintain adaptive capacity? Critical.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 3 Slide 1 Critical Systems 1.
CPSC 871 John D. McGregor Module 6 Session 3 System of Systems.
Other Quality Attributes Other Important Quality attributes Variability: a special form of modifiability. The ability of a system and its supporting artifacts.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Secure Systems Research Group - FAU 1 Active Replication Pattern Ingrid Buckley Dept. of Computer Science and Engineering Florida Atlantic University Boca.
Requirement Handling
Software Safety Case Why, what and how… Jon Arvid Børretzen.
CPSC 871 John D. McGregor Module 6 Session 2 Validation and Verification.
CPSC 873 John D. McGregor Session 6 Preparing for Architecture V & V.
Refined Online Citation Matching and Adaptive Canonical Metadata Construction CSE 598B Course Project Report Huajing Li.
©Ian Sommerville 2000Dependability Slide 1 Chapter 16 Dependability.
CPSC 872 John D. McGregor Session 31 This is it..
CPSC 875 John D. McGregor C18. Partitions Requirements Need is for an e-commerce system which presents catalog item descriptions and takes orders. The.
CPSC 875 John D. McGregor Wrap-up. Ultimate goal Encapsulate uncertainty, risk, and change We analyze and measure to determine where to form modules.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 Lecture 3 : Network Architectures 1.
CPSC 875 John D. McGregor C16.
Principles Identified - UK DfT -
Introduction Social ecological approach to behavior change
John D. McGregor C10 – Error architecture
Unit - 3 OBJECT ORIENTED DESIGN PROCESS AND AXIOMS
OPERATING SYSTEMS CS 3502 Fall 2017
Critical systems design
Classroom Assessment A Practical Guide for Educators by Craig A
Software Testing.
Chapter 9: Authentic Leadership
Adapting in a Resilient Fashion
Security SIG in MTS 05th November 2013 DEG/MTS RISK-BASED SECURITY TESTING Fraunhofer FOKUS.
CPSC 875 John D. McGregor C16.
Software Reliability Definition: The probability of failure-free operation of the software for a specified period of time in a specified environment.
Software Reliability PPT BY:Dr. R. Mall 7/5/2018.
BASICS OF SOFTWARE TESTING Chapter 1. Topics to be covered 1. Humans and errors, 2. Testing and Debugging, 3. Software Quality- Correctness Reliability.
Chapter 9: Authentic Leadership
Internet Interconnection
Design and Programming
Process Approach An introduction.
Chapter 5 Designing the Architecture Shari L. Pfleeger Joanne M. Atlee
GROUP MEMBERS NAME ROLL NO SHAUBAN ALI 17-ARID-5650 UMAIR MUSHTAQ 17-ARID-5656 TARIQ SAEED 17-ARID-5657 MUSKAN WADOOD 17-ARID-5641.
Testing and Test-Driven Development CSC 4700 Software Engineering
Fault Tolerance Distributed Web-based Systems
Chapter 27 Security Engineering
Education That Is Multicultural
Programming Logic and Design Fourth Edition, Comprehensive
John D. McGregor Session 5 Error Modeling
An Introduction to Software Architecture
John D. McGregor Design Concept C5
Process Approach An introduction.
Decomposing the System
Web Information Systems Engineering (WISE)
Chapter 9 Authentic Leadership
Design.
Presentation transcript:

CPSC 875 John D. McGregor C19

Multiple environments Even in a simple client/server architecture there are probably at least 2OS involved. The client and server probably communicate using a single protocol. Each connection has to be modeled separately

requirement speed_R1 : "throttle cannot exceed the maximum setting" [ description this " shall have a maximum reading that is less than or equal to maximum setting" rationale "fly by wire may introduce an electrical error beyond the physical throttle setting" value predicate CurrentSpeed < MaximumSpeed mitigates "Invalid data sent by the speedometer" issues "need to recognize that physical subsystems can present issues for a digital system" see goal caccStakeholderGoals.g1 category product.cc product.acc product.cacc quality safety uncertainty[ volatility 2 impact 3 ]

requirement gap_R1 [ description this "the gap between cars will be greater than or equal to the gap limit in CACC mode" rationale "maintains a gap based on the driver's risk tolerance" value predicate gap > gapLimit mitigates "getting too close to lead vehicle" see document caccStakeholderGoals.g4 category product.acc product.cacc quality safety uncertainty[ volatility 3 impact 2 ]

Composite qualities Like a feature group that groups together a number of ports Some words like dependable and resilient group a set of quality attributes In most cases there is not universal agreement

Resilience

Seven principles for building resilience in social-ecological systems: Maintain diversity and redundancy Manage connectivity Manage slow variables and feed backs Foster complex adaptive systems thinking Encourage learning Broaden participation Promote polycentric governance systems www.kharms.biology.lsu.edu/BWagner_Re_Holling.pptx

Four aspects of resilience: Latitude: the maximum amount a system can be changed before losing it ability to recover Resistance: the ease or difficulty of changing the system; how “resistant” it is to being changed Precariousness: how close the current state of the system is to the limit Panarchy: how the above three attributes are influenced by the state of dynamics of the system at scales above and below the scale of interest

Trustworthiness/Dependability system that performs as intended for a specific purpose, when needed, with operational resiliency, and without unwanted side-effects, behaviors, or exploitable vulnerabilities Two perspectives Build high quality software Secure the software

Product-based vs Process-based Product-based uses test/analysis of the actual product or some representation of it Architecture-led analysis and design Process-based uses measures of the people who built it and the method they used TSP CMMI https://samate.nist.gov/docs/toward-1119.pdf

Assurance case claims, subclaims , context, arguments , and evidence and evidence strength

Assurance case notation

Eliminative induction Bulb connected to electricity? Bulb good? http://insights.sei.cmu.edu/sei_blog/2014/01/eliminative-argumentation-a-means-for-assuring-confidence-in-safety-critical-systems.html

Confidence map Every rebutting defeater that is eliminated increases confidence in the claim Inference rule Undercutting defeater

Evidence Under mining defeater

Calculation of trustworthiness With values of TI between “0”and “1” (“0” being totally untrustworthy, and “1” being completely trustworthy, so TI is “normalized”). TI = Tactual/Tmaximum, [CNSS] Committee on National Security Systems (CNSS) “National Information Assurance (IA) Glossary”, Instruction 4009, Revised June 2006. Available at http://www.cnss.gov/Assets/pdf/cnssi_4009.pdf

Trustworthiness attributes Intrinsic One quality attribute affects another Performance metrics affect execution time Extrinsic One quality attribute trades-off with another An increase in reliability often means a decrease in performance

Interactions Trust interactions are usually pair-wise Often between 2 individuals, but maybe between a human and a system, or between autonomous systems Once a trusted relationship is established it may be possible to eliminate some barriers such as authentications or message meta-data Communities of trust are designed to improve system designs

Complex adaptive systems Remember a complex adaptive system is one that reconfigures dynamically Can be guided by a closed set of modes so that a transition is from one known mode to another Can be autonomous and new modes are created on the fly

Growth of Trustworthiness Basic/initial trustworthiness Experiential trustworthiness – the longer the system operates correctly, the more trust we have in it But, in a dynamic adaptive system every reconfiguration resets our trust to a degree

Credibility A contractor contributes to the trustworthiness by lending its credibility to the software As we gain belief in software the more it runs, we gain belief in credibility the more correctly functioning products an organization delivers Changes in ownership, changes in process, delivery of a faulty product can cause a loss of credibility

Dependability http://se.inf.ethz.ch/~meyer/publications/lncs/dependability.pdf Some see it as reliability which would include correctness, robustness, and security Does how long software operates affect its reliability?

Context Time is not as important as is the context Given exactly the same context software will operate exactly the same, but that include s The inputs The interactions through shared resources

What are we doing about this Traceability Cross references Linkages for references that link requirements to architecture Link tests to requirements …

Architecture-led V model

Certification of safety critical systems using architecture-led development Changes the basic approach http://ac.els-cdn.com/S1571066109003624/1-s2.0-S1571066109003624-main.pdf?_tid=76cf170a-e661-11e5-836e-00000aacb360&acdnat=1457574378_fc25410424e1db21a5eae34bbce5b6d4

Safety case