SlideShare una empresa de Scribd logo
1 de 20
1
Independent Formal Verification of Safety-
Critical Systems’ User Interfaces:
a space system case study
NASA IVV Workshop
September, 2013
Manuel Sousa1, José Creissac Campos1
Miriam Alves2 and Michael D. Harrison3
1Dept. Informática/Universidade do Minho &HASLab/INESC TEC, Portugal
2Institute of Aeronautics and Space - IAE, São José dos Campos, Brazil
3Queen Mary University of London & Newcastle University, UK
* This work is funded by the ERDF - European Regional Development Fund through the ON.2 – O
Novo Norte Operational Programme, within the Best Case project (ref. N-01-07-01-24-01-26).
2
foreword
Dependable device
Dependable system?
User
 The impact of users on a system is hard to anticipate
 users behave in unexpected ways
 users’ behaviour is changed by (adapts to) the device
 users must understand the device
 We have been working on approaches to consider the user
during the formal verification of interactive systems
3
Verification
Potential
Problem
Analysis
Modelling
Properties
Model
our approach
4
systematic analysis – the process
1. Models – system as designed
2. Property patterns – good design practices
3. Verification – models against patterns
4. Traces – when verification fails
 Analysis
 Scenarios
 Prototyping
5. Change models – reflecting analysis findings
5
systematic analysis – the process
Scenarios
Prototype Model
Traces
abstraction
deployment
analysis
verification
Expert analysis
Domain knowledge
Property Templates
Prototype
redesign
betterdesign
Expert usability
inspection
Universal properties
/Heuristics
simulation
refinement
walkthroughs
techniques
process
information flow
6
the IVY tool
7
MAL interactors
interactor MCP
aggregates
dial(Altitude) via ALTDial
dial(ClimbRate) via crDial
dial(Velocity) via asDial
attributes
[vis] pitchMode: PitchModes
[vis] ALT: boolean
actions
[vis] enterVSenterIASenterAHtoggleALT
enterAC
axioms
[asDial.set(t)]effect(enterIAS)
[crDial.set(t)]effect(enterVS)
[ALTDial.set(t)] ensure_ALT_is_set
[enterVS] pitchMode'=VERT_SPD & ALT'=ALT
[enterIAS] pitchMode'=IAS & ALT'=ALT
[enterAH] pitchMode'=ALT_HLD & ALT'=ALT
[toggleALT] pitchMode'=pitchMode& ALT'=!ALT
[enterAC] pitchMode'=ALT_CAP & !ALT'
Behaviour
8
9
IAE’s PTGS
MN
Subsystem
SC
Subsystem
EV
Subsystem
PR
Subsystem
CR
Subsystem
Telemetry Time
Synchronization
Operators Batteries
Operational
Communication
Operational
Signalization
INTERFACES
UMBILICAL
CORDS
ROCKET
PW
Subsystem
10
IVY analysis of EV subsystem
 The system was modelled from the operations manual
 model reflects knowledge provided to the operator
 properties used to express expected behaviour
 A three layered model was built
 Each type of variable modelled as an interactor
 Each screen modelled as an interactor
 Navigation between screens modelled on top of that
 Values displayed modelled
as attributes
 Buttons modelled as actions
11
From manual to model
How the colouring scheme works (from the operations manual):
“Blinking yellow: For a critical variable, when the current
value of the variable is in non acknowledged alert (value
within the alert range), there is no acknowledged alarm in the
variable, and the previous criterion [non acknowledged alarm
criterion] is not satisfied. If over the same critical variable an
acknowledged alarm exists, then Fixed Red prevails. For a non
critical variable, when the current value of the variable is in
non acknowledged alarm (value within the alarm range).”
12
From manual to model
How the colouring scheme works (from the operations manual):
“Blinking yellow: For a critical variable, when the current
value of the variable is in non acknowledged alert (value
within the alert range), there is no acknowledged alarm in the
variable, and the previous criterion [non acknowledged alarm
criterion] is not satisfied. If over the same critical variable an
acknowledged alarm exists, then Fixed Red prevails. For a non
critical variable, when the current value of the variable is in
non acknowledged alarm (value within the alarm range).”
critical
& ((_v>= infAlarmLim& _v<infAlertLim) | (_v<= supAlarmLim& _v>supAlertLim))
& (alarmState != AlaRec&alarmState != AlaNRec)
13
From manual to model
How the colouring scheme works (from the operations manual):
“Blinking yellow: For a critical variable, when the current
value of the variable is in non acknowledged alert (value
within the alert range), there is no acknowledged alarm in the
variable, and the previous criterion [non acknowledged alarm
criterion] is not satisfied. If over the same critical variable an
acknowledged alarm exists, then Fixed Red prevails. For a non
critical variable, when the current value of the variable is in
non acknowledged alarm (value within the alarm range).”
!critical
& ((_v<infAlarmLim) | (_v>supAlarmLim))
14
From manual to model
[setValue(_v)]
(((critical & ((_v>= infAlarmLim& _v<infAlertLim) | (_v<= supAlarmLim
& _v>supAlertLim))) | (!critical & ((_v<infAlarmLim) | (_v>
supAlarmLim)))) & (alarmState != AlaRec&alarmState != AlaNRec))
->
value’ = _v&colour’ = yellow & error’ = Lim &alertState’ = AleNRec&
characteristic’ = Blink &keep(supAlertLim,infAlertLim,supAlarmLim,
infAlarmLim,unity,critical,alarmState)
conditions for
blinking yellow
setting
blinking yellow
How the colouring scheme works (from the operations manual):
“Blinking yellow: For a critical variable, when the current
value of the variable is in non acknowledged alert (value
within the alert range), there is no acknowledged alarm in the
variable, and the previous criterion [non acknowledged alarm
criterion] is not satisfied. If over the same critical variable an
acknowledged alarm exists, then Fixed Red prevails. For a non
critical variable, when the current value of the variable is in
non acknowledged alarm (value within the alarm range).”
15
From manual to model
(alarmState != AlaNRec&alarmState != AlaRec) becomes
(alarmState = AlaRec)
How the colouring scheme works (from the operations manual):
“Blinking yellow: For a critical variable, when the current
value of the variable is in non acknowledged alert (value
within the alert range), there is no acknowledged alarm in the
variable, and the previous criterion [non acknowledged alarm
criterion] is not satisfied. If over the same critical variable an
acknowledged alarm exists, then Fixed Red prevails. For a non
critical variable, when the current value of the variable is in
non acknowledged alarm (value within the alarm range).”
16
the model
17
analysis
 Can a variable be in alarm?
 Trying to prove otherwise…
 False as expected but…
 counterexample highlights a situation where the variable
colour is fixed red under an acknowledged alert condition –
should not be possible.
AG(monitTMT.BD1_A.colour = green -> !EX (monitTMT.BD1_A.colour = red))
18
analysis
 manual not stating what happens to a non-critical alert
 model becomes non-deterministic
19
conclusions/lessons learnt
 It was possible to build a relevant model independently (without a deep
understanding of the system) and still provide insights to the client
 This particular model captures understanding of the system from the
operations manual/requirements document perspective
 Incomplete or inconsistent information leads to unexpected system
behaviour
 Computer-aided verification of user interfaces is crucial for critical-
complex systems
 Results can help:
 improve requirements / manuals
 define test cases
 improve system dependability
 As we add complexity to the models, verification time becomes a
problem – but, interesting results are possible with manageable models
20
Thank you!
jose.campos@di.uminho.pt

Más contenido relacionado

Similar a Independent Formal Verification of Safety-Critical Systems’ User Interfaces: a space system case study

Causality without headaches
Causality without headachesCausality without headaches
Causality without headachesBenoît Rostykus
 
Machine learning Mind Map
Machine learning Mind MapMachine learning Mind Map
Machine learning Mind MapAshish Patel
 
UNIT1 concepts of measurements and instrumen
UNIT1 concepts of measurements and instrumenUNIT1 concepts of measurements and instrumen
UNIT1 concepts of measurements and instrumenNagen87
 
Measurement Systems
Measurement SystemsMeasurement Systems
Measurement SystemsRAHUL957367
 
Learning machine learning with Yellowbrick
Learning machine learning with YellowbrickLearning machine learning with Yellowbrick
Learning machine learning with YellowbrickRebecca Bilbro
 
REINFORCEMENT LEARNING
REINFORCEMENT LEARNINGREINFORCEMENT LEARNING
REINFORCEMENT LEARNINGpradiprahul
 
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...ijccmsjournal
 
Using machine learning in anti money laundering part 2
Using machine learning in anti money laundering   part 2Using machine learning in anti money laundering   part 2
Using machine learning in anti money laundering part 2Naveen Grover
 
Machine learning ( Part 1 )
Machine learning ( Part 1 )Machine learning ( Part 1 )
Machine learning ( Part 1 )Sunil OS
 
Machine learning in credit risk modeling : a James white paper
Machine learning in credit risk modeling : a James white paperMachine learning in credit risk modeling : a James white paper
Machine learning in credit risk modeling : a James white paperJames by CrowdProcess
 
Workbook Project
Workbook ProjectWorkbook Project
Workbook ProjectBrian Ryan
 
2015-RISS-Poster-Wang-Tairui
2015-RISS-Poster-Wang-Tairui2015-RISS-Poster-Wang-Tairui
2015-RISS-Poster-Wang-TairuiTairui Wang
 
SKIN CANCER ANALYSIS USING CNN
SKIN CANCER ANALYSIS USING CNNSKIN CANCER ANALYSIS USING CNN
SKIN CANCER ANALYSIS USING CNNIRJET Journal
 
SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007
SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007
SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007Journal For Research
 
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...ijaia
 
Supervised Learning.pdf
Supervised Learning.pdfSupervised Learning.pdf
Supervised Learning.pdfgadissaassefa
 
Malware Dectection Using Machine learning
Malware Dectection Using Machine learningMalware Dectection Using Machine learning
Malware Dectection Using Machine learningShubham Dubey
 

Similar a Independent Formal Verification of Safety-Critical Systems’ User Interfaces: a space system case study (20)

Causality without headaches
Causality without headachesCausality without headaches
Causality without headaches
 
Machine learning Mind Map
Machine learning Mind MapMachine learning Mind Map
Machine learning Mind Map
 
UNIT1.ppt
UNIT1.pptUNIT1.ppt
UNIT1.ppt
 
Unit1
Unit1Unit1
Unit1
 
UNIT1 concepts of measurements and instrumen
UNIT1 concepts of measurements and instrumenUNIT1 concepts of measurements and instrumen
UNIT1 concepts of measurements and instrumen
 
Measurement Systems
Measurement SystemsMeasurement Systems
Measurement Systems
 
UNIT1.ppt
UNIT1.pptUNIT1.ppt
UNIT1.ppt
 
Learning machine learning with Yellowbrick
Learning machine learning with YellowbrickLearning machine learning with Yellowbrick
Learning machine learning with Yellowbrick
 
REINFORCEMENT LEARNING
REINFORCEMENT LEARNINGREINFORCEMENT LEARNING
REINFORCEMENT LEARNING
 
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
 
Using machine learning in anti money laundering part 2
Using machine learning in anti money laundering   part 2Using machine learning in anti money laundering   part 2
Using machine learning in anti money laundering part 2
 
Machine learning ( Part 1 )
Machine learning ( Part 1 )Machine learning ( Part 1 )
Machine learning ( Part 1 )
 
Machine learning in credit risk modeling : a James white paper
Machine learning in credit risk modeling : a James white paperMachine learning in credit risk modeling : a James white paper
Machine learning in credit risk modeling : a James white paper
 
Workbook Project
Workbook ProjectWorkbook Project
Workbook Project
 
2015-RISS-Poster-Wang-Tairui
2015-RISS-Poster-Wang-Tairui2015-RISS-Poster-Wang-Tairui
2015-RISS-Poster-Wang-Tairui
 
SKIN CANCER ANALYSIS USING CNN
SKIN CANCER ANALYSIS USING CNNSKIN CANCER ANALYSIS USING CNN
SKIN CANCER ANALYSIS USING CNN
 
SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007
SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007
SENSOR FAULT IDENTIFICATION IN COMPLEX SYSTEMS | J4RV3I12007
 
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
Understanding the Applicability of Linear & Non-Linear Models Using a Case-Ba...
 
Supervised Learning.pdf
Supervised Learning.pdfSupervised Learning.pdf
Supervised Learning.pdf
 
Malware Dectection Using Machine learning
Malware Dectection Using Machine learningMalware Dectection Using Machine learning
Malware Dectection Using Machine learning
 

Último

Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...amitlee9823
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayNZSG
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfAdmir Softic
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting
 
Business Model Canvas (BMC)- A new venture concept
Business Model Canvas (BMC)-  A new venture conceptBusiness Model Canvas (BMC)-  A new venture concept
Business Model Canvas (BMC)- A new venture conceptP&CO
 
Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...
Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...
Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...Sheetaleventcompany
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...
Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...
Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...Anamikakaur10
 
Uneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration PresentationUneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration Presentationuneakwhite
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMANIlamathiKannappan
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Dave Litwiller
 
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756dollysharma2066
 
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...lizamodels9
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityEric T. Tung
 
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLBAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLkapoorjyoti4444
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangaloreamitlee9823
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...amitlee9823
 
Phases of Negotiation .pptx
 Phases of Negotiation .pptx Phases of Negotiation .pptx
Phases of Negotiation .pptxnandhinijagan9867
 

Último (20)

Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
 
It will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 MayIt will be International Nurses' Day on 12 May
It will be International Nurses' Day on 12 May
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investors
 
Business Model Canvas (BMC)- A new venture concept
Business Model Canvas (BMC)-  A new venture conceptBusiness Model Canvas (BMC)-  A new venture concept
Business Model Canvas (BMC)- A new venture concept
 
Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...
Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...
Call Girls Zirakpur👧 Book Now📱7837612180 📞👉Call Girl Service In Zirakpur No A...
 
Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...
Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...
Call Now ☎️🔝 9332606886🔝 Call Girls ❤ Service In Bhilwara Female Escorts Serv...
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Uneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration PresentationUneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration Presentation
 
A DAY IN THE LIFE OF A SALESMAN / WOMAN
A DAY IN THE LIFE OF A  SALESMAN / WOMANA DAY IN THE LIFE OF A  SALESMAN / WOMAN
A DAY IN THE LIFE OF A SALESMAN / WOMAN
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League City
 
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRLBAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
BAGALUR CALL GIRL IN 98274*61493 ❤CALL GIRLS IN ESCORT SERVICE❤CALL GIRL
 
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Hebbal Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
Call Girls Kengeri Satellite Town Just Call 👗 7737669865 👗 Top Class Call Gir...
 
Phases of Negotiation .pptx
 Phases of Negotiation .pptx Phases of Negotiation .pptx
Phases of Negotiation .pptx
 

Independent Formal Verification of Safety-Critical Systems’ User Interfaces: a space system case study

  • 1. 1 Independent Formal Verification of Safety- Critical Systems’ User Interfaces: a space system case study NASA IVV Workshop September, 2013 Manuel Sousa1, José Creissac Campos1 Miriam Alves2 and Michael D. Harrison3 1Dept. Informática/Universidade do Minho &HASLab/INESC TEC, Portugal 2Institute of Aeronautics and Space - IAE, São José dos Campos, Brazil 3Queen Mary University of London & Newcastle University, UK * This work is funded by the ERDF - European Regional Development Fund through the ON.2 – O Novo Norte Operational Programme, within the Best Case project (ref. N-01-07-01-24-01-26).
  • 2. 2 foreword Dependable device Dependable system? User  The impact of users on a system is hard to anticipate  users behave in unexpected ways  users’ behaviour is changed by (adapts to) the device  users must understand the device  We have been working on approaches to consider the user during the formal verification of interactive systems
  • 4. 4 systematic analysis – the process 1. Models – system as designed 2. Property patterns – good design practices 3. Verification – models against patterns 4. Traces – when verification fails  Analysis  Scenarios  Prototyping 5. Change models – reflecting analysis findings
  • 5. 5 systematic analysis – the process Scenarios Prototype Model Traces abstraction deployment analysis verification Expert analysis Domain knowledge Property Templates Prototype redesign betterdesign Expert usability inspection Universal properties /Heuristics simulation refinement walkthroughs techniques process information flow
  • 7. 7 MAL interactors interactor MCP aggregates dial(Altitude) via ALTDial dial(ClimbRate) via crDial dial(Velocity) via asDial attributes [vis] pitchMode: PitchModes [vis] ALT: boolean actions [vis] enterVSenterIASenterAHtoggleALT enterAC axioms [asDial.set(t)]effect(enterIAS) [crDial.set(t)]effect(enterVS) [ALTDial.set(t)] ensure_ALT_is_set [enterVS] pitchMode'=VERT_SPD & ALT'=ALT [enterIAS] pitchMode'=IAS & ALT'=ALT [enterAH] pitchMode'=ALT_HLD & ALT'=ALT [toggleALT] pitchMode'=pitchMode& ALT'=!ALT [enterAC] pitchMode'=ALT_CAP & !ALT' Behaviour
  • 8. 8
  • 9. 9 IAE’s PTGS MN Subsystem SC Subsystem EV Subsystem PR Subsystem CR Subsystem Telemetry Time Synchronization Operators Batteries Operational Communication Operational Signalization INTERFACES UMBILICAL CORDS ROCKET PW Subsystem
  • 10. 10 IVY analysis of EV subsystem  The system was modelled from the operations manual  model reflects knowledge provided to the operator  properties used to express expected behaviour  A three layered model was built  Each type of variable modelled as an interactor  Each screen modelled as an interactor  Navigation between screens modelled on top of that  Values displayed modelled as attributes  Buttons modelled as actions
  • 11. 11 From manual to model How the colouring scheme works (from the operations manual): “Blinking yellow: For a critical variable, when the current value of the variable is in non acknowledged alert (value within the alert range), there is no acknowledged alarm in the variable, and the previous criterion [non acknowledged alarm criterion] is not satisfied. If over the same critical variable an acknowledged alarm exists, then Fixed Red prevails. For a non critical variable, when the current value of the variable is in non acknowledged alarm (value within the alarm range).”
  • 12. 12 From manual to model How the colouring scheme works (from the operations manual): “Blinking yellow: For a critical variable, when the current value of the variable is in non acknowledged alert (value within the alert range), there is no acknowledged alarm in the variable, and the previous criterion [non acknowledged alarm criterion] is not satisfied. If over the same critical variable an acknowledged alarm exists, then Fixed Red prevails. For a non critical variable, when the current value of the variable is in non acknowledged alarm (value within the alarm range).” critical & ((_v>= infAlarmLim& _v<infAlertLim) | (_v<= supAlarmLim& _v>supAlertLim)) & (alarmState != AlaRec&alarmState != AlaNRec)
  • 13. 13 From manual to model How the colouring scheme works (from the operations manual): “Blinking yellow: For a critical variable, when the current value of the variable is in non acknowledged alert (value within the alert range), there is no acknowledged alarm in the variable, and the previous criterion [non acknowledged alarm criterion] is not satisfied. If over the same critical variable an acknowledged alarm exists, then Fixed Red prevails. For a non critical variable, when the current value of the variable is in non acknowledged alarm (value within the alarm range).” !critical & ((_v<infAlarmLim) | (_v>supAlarmLim))
  • 14. 14 From manual to model [setValue(_v)] (((critical & ((_v>= infAlarmLim& _v<infAlertLim) | (_v<= supAlarmLim & _v>supAlertLim))) | (!critical & ((_v<infAlarmLim) | (_v> supAlarmLim)))) & (alarmState != AlaRec&alarmState != AlaNRec)) -> value’ = _v&colour’ = yellow & error’ = Lim &alertState’ = AleNRec& characteristic’ = Blink &keep(supAlertLim,infAlertLim,supAlarmLim, infAlarmLim,unity,critical,alarmState) conditions for blinking yellow setting blinking yellow How the colouring scheme works (from the operations manual): “Blinking yellow: For a critical variable, when the current value of the variable is in non acknowledged alert (value within the alert range), there is no acknowledged alarm in the variable, and the previous criterion [non acknowledged alarm criterion] is not satisfied. If over the same critical variable an acknowledged alarm exists, then Fixed Red prevails. For a non critical variable, when the current value of the variable is in non acknowledged alarm (value within the alarm range).”
  • 15. 15 From manual to model (alarmState != AlaNRec&alarmState != AlaRec) becomes (alarmState = AlaRec) How the colouring scheme works (from the operations manual): “Blinking yellow: For a critical variable, when the current value of the variable is in non acknowledged alert (value within the alert range), there is no acknowledged alarm in the variable, and the previous criterion [non acknowledged alarm criterion] is not satisfied. If over the same critical variable an acknowledged alarm exists, then Fixed Red prevails. For a non critical variable, when the current value of the variable is in non acknowledged alarm (value within the alarm range).”
  • 17. 17 analysis  Can a variable be in alarm?  Trying to prove otherwise…  False as expected but…  counterexample highlights a situation where the variable colour is fixed red under an acknowledged alert condition – should not be possible. AG(monitTMT.BD1_A.colour = green -> !EX (monitTMT.BD1_A.colour = red))
  • 18. 18 analysis  manual not stating what happens to a non-critical alert  model becomes non-deterministic
  • 19. 19 conclusions/lessons learnt  It was possible to build a relevant model independently (without a deep understanding of the system) and still provide insights to the client  This particular model captures understanding of the system from the operations manual/requirements document perspective  Incomplete or inconsistent information leads to unexpected system behaviour  Computer-aided verification of user interfaces is crucial for critical- complex systems  Results can help:  improve requirements / manuals  define test cases  improve system dependability  As we add complexity to the models, verification time becomes a problem – but, interesting results are possible with manageable models

Notas del editor

  1. explain where we come from…Our starting point is that when you place a dependable device in from of the user, you are not guaranteed to have a dependable systemusers unexpected: firing a gunusers adapt: langing gear
  2. Explain the basic ideasTypical pattern: consistency
  3. Explain the basic ideas
  4. In this paper:AniMALDiscuss representationsScenarios generator
  5. PTGS = Preparation and Testing Ground System EV = Flight Events Sequence Network. responsible to test and prepare one of the rocket’s electrical sub-network. CR = Electric Control Network. responsible for the testing, simulation and analysis of the automatic launch sequence,
  6. atributoseacções das imagensaxiomas das descrições
  7. EV subsystemmain because of the navigation and constraints to synchronize all the Interactors, tmtVariablesbecause of the values of variables and control of the alarms and alerts triggered.
  8. esforço
  9. A Macbook Pro with an Intel Core 2 Duo P8800 at 2.66 GHz with 8Gb of ram, and a PC with an Intel Core i7 960 at 3.20GHz with 24Gb of ram. The machines have different operating system, Mac OS X and Windows Server 2008 R2 Standard respectively.
  10. A Macbook Pro with an Intel Core 2 Duo P8800 at 2.66 GHz with 8Gb of ram, and a PC with an Intel Core i7 960 at 3.20GHz with 24Gb of ram. The machines have different operating system, Mac OS X and Windows Server 2008 R2 Standard respectively.