a review of formal methods
play

A Review of Formal Methods : 200514170 : (T4) (T4) - PowerPoint PPT Presentation

A Review of Formal Methods : 200514170 : (T4) (T4) Contents INTRODUCTION INTRODUCTION DEFINITION AND OVERVIEW OF FORMAL METHODS SPECIFICATION METHODS LIFE CYCLES AND


  1. A Review of Formal Methods 학번 : 200514170 이름 이름 : 한규희 (T4) 한규희 (T4)

  2. Contents • INTRODUCTION • INTRODUCTION • DEFINITION AND OVERVIEW OF FORMAL METHODS • SPECIFICATION METHODS • LIFE CYCLES AND TECHNOLOGIES • LIFE CYCLES AND TECHNOLOGIES WITH INTEGRATED FORMAL METHODS 1

  3. Introduction • Certain precepts leads to better Programs. p p g • Design methodologies are varied • Underlying principles are the same d l i i i l h • Understand Core Ideas and the central Understand Core Ideas and the central Foundation • Core Ideas are invariant and Formal Methods C Id i i t d F l M th d define these 2

  4. Definition and Overview • Support reasoning about formulae in some pp g language • Formal language • Formal language – set of strings over some set of strings over some well defined alphabet • Proofs – axioms � inference rules � Premises � consequents Premises � consequents • Properties can be proven. 3

  5. Definition and Overview (Cont.) • A formal method in software development is a p method that provides a formal language for describing a software artifact (for instance describing a software artifact (for instance, specifications, designs, or source code) such that formal proofs are possible, in principle, th t f l f ibl i i i l about properties of the artifact so expressed. • Such methods are adaptations of the axiomatic method in mathematics method in mathematics 4

  6. Definition and Overview (Cont.) • Use of Formal Methods • Record a system’s functionality (Z, Larch, Communicating Sequential Processes (CSP) etc ) Communicating Sequential Processes (CSP) etc..) • Specify aspects other than functionality (safety, security etc) security etc) • Fault tolerance, response time, efficiency, reliability etc can also be addressed. li bili l b dd d 5

  7. Definition and Overview (Cont.) • Tools and Methodology gy • Proofs and programs should be developed in parallel parallel • Clearly understood constructions should be used • “Cleanroom approach” and heuristics may be used “Cl h” d h i i b d 6

  8. Definition and Overview (Cont.) • Limitation • Requirements problem • Physical Implementation problems • Physical Implementation problems • Implementation Issues 7

  9. Definition and Overview (Cont.) • Requirements problem q p • “You cannot go from the informal to the formal by formal means” formal means • Verification possible, not Validation. • Formal methods cannot replace the requirements F l h d l h i engineer with deep domain knowledge 9

  10. Definition and Overview (Cont.) • Physical Implementation problems y p p • A physical machine is different from the abstract machine for which the program is made machine for which the program is made. • Proofs limited to a particular machine with limits and real characteristics and real characteristics • Compilers cause some problems • Bugs in memory, chips • Formal methods might never supplant testing g pp g 10

  11. Definition and Overview (Cont.) • Implementation Issues p • Users’ intentions �� Formal Specifications • Physical implementation �� Abstract proofs • Physical implementation �� Abstract proofs • These gaps create inherent limitations • Scaling up to large scale projects is a problem S li l l j i bl 11

  12. Specification Methods • Specification method says what a specification p y p must say • Language on the other hand determines in • Language on the other hand determines in detail how the concepts in a specification can be expressed • Different Methods Different Methods • Semantic Domains • Operational and Definitional Methods O ti l d D fi iti l M th d 12

  13. Specification Methods (Cont.) • Semantic Domains • Exact rules state what objects satisfy a specification specification • Specification � set of formulae in a formal language language • Specification languages can be classified by their semantic domains i d i • ADT specification languages • Process specification languages • Programming languages 13

  14. Definition and Overview (Cont.) • ADT specification languages p g g • used to specify algebras • ‘defines the formal properties of a data type • defines the formal properties of a data type without defining implementation issues • Process specification languages • Specify state sequences, streams, sequences, p y q , , q , partial orders and state machines • Programming languages • Programming languages 14

  15. Definition and Overview (Cont.) • Model-Oriented Methods • Operational Model – Describes a system by providing a model providing a model • Functions from space of inputs to space of outputs • Property-Oriented Methods P t O i t d M th d • Definitional Models • Minimum set of conditions to be satisfied is the specifications • Algebraic (ADT) and axiomatic (preconditions and post conditions) models are the two classes. 15

  16. Definition and Overview (Cont.) • Use of Specification Methods p • Customers should be provided English version, not formal version not formal version. • Details of project and skills of engineers to be considered considered • Operational models closer to programming practice i • Definitional model harder to construct and consistency and completeness are difficult to establish. 16

  17. Life Cycles and Technologies • To get full advantages, Formal Methods should g g , be incorporated in standard • Two methods of integrating • Two methods of integrating • Heavy use of automated tools • Nonmechanical, nonautomated proofs • Division of verification tools Division of verification tools • Theorem proving tool • Model checking tool 17

  18. Conclusions • Formal Methods provide p • More precise specifications • Better internal communication • Better internal communication • Ability to verify designs before execution testing • Higher quality and productivity • Should be incorporated as standard Should be incorporated as standard • Customized solutions may be required 18

  19. Thank You k Y Th

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend