Over the years, the “state of the art” of the software discipline has been strongly influenced by the development of programming languages. Thus, we have gone through languages with different levels of abstraction, different paradigms (procedural, object-oriented, functional), and now also documentation languages, specification languages, and architecture languages, among others. One of the aspects of the state of the art has to do with what has been called “Formal Methods” (FM) for decades.
The specification of the system to be developed is written using a formal language1 (L1), probably of the declarative paradigm2, which is then verified with human intervention and processed by a compiler to generate the code in another formal language L2, which represents a high-level design.
This design is then verified with human intervention and processed by a compiler australia phone number data that generates the code in another formal language L3 (usually of the imperative paradigm).
This code is processed by a compiler to finally obtain the executable system. The verifications mentioned are usually mathematical proofs that the code written in L1 or L2 has certain properties, for example that the requirements in L1 are consistent (there are no contradictions between them) and complete (there are no “gaps” in the requirements).
We could say that in software development a type of MF is always used, since the code is finally written in some Lx language, which is processed by a Cx compiler, which usually generates executable code in a Ly.
In general terms MFs are a technology by which:
-
- Posts: 325
- Joined: Thu Jan 16, 2025 8:32 am