SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Modern Formal
Methods in
Software
Engineering
In software engineering,
there are many formal
methods that are used
for specifying and
verifying software
systems, and new ones
are being developed all
the time. Some of the
newer formal
methods that have
gained popularity
recently include:
Model-Driven Development (MDD)
Machine Learning-based methods
Formal Verification (FV)
Model Checking
Synthesis methods
Model-Driven Development
(MDD)
Model-Driven
Development
(MDD) notation
Model-Driven
Development
(MDD)
advantages:
It improves the quality and productivity of
software development by reducing the gap
between the model and the implementation.
It provides a way to verify the system's
requirements and architecture.
It allows for early detection of errors and
inconsistencies in the requirements and
architecture.
It can automate repetitive and error-prone
tasks, such as code generation and testing.
It allows for traceability between the models,
the code, and the testing activities.
Model-Driven Development (MDD)
disadvantages:
The development of the
models can be time-
consuming and requires
specialized skills.
The models can become
complex and hard to
understand, especially for
large and complex systems.
The transformation of the
models into code may not be
accurate, and the code may
not reflect the actual behavior
of the system.
It can be difficult to maintain
the consistency and coherence
of the models over time.
Model-Driven
Development
(MDD) Example
Machine Learning-based
methods
Machine
Learning-based
methods notation
Machine
Learning-based
methods
advantages:
They can improve
the efficiency and
effectiveness of
software design,
testing, and
verification.
They can be used
to automatically
classify software
defects and
diagnose their
causes.
They can be used
to improve the
performance of
other formal
methods such as
model checking,
and theorem
proving.
They can be used
to learn from
historical data and
adapt to changing
conditions.
Machine Learning-based methods
disadvantages:
They require a large amount of training data
and a suitable representation of the problem
The performance of the learned models may be
poor if the training data is not representative or
if the model is poorly designed.
It may require specialized expertise in machine
learning to apply effectively.
Machine Learning-based
methods example
Formal Verification (FV)
Formal Verification
(FV) notation
Formal Verification (FV) advantages:
It can prove the absence
of errors, such as buffer
overflows, race conditions,
and deadlocks, in a
system.
It can ensure that the
system will behave as
intended in all possible
scenarios.
It can be used to verify the
system at different levels
of abstraction, from the
highest level requirements
to the lowest level
implementation.
It can be used in
combination with other
formal methods, such as
testing and static analysis,
to achieve different goals.
Formal Verification (FV) disadvantages:
IT REQUIRES SPECIALIZED SKILLS
AND EXPERTISE TO USE, AND THE
TOOLS CAN BE COMPLEX AND
DIFFICULT TO USE.
IT CAN BE TIME-CONSUMING AND
COMPUTATIONALLY EXPENSIVE,
ESPECIALLY FOR LARGE AND
COMPLEX SYSTEMS.
IT CAN BE DIFFICULT TO EXPRESS
THE REQUIREMENTS AND
PROPERTIES OF A SYSTEM IN A
FORMAL NOTATION.
NOT EVERY SYSTEM CAN BE
VERIFIED FORMALLY, SOME
SYSTEMS MAY NOT HAVE A
MATHEMATICALLY PRECISE
SPECIFICATION.
Formal Verification
(FV) Example
Model Checking
Model Checking
notation
Model Checking advantages:
It can automatically check the correctness of a system by checking its behavior
against a formal model.
It can check properties such as safety, liveness, and fairness.
It can be applied on different kind of models, like finite state machines, labelled
transition systems, Petri nets, and many other.
It can be automated and hence can save the time and resources required by
manual proof.
Model Checking disadvantages:
It can be computationally expensive, especially for large and
complex systems.
It can be difficult to express the requirements and properties of a
system in a formal notation.
It may not be able to check all properties of the system, some
properties may be too complex or too expensive to check.
Model Checking
Example
Synthesis
methods
Synthesis methods notation
Synthesis methods advantages:
THEY CAN GENERATE CORRECT-
BY-CONSTRUCTION CODE, WHICH
IS GUARANTEED TO MEET
SAFETY AND PERFORMANCE
PROPERTIES BY DESIGN.
THEY CAN BE USED TO
SYNTHESIZE BOTH SEQUENTIAL
AND CONCURRENT PROGRAMS
THEY CAN BE APPLIED ON
DIFFERENT LEVEL OF
ABSTRACTION, RANGING FROM
THE GENERATION OF
CONTROLLERS TO THE
DERIVATION OF LOW-LEVEL
CODES.
THEY CAN SAVE TIME AND
RESOURCES NEEDED TO WRITE,
TEST AND DEBUG CODE
MANUALLY.
Synthesis methods disadvantages:
They require specialized
skills and expertise to use,
and the tools can be
complex and difficult to use.
They can be
computationally expensive,
especially for large and
complex systems.
They may not be able to
handle all cases and
properties, some may be
too complex to be handled.
It may require significant
effort to convert the
informal specifications to a
formal ones.
Synthesis
methods
example
Modern Formal
Methods in
Software
Engineering
Thank you

Weitere ähnliche Inhalte

Ă„hnlich wie Modern Formal Methods in Software Engineering.pptx

Trends in Embedded Software Engineering
Trends in Embedded Software EngineeringTrends in Embedded Software Engineering
Trends in Embedded Software EngineeringAditya Kamble
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comIdexcel Technologies
 
International Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJSInternational Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJShildredzr1di
 
Model driven process for real time embedded
Model driven process for real time embeddedModel driven process for real time embedded
Model driven process for real time embeddedcaijjournal
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Softwareguest8861ff
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3Hardik Patel
 
Formal Specification Ian Sommerville 9th Edition
Formal Specification Ian Sommerville 9th EditionFormal Specification Ian Sommerville 9th Edition
Formal Specification Ian Sommerville 9th EditionRupeshShrestha28
 
Unit Testing Software Market Size, Share.pdf
Unit Testing Software Market Size, Share.pdfUnit Testing Software Market Size, Share.pdf
Unit Testing Software Market Size, Share.pdfshreyaporekar9
 
61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptxSuhleemAhmd
 
10-Testing-system.pdf
10-Testing-system.pdf10-Testing-system.pdf
10-Testing-system.pdfn190212
 
Flexible manufacturing systems
Flexible manufacturing systemsFlexible manufacturing systems
Flexible manufacturing systemsSudhir Reddy
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineeringsmumbahelp
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to qualityDhanashriAmbre
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycleEmi Rizki Ayunanda
 
Test automation framework
Test automation frameworkTest automation framework
Test automation frameworkQACampus
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineeringsmumbahelp
 
Software Engineering - Lecture 02
Software Engineering - Lecture 02Software Engineering - Lecture 02
Software Engineering - Lecture 02Asifuzzaman Hridoy
 

Ă„hnlich wie Modern Formal Methods in Software Engineering.pptx (20)

Trends in Embedded Software Engineering
Trends in Embedded Software EngineeringTrends in Embedded Software Engineering
Trends in Embedded Software Engineering
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.com
 
International Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJSInternational Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJS
 
Model driven process for real time embedded
Model driven process for real time embeddedModel driven process for real time embedded
Model driven process for real time embedded
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Formal Specification Ian Sommerville 9th Edition
Formal Specification Ian Sommerville 9th EditionFormal Specification Ian Sommerville 9th Edition
Formal Specification Ian Sommerville 9th Edition
 
Unit Testing Software Market Size, Share.pdf
Unit Testing Software Market Size, Share.pdfUnit Testing Software Market Size, Share.pdf
Unit Testing Software Market Size, Share.pdf
 
61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx
 
Sdpl1
Sdpl1Sdpl1
Sdpl1
 
10-Testing-system.pdf
10-Testing-system.pdf10-Testing-system.pdf
10-Testing-system.pdf
 
Flexible manufacturing systems
Flexible manufacturing systemsFlexible manufacturing systems
Flexible manufacturing systems
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineering
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycle
 
Test automation framework
Test automation frameworkTest automation framework
Test automation framework
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineering
 
Software Engineering - Lecture 02
Software Engineering - Lecture 02Software Engineering - Lecture 02
Software Engineering - Lecture 02
 

KĂĽrzlich hochgeladen

Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 

KĂĽrzlich hochgeladen (20)

Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 

Modern Formal Methods in Software Engineering.pptx

  • 2. In software engineering, there are many formal methods that are used for specifying and verifying software systems, and new ones are being developed all the time. Some of the newer formal methods that have gained popularity recently include: Model-Driven Development (MDD) Machine Learning-based methods Formal Verification (FV) Model Checking Synthesis methods
  • 5. Model-Driven Development (MDD) advantages: It improves the quality and productivity of software development by reducing the gap between the model and the implementation. It provides a way to verify the system's requirements and architecture. It allows for early detection of errors and inconsistencies in the requirements and architecture. It can automate repetitive and error-prone tasks, such as code generation and testing. It allows for traceability between the models, the code, and the testing activities.
  • 6. Model-Driven Development (MDD) disadvantages: The development of the models can be time- consuming and requires specialized skills. The models can become complex and hard to understand, especially for large and complex systems. The transformation of the models into code may not be accurate, and the code may not reflect the actual behavior of the system. It can be difficult to maintain the consistency and coherence of the models over time.
  • 10. Machine Learning-based methods advantages: They can improve the efficiency and effectiveness of software design, testing, and verification. They can be used to automatically classify software defects and diagnose their causes. They can be used to improve the performance of other formal methods such as model checking, and theorem proving. They can be used to learn from historical data and adapt to changing conditions.
  • 11. Machine Learning-based methods disadvantages: They require a large amount of training data and a suitable representation of the problem The performance of the learned models may be poor if the training data is not representative or if the model is poorly designed. It may require specialized expertise in machine learning to apply effectively.
  • 15. Formal Verification (FV) advantages: It can prove the absence of errors, such as buffer overflows, race conditions, and deadlocks, in a system. It can ensure that the system will behave as intended in all possible scenarios. It can be used to verify the system at different levels of abstraction, from the highest level requirements to the lowest level implementation. It can be used in combination with other formal methods, such as testing and static analysis, to achieve different goals.
  • 16. Formal Verification (FV) disadvantages: IT REQUIRES SPECIALIZED SKILLS AND EXPERTISE TO USE, AND THE TOOLS CAN BE COMPLEX AND DIFFICULT TO USE. IT CAN BE TIME-CONSUMING AND COMPUTATIONALLY EXPENSIVE, ESPECIALLY FOR LARGE AND COMPLEX SYSTEMS. IT CAN BE DIFFICULT TO EXPRESS THE REQUIREMENTS AND PROPERTIES OF A SYSTEM IN A FORMAL NOTATION. NOT EVERY SYSTEM CAN BE VERIFIED FORMALLY, SOME SYSTEMS MAY NOT HAVE A MATHEMATICALLY PRECISE SPECIFICATION.
  • 20. Model Checking advantages: It can automatically check the correctness of a system by checking its behavior against a formal model. It can check properties such as safety, liveness, and fairness. It can be applied on different kind of models, like finite state machines, labelled transition systems, Petri nets, and many other. It can be automated and hence can save the time and resources required by manual proof.
  • 21. Model Checking disadvantages: It can be computationally expensive, especially for large and complex systems. It can be difficult to express the requirements and properties of a system in a formal notation. It may not be able to check all properties of the system, some properties may be too complex or too expensive to check.
  • 25. Synthesis methods advantages: THEY CAN GENERATE CORRECT- BY-CONSTRUCTION CODE, WHICH IS GUARANTEED TO MEET SAFETY AND PERFORMANCE PROPERTIES BY DESIGN. THEY CAN BE USED TO SYNTHESIZE BOTH SEQUENTIAL AND CONCURRENT PROGRAMS THEY CAN BE APPLIED ON DIFFERENT LEVEL OF ABSTRACTION, RANGING FROM THE GENERATION OF CONTROLLERS TO THE DERIVATION OF LOW-LEVEL CODES. THEY CAN SAVE TIME AND RESOURCES NEEDED TO WRITE, TEST AND DEBUG CODE MANUALLY.
  • 26. Synthesis methods disadvantages: They require specialized skills and expertise to use, and the tools can be complex and difficult to use. They can be computationally expensive, especially for large and complex systems. They may not be able to handle all cases and properties, some may be too complex to be handled. It may require significant effort to convert the informal specifications to a formal ones.