On Methods for the Formal Specification of Fault Tolerant Systems


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

On Methods for the Formal Specification of Fault Tolerant Systems

  1. 1. On Methods for the Formal Specification of Fault Tolerant Systems Manuel Mazzara - Newcastle University DEPEND 2011 – The Fourth International Conference on Dependability 24/8/2011 Nice, France [email_address]
  2. 3. Overall View Study on Methods (Formal) Methods Definitions HJJ paper (PF + RG + DC) Examples Motivations Tools and Ideas PF Robustness Rely Problem Diagrams Context Diagrams Patterns PQ Fault as interference Ideal FT operations Research Challenges Case Studies RG
  3. 4. Our trip
  4. 5. A schema for methods evaluation Defining precise steps for the method
  5. 6. Formal Methods and SW life cycle <ul><li>” Formal methods are methods that use mathematics and </li></ul><ul><li>logic to introduce rigor into the software life cycle. By rigor </li></ul><ul><li>we mean logically accurate, precise and unambiguous”. </li></ul>
  6. 7. Applications?
  7. 8. Keeping an eye on the real world… “ Man has such a predilection for systems and abstract deductions that he is ready to distort the truth intentionally, he is ready to deny the evidence of his senses only to justify his logic” (Fyodor Dostoyevsky)
  8. 9. Are Formal Methods actual methods? <ul><li>The majority of formal methods are not methods at all because they lack one or more of the components defined in [*] </li></ul><ul><li>” Most typically formal methods have a strong language and underlying computational model but lack defined steps and guidance for applying the method” </li></ul>[*] Klaus Kronl ő f, editor Method integration: concepts and case studies John Wiley & Sons, Inc., New York, NY, USA, 1993
  9. 10. Definition of method <ul><li>“ Dubium Sapientiae initium“ </li></ul><ul><ul><li>Doubt is the origin of wisdom (René Descartes) </li></ul></ul>” A method is a way, technique, or process of or for doing something” It is worth noting that the definition of method depends on the one of process: ” a series of actions or operations conducing to an end” Websters dictionary
  10. 11. The method of science* * Rene Descartes: Discourse on Method and Meditations 1. Accept only that which you are sure of 2. Divide each difficulty into small parts 3. Solve problems in an ascending order 4. Assure nothing was omitted
  11. 12. We worked on case studies…
  12. 13. Descartes + Case Studies <ul><li>1. Structured </li></ul><ul><ul><li>phases, steps, work-flow </li></ul></ul><ul><li>2. Formally defined </li></ul><ul><ul><li>unambiguous </li></ul></ul><ul><li>3. Usable </li></ul><ul><ul><li>by non experts </li></ul></ul><ul><li>Scalability </li></ul><ul><ul><li>non ”ad hoc” </li></ul></ul><ul><li>2. Abstractions </li></ul><ul><ul><li>what and not how </li></ul></ul><ul><li>3. Extensibility to FT </li></ul><ul><ul><li>LFTS </li></ul></ul>Product Process
  13. 14. The Evaluation Schema <ul><li>An underlying computational model </li></ul><ul><ul><li>the structures that are represented, manipulated and analyzed </li></ul></ul><ul><li>2. A language </li></ul><ul><ul><li>the concrete means of describing the product of the method </li></ul></ul><ul><li>3. Defined steps and ordering </li></ul><ul><ul><li>the activities performed by the user </li></ul></ul><ul><li>4. Guidance for applying the method </li></ul><ul><ul><li>informal text description, example case studies </li></ul></ul><ul><ul><li>manuals, handbooks, guides </li></ul></ul>Product Process
  14. 15. In Paris now… <ul><li>Problems in the real world are described in terms of what we perceive and do , not in terms our brain functioning! </li></ul><ul><li>Brain/mind system cannot acquire information about the world (it can only do that through eyes, ears…) </li></ul><ul><li>It can modify the world only through arms, voice…. </li></ul><ul><li>Similar philosophy for computer systems consisting of sensors and actuators </li></ul>
  15. 16. The Method’s Steps <ul><li>Defining the boundaries of system </li></ul><ul><li>Identify and record assumptions </li></ul><ul><li>Derive the specification </li></ul><ul><li>(Make-it robust) </li></ul>Digital System Interface to the physical world Define system boundaries Derive spec of the digital system 3 1 Expose assumptions about the world 2
  16. 17. From the Ideal World to the Real Thinking how to cope with Fault Tolerance
  17. 18. The Plato’s Matrix
  18. 19. Escape the cave (safely)! <ul><li>A model of the system </li></ul><ul><ul><li>Faults has to be viewed as interference </li></ul></ul><ul><ul><li>Determined abnormal situations considered </li></ul></ul><ul><ul><li>Error Injector contracted by R/G (or similar) </li></ul></ul><ul><li>The basic idea of layering vs. monolithic </li></ul>
  19. 20. “ There are no facts, only interpretations” (Friedrich Nietzsche)
  20. 21. The Model <ul><li>Error Injector: a model of the erroneous behavior of the environment </li></ul><ul><ul><li>EI always plays its role respecting the provided R/G </li></ul></ul>Global state P 1 “ Error” Injector RH 1 P 2 RH 2 Recovery mode Normal mode
  21. 22. Monolithic vs. Layered <ul><li>Monolithic specifications would not be intelligible </li></ul><ul><ul><li>including high and low frequency situations all together </li></ul></ul><ul><li>The specification can be organized in (at least) two layers (ideal/real) </li></ul><ul><ul><li>Layered Fault Tolerant Specification (LFTS) </li></ul></ul><ul><ul><li>Specification organized considering normal/abnormal cases explicitly </li></ul></ul>
  22. 23. Main Achievements of this research <ul><li>An understanding of what a method is </li></ul><ul><li>An evaluation schema </li></ul><ul><li>A formalization of the three step method </li></ul><ul><li>The addition of the fourth “make-it robust” step </li></ul><ul><li>5. (Experimentation on a practical case studies) </li></ul>
  23. 24. Questions? &quot;Did science promise happiness? I do not believe it. It promised truth, and the question is to know if we will ever make happiness with truth.&quot; (Emile Zola)