**2 Answers**

written 5.8 years ago by |

Structured Analysis is a semi-formal type of specification technique because it combines natural language with a graphical notation with defined semantics.

The specification language Z is a formal technique because it is founded on mathematical principles with a well defined syntax and semantics.

The formal specification technique requires the largest amount of technical skill, but it is the most amenable to analysis and has the least potential for ambiguity.

**Semi Formal Notations :**

Structured Analysis is a semi-formal type of specification technique which combines the use of natural language and graphical symbols with semantics. Structured Analysis is a methodology that describes a system as a function from inputs to outputs.

The methodology has a well-defined syntax and a loosely defined semantics.

Structured Analysis consists of various levels of abstraction with each level placing emphasis on transformation of data.

Each level of abstraction is called a data flow diagram and it depicts the functional decomposition of the system from the point of view of data rather than from the viewpoint of one user or a group of users.

A data flow diagram is essentially a picture showing the flow of information and how that information is processed by transformation centers called processes. Structured Analysis may be used to specify control behavior as well as information processing.

The top-most level of abstraction is a special case of a data flow diagram called a context diagram.

The context diagram describes the system in relation to its environment. It shows the net inputs and outputs of the system.

Each of the intermediate levels is a detailed decomposition of a process from a higher level.

The bottom-most level consists of a series of natural language specifications of processes that are not further decomposed.

Descriptions of terms used in the data flow diagrams appear in a data dictionary.

When compared to a natural language technique, Structured Analysis has less potential for ambiguity but requires a greater amount of technical skill. This methodology has

tool support which can undertake the task of automatically checking the syntactic consistency and completeness of the model.

Tools that assist in system design are available and widespread.

Structured Analysis offers a top down analysis of the system. Therefore, a model system can be read at different levels of detail.

**Formal Notations :**

Its definition as "a general description of the use of mathematical notations such as logic and set theory to describe system specifications and software designs together with techniques of validation and verification based on mathematics".

Z is a machine readable mathematical notation based on set theory and first order logic.

Z is used to specify a mathematical model of the system whereby the problem domain consists of data objects and the relationships between the various data objects in the system are described by the requirements.

The data objects are made of elements called basic types. The building blocks for the basic types are sets and functions.

Tools are available to provide automatic checking for type consistency across the specification. A specification written in Z is a mixture of formal mathematical statements and informal text. The formal mathematical statements give a precise description of the system, in terms of operations performed on the data objects, by specifying the system state before processing an event and after processing the event.

The formal statements are grouped into packaging mechanisms called schemas. Each schema consists of a declaration part that declares the variables used in the schema's operation and a body part that describes the operations.

The schemas are abstraction modules and they are combined to produce a specification of the system.

The type checking support offered by Z ensures the consistency of a Z specification. Manual checking is required to maintain consistency between the mathematical statements and the informal text.

Since a specification in Z is machine-readable, it can be used as input to some form of analysis, be it for formal validation, formal verification, or for the generation of test cases during system testing.

It is also possible to write mathematical statements in Z that are correctly type checked but have no meaning.

written 3.9 years ago by |

• Structured Analysis is a semi-formal type of specification technique because it combines natural language with a graphical notation with defined semantics.

• The specification language Z is a formal technique because it is founded on mathematical principles with a well defined syntax and semantics.

• The formal specification technique requires the largest amount of technical skill, but it is the most amenable to analysis and has the least potential for ambiguity.

Semi Formal Notations :

• Structured Analysis is a semi-formal type of specification technique which combines the use of natural language and graphical symbols with semantics. Structured Analysis is a methodology that describes a system as a function from inputs to outputs.

• The methodology has a well-defined syntax and a loosely defined semantics.

• Structured Analysis consists of various levels of abstraction with each level placing emphasis on transformation of data.

• Each level of abstraction is called a data flow diagram and it depicts the functional decomposition of the system from the point of view of data rather than from the viewpoint of one user or a group of users.

• A data flow diagram is essentially a picture showing the flow of information and how that information is processed by transformation centers called processes. Structured Analysis may be used to specify control behavior as well as information processing.

• The top-most level of abstraction is a special case of a data flow diagram called a context diagram.

• The context diagram describes the system in relation to its environment. It shows the net inputs and outputs of the system.

• Each of the intermediate levels is a detailed decomposition of a process from a higher level.

• The bottom-most level consists of a series of natural language specifications of processes that are not further decomposed.

• Descriptions of terms used in the data flow diagrams appear in a data dictionary.

• When compared to a natural language technique, Structured Analysis has less potential for ambiguity but requires a greater amount of technical skill.

• This methodology has tool support which can undertake the task of automatically checking the syntactic consistency and completeness of the model.

• Tools that assist in system design are available and widespread.

• Structured Analysis offers a top down analysis of the system. Therefore, a model system can be read at different levels of detail.

Formal Notations :

• Its definition as "a general description of the use of mathematical notations such as logic and set theory to describe system specifications and software designs together with techniques of validation and verification based on mathematics".

• Z is a machine readable mathematical notation based on set theory and first order logic.

• Z is used to specify a mathematical model of the system whereby the problem domain consists of data objects and the relationships between the various data objects in the system are described by the requirements.

• The data objects are made of elements called basic types. The building blocks for the basic types are sets and functions.

• Tools are available to provide automatic checking for type consistency across the specification. A specification written in Z is a mixture of formal mathematical statements and informal text. The formal mathematical statements give a precise description of the system, in terms of operations performed on the data objects, by specifying the system state before processing an event and after processing the event.

• The formal statements are grouped into packaging mechanisms called schemas. Each schema consists of a declaration part that declares the variables used in the schema's operation and a body part that describes the operations.

• The schemas are abstraction modules and they are combined to produce a specification of the system.

• The type checking support offered by Z ensures the consistency of a Z specification. Manual checking is required to maintain consistency between the mathematical statements and the informal text.

• Since a specification in Z is machine-readable, it can be used as input to some form of analysis, be it for formal validation, formal verification, or for the generation of test cases during system testing.

• It is also possible to write mathematical statements in Z that are correctly type checked but have no meaning.