1 / 3100%
FORMAL SYSTEM SPECIFICATION
Software Engineering
___
Notes
Formal Technique:-
A formal method involves expressing a hardware and/or software system using a
mathematical mechanism, checking if the system can function as outlined, and
examining if the put-in-place software does what it is supposed to do. It can also be
applied to establish the properties of a system, which does not have to be executed.
Such formal method prepares a specific language.
Formal Language of Specification:-
The formal language of specification has two sets syn and sem, and a relationship sat
among them. The syn set is the name given to the set of gluten and the sem set is
called the semantic domain i.e. the set glide, and the relationship sat is called the
satisfaction relationship. It is called so because when a particular specification syn is
given and a hypothetical state of the system sem is given, sat (syn, sem) causes the
state of the specification and the state of the specificand to satisfy.
Syntactic Domains:-
The syntactically reversible section of formal specification language consists of an
alphabet of symbols and an algorithm for generating symbols used in building
appropriate terms with those symbols. These terms then can describe the desired
system.
Semantic Domains:-
The in word phrases as they tend to correspond to higher level topics of expressions
can possess different meanings. Algol-like programming languages use adt languages
to define specs for algebras and programs. Hard core machine languages are used to
define functions. The elements of system interactions which deal with a concurrency or
a distributed nature utilise statements to represent state-flow, event-flow,
transition-flows, seismic-branching, partial orders and so-called state-automata etc.
Satisfaction Relation:-
Struck with a system architecture, the satisfaction relation is defined as a measure with
which an element of a semantic domain satisfies the requirements. The calculation of
satisfaction is done with the help of a special function - a homomorphism, related to
semantic abstraction. This function of semantic abstraction is used to divide the
elements of the semantic domain into groups of the same value. Thus there can be a
mix of several specifications that all represent different aspects of a system model or
even different systems specified using different languages. Among these specifications,
some specifications define only the actions required and there can be some
specifications describing the organization of those actions. As a result, two major
classes of semantic abstraction functions are developed: ones that conserve an
operation and ones that conserve a design.
Operational Semantics:-
How the system runs and behaves is known as the operating semantics of the system.
Operational semantics comprise more than one type, the selection depending on what
the user means by a single run of the system and how the runs are combined to figure
out the nature of the system. There are several operational semantics that are often
applied to a formal systems:
Linear semantics:-
In this system every state is considered as a linearly ordered set of events or states.
The system’s concurrent activities are symbolic non-deterministic sequence. So this is
pretty clear implicit ordering in which concurrent activities occur. That is for example, the
concurrent activity a b is notationally equivalent to the set of sequences a;b and b;a. It is
easy to understand but it does not encourage the understanding of concurrency since
the system’s behaviour in this model is the union of all its runs. In order if this model to
be more realistic, usually certain justice and fairness restrictions are enforced on
calculations to cut offunwanted interleavings.
Branching Semantics:-
In this theory events and choice are taken as primary components and instead of a
graph structures called case trees are employed to represent computations. Thus one
can think of a case tree as the definition of anew operational semantics for a system
without any control at all. Overall several se- mantics and axiomatics of modeling
concurrent computations and conditions have been proposed, some they have been
published, some they are still in development.
Maximally parallel semantics:-
This method implies that all possible parallel actions at any given instant can be
executed at the same time.
It is once more an inappropriate model of concurrency as it intrinsically suggests that all
necessary resources are available.
Partial ordering semantics:
In this convention, system semantics is equated to a system of states ordered partially
and interrelations among the states or events. The partial ordering introduces the
concept of precedence (or order) of events and specifies that some events can only
take place after certain events have taken place; however other events so called
concurrent events are said to be neither able to happen before nor after each other.
The nature of concurrency-which is specified by elements, which can be simply
understood as units of action which occur without order- clearly implies interestruction is
anot implementable feature in the development of systems.
Students also viewed