SlideShare a Scribd company logo
IOSR Journal of Computer Engineering (IOSR-JCE)
e-ISSN: 2278-0661, p- ISSN: 2278-8727Volume 11, Issue 5 (May. - Jun. 2013), PP 37-39
www.iosrjournals.org
www.iosrjournals.org 37 | Page
Comparison of the Formal Specification Languages Based Upon
Various Parameters
Dr. A.K.Sharma, Monika Singh
Mody Institute of Technology and Science (MITS), Lakshmangarh, Rajasthan
Abstract:This paper focus on various Formal method and Formal specification languages and choosing the
appropriate one for a particular problem. It describes how a particular specification language is used for a
specific problem. A comparison of different formal specification languages is done taking various parameters.
Keywords:Formal method, Formal specification language, schema.
I. Introduction
One of the major problems with software intensive system is the inadequacy of system and software
specification. The requirements should usually define the major functions of the system and/or software
adequately, but many of the details which should be drawn out, cleaned up, and solidified in a more detailed
specification are not addressed. This causes inconsistencies and misinterpretations which consequently cause
problems in later stages of design and implementation. These problems are often recognized in the integration
stages of system. There are software development methods based on graphical techniques, such as data-flow
diagrams, finite state machines, and entity relationship diagrams which are proved helpful in developing better
specifications, but these lack precisions in details of the specification, and a smooth way in developing a design
and implementation.
The formal specification methods overcome these problems. They specify the system precisely, and
provide a smooth way from specification through design to implementation. There are successful applications of
formal methods to real-life, complex software specifications for example, CICS work at IBM [1], and the
oscilloscope work at Tectronix. There are a number of formal specification languages such as Z notation, OCL,
VDM, LARCH etc. Basically all these formal specification languages include – formal specification,
refinement, and verification which in term consist of set theory, logics, and algebra etc. The primary goal of our
current endeavors is to compare these formal specification languages on the basis of their syntax.
II. Z notation
Z notation is based on typed set theory and first-order logic. Z provides a construct, called a schema, to
describe a specification‘s state and operations. A schema groups variable declarations with a list of predicates
that constrain the possible value of variable.
Some Z notation concept
Data Invariant-A data invariant is a condition that is true throughout the execution of the system.
State-In Z specification, the state is represented by the system‘s stored data.
Operation-Operation is an action that takes place within a system and read or writes data. Three types of
conditions are associated with operation:
Invariant-an invariant define what is guaranteed not to change.
Precondition- a precondition defines the circumstances in which a particular operation is valid.
Postcondition- postcondition of an operation define what is guaranteed to be true upon completion of an
operation. This is defined by its effect on data.
For example, Block handler – maintains a reservoir of unused blocks and will also keep track of blocks that are
currently in use. When blocks are released from a deleted file they are normally added to queue of blocks
waiting to be added to the reservoir of unused blocks. Now in Z notation [2], this has been depicted
schematically as follow:
BLOCKS- a set BLOCKS will consist of every block number.
ALLBLOCKS- is a set of blocks that lie between 1 and MAXBLOCKS.
The state will be modeled by two sets- used and free. The state can be described as
Used, free: BLOCKS
BlockQueue: seq P BLOCKS
The above description tells that used and free will be sets of blocks and that BlockQueue will be a sequence,
each element of which will be a set of blocks.
The data invariant can be written as
Comparison Of The Formal Specification Languages Based Upon Various Parameters
www.iosrjournals.org 38 | Page
Used ^ free = null
Used U free = AllBlocks
The precondition and postcondition is also verified like this, mathematically. In Z specification language we
use the set theory, logics, and algebra.
III. OCL (Object constraint language)
The Object Constraint Language (OCL) is an expression language which describes constraint on
object-oriented languages and on other modeling artifacts. OCL is part of Unified Modeling Language (UML)
and also play an important role in the analysis phase of software lifecycle. Traditional graphical model, like
class models are not enough for a precise and unambiguous specification. For that we need to implement some
additional constraint on the objects. But the problem with the traditional formal method is that one have a good
grip on mathematics, hence are difficult for average business or system modeler to use. To fill this gap, OCL has
been developed. It has been developed as a business modeling language within the IBM Insurance division.
Since OCL is an expression language, the state of the system will never change by imposing constrain on the
object. It just limit their range. The state of the objects in system cannot change during evaluation.
Some of the OCL notations are given below:
Some OCL notation
Cf() – Apply the built-in operation f to collection C.
X.Y – Obtain the property Y of object X.
C1 includesAll(C2) —True if every element of C2 is found in C1.
CisEmpty() – True if C has no element.
Csize() – The number of elements in collection C.
S1intersection(S2) – The set of those elements found in S1 and also in S2.
Block Handler, for example the very first step for using OCL [3] is to develop a UML model (class diagram),
which specifies many relationship among the objects involved; however we should also add OCL expression to
ensure that implementers of system know more precisely what they must ensure remain true as the system runs.
For Example:-No block will be marked as both used and unused.
Context BlockHandler inv: self.usedintersection(self.free)) isEmpty()
Here, context indicates the element of the UML diagram that the expression constrains. And the
keyword self refer to the instance of object (in this case instance of BlockHandler). Self.a defines the ‗a‘
attribute or property of object.One of the plus point of using OCL is that it is more friendly to people who are
less mathematically inclined. Also it is more easily processed by computer. But it makes OCL a little wordy in
places.
IV. Vdm (Vienna Development Method)
VDM refers to a collection of techniques for formal specification and development of computing
systems. Basically it includes specification language called VDM-SL, rules for data and operation refinement,
and a proof theory. VDM-SL is a model-oriented specification language. i.e a specification in VDM-SL consists
of a mathematical model built from simple data types like sets, lists, and mappings, along with operations which
change the state of the model. For example, a specification of a hotel reservation system would contain a
mapping from room number to names and addresses of occupants (modeled as character strings), along with the
operation to add and remove guests and rooms occupation dates etc. A formal Model in VDM is composed of
Basic types,Defined types (with many useful constructors),Invariant of those types, Explicit function definition
(include precondition), and Implicit definitions (postcondition).There is also tool available for VDM
specifications. SpecBox is such an industrialized tool for inputting, checking and printing VDM specifications
[4, 5]. It is used in industries of avionics, civil nuclear, railway, security applications and in academic
applications.
V. SDL (Specification and Description Language)
SDL is an object-oriented formal language which is defined by The International Telecommunication
Union-Telecommunications Standardization sector. SDL basically intended for specification of complex, event-
driven, real-time, and interactive applications involving many concurrent activities that communicate using
discrete signals. Instead of schema in Z notation or Class model in OCL, SDL [6] system consists of a set of
extended Finite State Machines (FSMs) that run in parallel. A SDL system consists of following components:
Structure- system, block, process, and procedure hierarchy,
Communication- signal with optional signal parameters,
Behavior- processes,
Data- abstract data types (ADT),
Comparison Of The Formal Specification Languages Based Upon Various Parameters
www.iosrjournals.org 39 | Page
Inheritance- describing relations and specialization.
The above mentioned components are described briefly below:
System- The overall design of the software product is called the system. The universe outside the system is
called the environment.
Blocks- Blocks are the primary divisions of the system. Dividing the system into blocks thus enables the
pictorial representation of all the essential components of the given system.
Process- When the system is divided down to the simplest block, the way the block fulfils its functionality is
described by processes. Basically a process is the code that will be executed. The complete syntax in process
symbol is:
<Process name> [(<number of instances at startup>, <maximum number of instances>)]
Communication- SDL has two basic communication mechanisms: asynchronous signal and synchronous
remote procedure calls.
Inheritance- Since SDL is an object-oriented, which provides the user the powerful tool for structuring and
reuse.
VI. Larch
Larch is an ongoing project at MIT‘s laboratory for Computer Science and DEC‘s system Research
Centre. Basically it support a two tired specification, each of which has two component written in two language
named as LIL( Larch Interface Language) and the other one is LSL ( Larch Shared Language ). LIL [7, 8] is
designed for a specific programming language. It is used to describe the observable behavior of the component
and is language dependent.
VII. Comparison
Here we are trying to describe the differences in specification languages by the means of the following
parameters:
Process-oriented – These are designed to describe concurrent networks of communicating component‘s
behaviors, and since most of the language describe system in term of process, so it is called as process-oriented.
Sequential-oriented – It provide the appropriate way to describe the input-output behavior of sequential
system. Model-oriented – The language which fall in this category provide an abstract model of system and the
operation are specified by either state change or by event affect the model.
Property-oriented – These focus on the property desired by the system being specified and on data type instead
of services/ functions that the system provides.
Mathematics used—Algebra, logic, set theory. All the specification languages discussed here differ in the
following:
Z–sequential-oriented, property-oriented, uses set theory and logic.
VDM–process-oriented, model-oriented, uses the set theory and logics.
Larch – sequential-oriented, property-oriented, and uses algebra and logics
SDL-process-oriented, property-oriented
OCL—model-oriented, sequential-oriented, and uses set theory and logic.
VIII. Conclusion
The use of Formal specification language in software development process do not force you to invest a
significant cost or time overhead across the entire development, rather it is helpful for understanding the system
being developed and preventing error from being propagated through the early stage of lifecycle to the later one.
References
[1]. Nix, C.J. and Collins, B.P. ―The use of Software Engineering, including the Z notation, in development of CICS.‖1988
[2]. Spivey, J.M.. The Z Notation: A reference manual. Prentice- Hall, 1989.
[3]. Warmer, J., and A. Kleppe. Object Constraint Language, Addis ion- Wesley 1998.
[4]. C. B. Jones, Systematic Software Development using VDM, 2nd
ed. Englewood Cliffs, PH, NJ:, 19190.
[5]. M. Jackson, ―Description is our business,‖ in VDM ‗91: Formal Soft.Dev. Methods. New York: Springer-Verlag, LNCS-551, pp. 1-
9.
[6]. Software Development using Specification and Description Language- Real time, Sharath Gopalappa.
[7]. J. Guttag and J. Horning, Larch: Languages and Tools for Formal Specification, Springer-Verlag; 1993.
[8]. Cooke, D., and Gates, A., ―Language for the Specification of Software,‖ Journal of System Software, 1996, pp 269-307.

More Related Content

What's hot

Designmethodology1
Designmethodology1Designmethodology1
Designmethodology1
kollatiMeenakshi
 
COQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODEL
COQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODELCOQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODEL
COQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODEL
csandit
 
Introduction to database-Normalisation
Introduction to database-NormalisationIntroduction to database-Normalisation
Introduction to database-Normalisation
Ajit Nayak
 
On the Choice of Models of Computation for Writing Executable Specificatoins ...
On the Choice of Models of Computation for Writing Executable Specificatoins ...On the Choice of Models of Computation for Writing Executable Specificatoins ...
On the Choice of Models of Computation for Writing Executable Specificatoins ...
ijeukens
 
MGU SYLLABUS MANUAL-Advance diploma in computer applications
MGU SYLLABUS MANUAL-Advance diploma in computer applicationsMGU SYLLABUS MANUAL-Advance diploma in computer applications
MGU SYLLABUS MANUAL-Advance diploma in computer applications
mahatmagandhiuniversity
 
p138-jiang
p138-jiangp138-jiang
p138-jiang
Zheng Ping Jiang
 
Mainframe interview
Mainframe interviewMainframe interview
Mainframe interview
Shivankoo Sharma
 
Advance diploma in it
Advance diploma in itAdvance diploma in it
Advance diploma in it
mahatmagandhiuniversity
 
OO Development 4 - Object Concepts
OO Development 4 - Object ConceptsOO Development 4 - Object Concepts
OO Development 4 - Object Concepts
Randy Connolly
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3
Ricardo Quintero
 
A Programmatic View and Implementation of XML
A Programmatic View and Implementation of XMLA Programmatic View and Implementation of XML
A Programmatic View and Implementation of XML
CSCJournals
 
Relational Database Design
Relational Database DesignRelational Database Design
Relational Database Design
Prabu U
 
A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...
A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...
A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...
IJERA Editor
 
Object-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochObject-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady Booch
Sorina Chirilă
 
C programming structures &amp; union
C programming structures &amp; unionC programming structures &amp; union
C programming structures &amp; union
Bathshebaparimala
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Anirban Majumdar
 
ITU - MDD – Model-to-Model Transformations
ITU - MDD – Model-to-Model TransformationsITU - MDD – Model-to-Model Transformations
ITU - MDD – Model-to-Model Transformations
Tonny Madsen
 
Structures and Pointers
Structures and PointersStructures and Pointers
Structures and Pointers
Prabu U
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Dr. C.V. Suresh Babu
 

What's hot (19)

Designmethodology1
Designmethodology1Designmethodology1
Designmethodology1
 
COQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODEL
COQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODELCOQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODEL
COQUEL: A CONCEPTUAL QUERY LANGUAGE BASED ON THE ENTITYRELATIONSHIP MODEL
 
Introduction to database-Normalisation
Introduction to database-NormalisationIntroduction to database-Normalisation
Introduction to database-Normalisation
 
On the Choice of Models of Computation for Writing Executable Specificatoins ...
On the Choice of Models of Computation for Writing Executable Specificatoins ...On the Choice of Models of Computation for Writing Executable Specificatoins ...
On the Choice of Models of Computation for Writing Executable Specificatoins ...
 
MGU SYLLABUS MANUAL-Advance diploma in computer applications
MGU SYLLABUS MANUAL-Advance diploma in computer applicationsMGU SYLLABUS MANUAL-Advance diploma in computer applications
MGU SYLLABUS MANUAL-Advance diploma in computer applications
 
p138-jiang
p138-jiangp138-jiang
p138-jiang
 
Mainframe interview
Mainframe interviewMainframe interview
Mainframe interview
 
Advance diploma in it
Advance diploma in itAdvance diploma in it
Advance diploma in it
 
OO Development 4 - Object Concepts
OO Development 4 - Object ConceptsOO Development 4 - Object Concepts
OO Development 4 - Object Concepts
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3
 
A Programmatic View and Implementation of XML
A Programmatic View and Implementation of XMLA Programmatic View and Implementation of XML
A Programmatic View and Implementation of XML
 
Relational Database Design
Relational Database DesignRelational Database Design
Relational Database Design
 
A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...
A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...
A Case Elaboration Methodology for a Semantic Web Service Discovery System Ba...
 
Object-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochObject-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady Booch
 
C programming structures &amp; union
C programming structures &amp; unionC programming structures &amp; union
C programming structures &amp; union
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
ITU - MDD – Model-to-Model Transformations
ITU - MDD – Model-to-Model TransformationsITU - MDD – Model-to-Model Transformations
ITU - MDD – Model-to-Model Transformations
 
Structures and Pointers
Structures and PointersStructures and Pointers
Structures and Pointers
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 

Viewers also liked

Channel Fading Detection in Manets with Hand off Strategy
Channel Fading Detection in Manets with Hand off StrategyChannel Fading Detection in Manets with Hand off Strategy
Channel Fading Detection in Manets with Hand off Strategy
IOSR Journals
 
test
testtest
Fuzzy Bitopological Ideals Spaces
Fuzzy Bitopological Ideals SpacesFuzzy Bitopological Ideals Spaces
Fuzzy Bitopological Ideals Spaces
IOSR Journals
 
C-Worm Traffic Detection using Power Spectral Density and Spectral Flatness ...
C-Worm Traffic Detection using Power Spectral Density and  Spectral Flatness ...C-Worm Traffic Detection using Power Spectral Density and  Spectral Flatness ...
C-Worm Traffic Detection using Power Spectral Density and Spectral Flatness ...
IOSR Journals
 
Literature Survey on Web Mining
Literature Survey on Web MiningLiterature Survey on Web Mining
Literature Survey on Web Mining
IOSR Journals
 
Issues in Sentiment analysis
Issues in Sentiment analysisIssues in Sentiment analysis
Issues in Sentiment analysis
IOSR Journals
 
Physical education 2
Physical education 2Physical education 2
Physical education 2
Nestorcalvadiego
 
An SPRT Procedure for an Ungrouped Data using MMLE Approach
An SPRT Procedure for an Ungrouped Data using MMLE ApproachAn SPRT Procedure for an Ungrouped Data using MMLE Approach
An SPRT Procedure for an Ungrouped Data using MMLE Approach
IOSR Journals
 
A way of managing data center networks
A way of managing data center networksA way of managing data center networks
A way of managing data center networks
IOSR Journals
 
Masthead Analysis
Masthead AnalysisMasthead Analysis
Masthead Analysis
Temibaybee
 
Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...
Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...
Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...
IOSR Journals
 
Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...
Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...
Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...
IOSR Journals
 
Color to Gray and back’ using normalization of color components with Cosine, ...
Color to Gray and back’ using normalization of color components with Cosine, ...Color to Gray and back’ using normalization of color components with Cosine, ...
Color to Gray and back’ using normalization of color components with Cosine, ...
IOSR Journals
 
Security in a Virtualised Computing
Security in a Virtualised ComputingSecurity in a Virtualised Computing
Security in a Virtualised Computing
IOSR Journals
 
Script Identification for printed document images at text-line level using DC...
Script Identification for printed document images at text-line level using DC...Script Identification for printed document images at text-line level using DC...
Script Identification for printed document images at text-line level using DC...
IOSR Journals
 
Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...
Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...
Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...
IOSR Journals
 
Web Mining Research Issues and Future Directions – A Survey
Web Mining Research Issues and Future Directions – A SurveyWeb Mining Research Issues and Future Directions – A Survey
Web Mining Research Issues and Future Directions – A Survey
IOSR Journals
 
Creating a Great Social Media Strategy -- Vastrm Case
Creating a Great Social Media Strategy -- Vastrm CaseCreating a Great Social Media Strategy -- Vastrm Case
Creating a Great Social Media Strategy -- Vastrm Case
Keely Galgano
 
An Approach to Improve Brain Disorder Using Machine Learning Techniques
An Approach to Improve Brain Disorder Using Machine Learning TechniquesAn Approach to Improve Brain Disorder Using Machine Learning Techniques
An Approach to Improve Brain Disorder Using Machine Learning Techniques
IOSR Journals
 
Secure Authentication for Mobile Banking Using Facial Recognition
Secure Authentication for Mobile Banking Using Facial RecognitionSecure Authentication for Mobile Banking Using Facial Recognition
Secure Authentication for Mobile Banking Using Facial Recognition
IOSR Journals
 

Viewers also liked (20)

Channel Fading Detection in Manets with Hand off Strategy
Channel Fading Detection in Manets with Hand off StrategyChannel Fading Detection in Manets with Hand off Strategy
Channel Fading Detection in Manets with Hand off Strategy
 
test
testtest
test
 
Fuzzy Bitopological Ideals Spaces
Fuzzy Bitopological Ideals SpacesFuzzy Bitopological Ideals Spaces
Fuzzy Bitopological Ideals Spaces
 
C-Worm Traffic Detection using Power Spectral Density and Spectral Flatness ...
C-Worm Traffic Detection using Power Spectral Density and  Spectral Flatness ...C-Worm Traffic Detection using Power Spectral Density and  Spectral Flatness ...
C-Worm Traffic Detection using Power Spectral Density and Spectral Flatness ...
 
Literature Survey on Web Mining
Literature Survey on Web MiningLiterature Survey on Web Mining
Literature Survey on Web Mining
 
Issues in Sentiment analysis
Issues in Sentiment analysisIssues in Sentiment analysis
Issues in Sentiment analysis
 
Physical education 2
Physical education 2Physical education 2
Physical education 2
 
An SPRT Procedure for an Ungrouped Data using MMLE Approach
An SPRT Procedure for an Ungrouped Data using MMLE ApproachAn SPRT Procedure for an Ungrouped Data using MMLE Approach
An SPRT Procedure for an Ungrouped Data using MMLE Approach
 
A way of managing data center networks
A way of managing data center networksA way of managing data center networks
A way of managing data center networks
 
Masthead Analysis
Masthead AnalysisMasthead Analysis
Masthead Analysis
 
Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...
Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...
Universal Artificial Intelligence for Intelligent Agents: An Approach to Supe...
 
Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...
Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...
Combining both Plug-in Vehicles and Renewable Energy Resources for Unit Commi...
 
Color to Gray and back’ using normalization of color components with Cosine, ...
Color to Gray and back’ using normalization of color components with Cosine, ...Color to Gray and back’ using normalization of color components with Cosine, ...
Color to Gray and back’ using normalization of color components with Cosine, ...
 
Security in a Virtualised Computing
Security in a Virtualised ComputingSecurity in a Virtualised Computing
Security in a Virtualised Computing
 
Script Identification for printed document images at text-line level using DC...
Script Identification for printed document images at text-line level using DC...Script Identification for printed document images at text-line level using DC...
Script Identification for printed document images at text-line level using DC...
 
Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...
Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...
Design and Implementation of Single Leg Reduce Switch Count Dual Output Inver...
 
Web Mining Research Issues and Future Directions – A Survey
Web Mining Research Issues and Future Directions – A SurveyWeb Mining Research Issues and Future Directions – A Survey
Web Mining Research Issues and Future Directions – A Survey
 
Creating a Great Social Media Strategy -- Vastrm Case
Creating a Great Social Media Strategy -- Vastrm CaseCreating a Great Social Media Strategy -- Vastrm Case
Creating a Great Social Media Strategy -- Vastrm Case
 
An Approach to Improve Brain Disorder Using Machine Learning Techniques
An Approach to Improve Brain Disorder Using Machine Learning TechniquesAn Approach to Improve Brain Disorder Using Machine Learning Techniques
An Approach to Improve Brain Disorder Using Machine Learning Techniques
 
Secure Authentication for Mobile Banking Using Facial Recognition
Secure Authentication for Mobile Banking Using Facial RecognitionSecure Authentication for Mobile Banking Using Facial Recognition
Secure Authentication for Mobile Banking Using Facial Recognition
 

Similar to Comparison of the Formal Specification Languages Based Upon Various Parameters

KEOD23-JThermodynamcsCloud
KEOD23-JThermodynamcsCloudKEOD23-JThermodynamcsCloud
KEOD23-JThermodynamcsCloud
Edward Blurock
 
A tlm based platform to specify and verify component-based real-time systems
A tlm based platform to specify and verify component-based real-time systemsA tlm based platform to specify and verify component-based real-time systems
A tlm based platform to specify and verify component-based real-time systems
ijseajournal
 
A Formal Executable Semantics Of Verilog
A Formal Executable Semantics Of VerilogA Formal Executable Semantics Of Verilog
A Formal Executable Semantics Of Verilog
Tracy Morgan
 
SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE
SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE
SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE
ijscmcjournal
 
oracle-complex-event-processing-066421
oracle-complex-event-processing-066421oracle-complex-event-processing-066421
oracle-complex-event-processing-066421
Stephanie Langenfeld McReynolds
 
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSMANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
ijseajournal
 
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
IDES Editor
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
Khushboo Wadhwani
 
The secret life of rules in Software Engineering
The secret life of rules in Software EngineeringThe secret life of rules in Software Engineering
The secret life of rules in Software Engineering
Jordi Cabot
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
Amirul Islam
 
Formalization of a Hospital Management System
Formalization of a Hospital Management SystemFormalization of a Hospital Management System
Formalization of a Hospital Management System
ijcseit
 
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
Aravind NC
 
Linux Assignment 3
Linux Assignment 3Linux Assignment 3
Linux Assignment 3
Diane Allen
 
Sdlc
SdlcSdlc
Sdlc
SdlcSdlc
Paper 55 final
Paper 55 finalPaper 55 final
Paper 55 final
Dusan Savic
 
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
cscpconf
 
Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...
csandit
 
ASP.NET Session 2
ASP.NET Session 2ASP.NET Session 2
ASP.NET Session 2
Sisir Ghosh
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
Megan Espinoza
 

Similar to Comparison of the Formal Specification Languages Based Upon Various Parameters (20)

KEOD23-JThermodynamcsCloud
KEOD23-JThermodynamcsCloudKEOD23-JThermodynamcsCloud
KEOD23-JThermodynamcsCloud
 
A tlm based platform to specify and verify component-based real-time systems
A tlm based platform to specify and verify component-based real-time systemsA tlm based platform to specify and verify component-based real-time systems
A tlm based platform to specify and verify component-based real-time systems
 
A Formal Executable Semantics Of Verilog
A Formal Executable Semantics Of VerilogA Formal Executable Semantics Of Verilog
A Formal Executable Semantics Of Verilog
 
SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE
SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE
SL5 OBJECT: SIMPLER LEVEL 5 OBJECT EXPERT SYSTEM LANGUAGE
 
oracle-complex-event-processing-066421
oracle-complex-event-processing-066421oracle-complex-event-processing-066421
oracle-complex-event-processing-066421
 
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSMANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
 
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
The secret life of rules in Software Engineering
The secret life of rules in Software EngineeringThe secret life of rules in Software Engineering
The secret life of rules in Software Engineering
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Formalization of a Hospital Management System
Formalization of a Hospital Management SystemFormalization of a Hospital Management System
Formalization of a Hospital Management System
 
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
MC0083 – Object Oriented Analysis &. Design using UML - Master of Computer Sc...
 
Linux Assignment 3
Linux Assignment 3Linux Assignment 3
Linux Assignment 3
 
Sdlc
SdlcSdlc
Sdlc
 
Sdlc
SdlcSdlc
Sdlc
 
Paper 55 final
Paper 55 finalPaper 55 final
Paper 55 final
 
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
 
Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...
 
ASP.NET Session 2
ASP.NET Session 2ASP.NET Session 2
ASP.NET Session 2
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
 

More from IOSR Journals

A011140104
A011140104A011140104
A011140104
IOSR Journals
 
M0111397100
M0111397100M0111397100
M0111397100
IOSR Journals
 
L011138596
L011138596L011138596
L011138596
IOSR Journals
 
K011138084
K011138084K011138084
K011138084
IOSR Journals
 
J011137479
J011137479J011137479
J011137479
IOSR Journals
 
I011136673
I011136673I011136673
I011136673
IOSR Journals
 
G011134454
G011134454G011134454
G011134454
IOSR Journals
 
H011135565
H011135565H011135565
H011135565
IOSR Journals
 
F011134043
F011134043F011134043
F011134043
IOSR Journals
 
E011133639
E011133639E011133639
E011133639
IOSR Journals
 
D011132635
D011132635D011132635
D011132635
IOSR Journals
 
C011131925
C011131925C011131925
C011131925
IOSR Journals
 
B011130918
B011130918B011130918
B011130918
IOSR Journals
 
A011130108
A011130108A011130108
A011130108
IOSR Journals
 
I011125160
I011125160I011125160
I011125160
IOSR Journals
 
H011124050
H011124050H011124050
H011124050
IOSR Journals
 
G011123539
G011123539G011123539
G011123539
IOSR Journals
 
F011123134
F011123134F011123134
F011123134
IOSR Journals
 
E011122530
E011122530E011122530
E011122530
IOSR Journals
 
D011121524
D011121524D011121524
D011121524
IOSR Journals
 

More from IOSR Journals (20)

A011140104
A011140104A011140104
A011140104
 
M0111397100
M0111397100M0111397100
M0111397100
 
L011138596
L011138596L011138596
L011138596
 
K011138084
K011138084K011138084
K011138084
 
J011137479
J011137479J011137479
J011137479
 
I011136673
I011136673I011136673
I011136673
 
G011134454
G011134454G011134454
G011134454
 
H011135565
H011135565H011135565
H011135565
 
F011134043
F011134043F011134043
F011134043
 
E011133639
E011133639E011133639
E011133639
 
D011132635
D011132635D011132635
D011132635
 
C011131925
C011131925C011131925
C011131925
 
B011130918
B011130918B011130918
B011130918
 
A011130108
A011130108A011130108
A011130108
 
I011125160
I011125160I011125160
I011125160
 
H011124050
H011124050H011124050
H011124050
 
G011123539
G011123539G011123539
G011123539
 
F011123134
F011123134F011123134
F011123134
 
E011122530
E011122530E011122530
E011122530
 
D011121524
D011121524D011121524
D011121524
 

Recently uploaded

Zener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and ApplicationsZener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and Applications
Shiny Christobel
 
Height and depth gauge linear metrology.pdf
Height and depth gauge linear metrology.pdfHeight and depth gauge linear metrology.pdf
Height and depth gauge linear metrology.pdf
q30122000
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
uqyfuc
 
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptxSENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
b0754201
 
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
ijseajournal
 
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
PriyankaKilaniya
 
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
upoux
 
Accident detection system project report.pdf
Accident detection system project report.pdfAccident detection system project report.pdf
Accident detection system project report.pdf
Kamal Acharya
 
Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...
Prakhyath Rai
 
Mechatronics material . Mechanical engineering
Mechatronics material . Mechanical engineeringMechatronics material . Mechanical engineering
Mechatronics material . Mechanical engineering
sachin chaurasia
 
2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt
abdatawakjira
 
AI-Based Home Security System : Home security
AI-Based Home Security System : Home securityAI-Based Home Security System : Home security
AI-Based Home Security System : Home security
AIRCC Publishing Corporation
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
ijaia
 
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
nedcocy
 
Pressure Relief valve used in flow line to release the over pressure at our d...
Pressure Relief valve used in flow line to release the over pressure at our d...Pressure Relief valve used in flow line to release the over pressure at our d...
Pressure Relief valve used in flow line to release the over pressure at our d...
cannyengineerings
 
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
Anant Corporation
 
Open Channel Flow: fluid flow with a free surface
Open Channel Flow: fluid flow with a free surfaceOpen Channel Flow: fluid flow with a free surface
Open Channel Flow: fluid flow with a free surface
Indrajeet sahu
 
Supermarket Management System Project Report.pdf
Supermarket Management System Project Report.pdfSupermarket Management System Project Report.pdf
Supermarket Management System Project Report.pdf
Kamal Acharya
 
Digital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptxDigital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptx
aryanpankaj78
 
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENTNATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
Addu25809
 

Recently uploaded (20)

Zener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and ApplicationsZener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and Applications
 
Height and depth gauge linear metrology.pdf
Height and depth gauge linear metrology.pdfHeight and depth gauge linear metrology.pdf
Height and depth gauge linear metrology.pdf
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptxSENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
 
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
 
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
 
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
一比一原版(uofo毕业证书)美国俄勒冈大学毕业证如何办理
 
Accident detection system project report.pdf
Accident detection system project report.pdfAccident detection system project report.pdf
Accident detection system project report.pdf
 
Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...
 
Mechatronics material . Mechanical engineering
Mechatronics material . Mechanical engineeringMechatronics material . Mechanical engineering
Mechatronics material . Mechanical engineering
 
2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt
 
AI-Based Home Security System : Home security
AI-Based Home Security System : Home securityAI-Based Home Security System : Home security
AI-Based Home Security System : Home security
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
 
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
 
Pressure Relief valve used in flow line to release the over pressure at our d...
Pressure Relief valve used in flow line to release the over pressure at our d...Pressure Relief valve used in flow line to release the over pressure at our d...
Pressure Relief valve used in flow line to release the over pressure at our d...
 
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
 
Open Channel Flow: fluid flow with a free surface
Open Channel Flow: fluid flow with a free surfaceOpen Channel Flow: fluid flow with a free surface
Open Channel Flow: fluid flow with a free surface
 
Supermarket Management System Project Report.pdf
Supermarket Management System Project Report.pdfSupermarket Management System Project Report.pdf
Supermarket Management System Project Report.pdf
 
Digital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptxDigital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptx
 
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENTNATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
 

Comparison of the Formal Specification Languages Based Upon Various Parameters

  • 1. IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661, p- ISSN: 2278-8727Volume 11, Issue 5 (May. - Jun. 2013), PP 37-39 www.iosrjournals.org www.iosrjournals.org 37 | Page Comparison of the Formal Specification Languages Based Upon Various Parameters Dr. A.K.Sharma, Monika Singh Mody Institute of Technology and Science (MITS), Lakshmangarh, Rajasthan Abstract:This paper focus on various Formal method and Formal specification languages and choosing the appropriate one for a particular problem. It describes how a particular specification language is used for a specific problem. A comparison of different formal specification languages is done taking various parameters. Keywords:Formal method, Formal specification language, schema. I. Introduction One of the major problems with software intensive system is the inadequacy of system and software specification. The requirements should usually define the major functions of the system and/or software adequately, but many of the details which should be drawn out, cleaned up, and solidified in a more detailed specification are not addressed. This causes inconsistencies and misinterpretations which consequently cause problems in later stages of design and implementation. These problems are often recognized in the integration stages of system. There are software development methods based on graphical techniques, such as data-flow diagrams, finite state machines, and entity relationship diagrams which are proved helpful in developing better specifications, but these lack precisions in details of the specification, and a smooth way in developing a design and implementation. The formal specification methods overcome these problems. They specify the system precisely, and provide a smooth way from specification through design to implementation. There are successful applications of formal methods to real-life, complex software specifications for example, CICS work at IBM [1], and the oscilloscope work at Tectronix. There are a number of formal specification languages such as Z notation, OCL, VDM, LARCH etc. Basically all these formal specification languages include – formal specification, refinement, and verification which in term consist of set theory, logics, and algebra etc. The primary goal of our current endeavors is to compare these formal specification languages on the basis of their syntax. II. Z notation Z notation is based on typed set theory and first-order logic. Z provides a construct, called a schema, to describe a specification‘s state and operations. A schema groups variable declarations with a list of predicates that constrain the possible value of variable. Some Z notation concept Data Invariant-A data invariant is a condition that is true throughout the execution of the system. State-In Z specification, the state is represented by the system‘s stored data. Operation-Operation is an action that takes place within a system and read or writes data. Three types of conditions are associated with operation: Invariant-an invariant define what is guaranteed not to change. Precondition- a precondition defines the circumstances in which a particular operation is valid. Postcondition- postcondition of an operation define what is guaranteed to be true upon completion of an operation. This is defined by its effect on data. For example, Block handler – maintains a reservoir of unused blocks and will also keep track of blocks that are currently in use. When blocks are released from a deleted file they are normally added to queue of blocks waiting to be added to the reservoir of unused blocks. Now in Z notation [2], this has been depicted schematically as follow: BLOCKS- a set BLOCKS will consist of every block number. ALLBLOCKS- is a set of blocks that lie between 1 and MAXBLOCKS. The state will be modeled by two sets- used and free. The state can be described as Used, free: BLOCKS BlockQueue: seq P BLOCKS The above description tells that used and free will be sets of blocks and that BlockQueue will be a sequence, each element of which will be a set of blocks. The data invariant can be written as
  • 2. Comparison Of The Formal Specification Languages Based Upon Various Parameters www.iosrjournals.org 38 | Page Used ^ free = null Used U free = AllBlocks The precondition and postcondition is also verified like this, mathematically. In Z specification language we use the set theory, logics, and algebra. III. OCL (Object constraint language) The Object Constraint Language (OCL) is an expression language which describes constraint on object-oriented languages and on other modeling artifacts. OCL is part of Unified Modeling Language (UML) and also play an important role in the analysis phase of software lifecycle. Traditional graphical model, like class models are not enough for a precise and unambiguous specification. For that we need to implement some additional constraint on the objects. But the problem with the traditional formal method is that one have a good grip on mathematics, hence are difficult for average business or system modeler to use. To fill this gap, OCL has been developed. It has been developed as a business modeling language within the IBM Insurance division. Since OCL is an expression language, the state of the system will never change by imposing constrain on the object. It just limit their range. The state of the objects in system cannot change during evaluation. Some of the OCL notations are given below: Some OCL notation Cf() – Apply the built-in operation f to collection C. X.Y – Obtain the property Y of object X. C1 includesAll(C2) —True if every element of C2 is found in C1. CisEmpty() – True if C has no element. Csize() – The number of elements in collection C. S1intersection(S2) – The set of those elements found in S1 and also in S2. Block Handler, for example the very first step for using OCL [3] is to develop a UML model (class diagram), which specifies many relationship among the objects involved; however we should also add OCL expression to ensure that implementers of system know more precisely what they must ensure remain true as the system runs. For Example:-No block will be marked as both used and unused. Context BlockHandler inv: self.usedintersection(self.free)) isEmpty() Here, context indicates the element of the UML diagram that the expression constrains. And the keyword self refer to the instance of object (in this case instance of BlockHandler). Self.a defines the ‗a‘ attribute or property of object.One of the plus point of using OCL is that it is more friendly to people who are less mathematically inclined. Also it is more easily processed by computer. But it makes OCL a little wordy in places. IV. Vdm (Vienna Development Method) VDM refers to a collection of techniques for formal specification and development of computing systems. Basically it includes specification language called VDM-SL, rules for data and operation refinement, and a proof theory. VDM-SL is a model-oriented specification language. i.e a specification in VDM-SL consists of a mathematical model built from simple data types like sets, lists, and mappings, along with operations which change the state of the model. For example, a specification of a hotel reservation system would contain a mapping from room number to names and addresses of occupants (modeled as character strings), along with the operation to add and remove guests and rooms occupation dates etc. A formal Model in VDM is composed of Basic types,Defined types (with many useful constructors),Invariant of those types, Explicit function definition (include precondition), and Implicit definitions (postcondition).There is also tool available for VDM specifications. SpecBox is such an industrialized tool for inputting, checking and printing VDM specifications [4, 5]. It is used in industries of avionics, civil nuclear, railway, security applications and in academic applications. V. SDL (Specification and Description Language) SDL is an object-oriented formal language which is defined by The International Telecommunication Union-Telecommunications Standardization sector. SDL basically intended for specification of complex, event- driven, real-time, and interactive applications involving many concurrent activities that communicate using discrete signals. Instead of schema in Z notation or Class model in OCL, SDL [6] system consists of a set of extended Finite State Machines (FSMs) that run in parallel. A SDL system consists of following components: Structure- system, block, process, and procedure hierarchy, Communication- signal with optional signal parameters, Behavior- processes, Data- abstract data types (ADT),
  • 3. Comparison Of The Formal Specification Languages Based Upon Various Parameters www.iosrjournals.org 39 | Page Inheritance- describing relations and specialization. The above mentioned components are described briefly below: System- The overall design of the software product is called the system. The universe outside the system is called the environment. Blocks- Blocks are the primary divisions of the system. Dividing the system into blocks thus enables the pictorial representation of all the essential components of the given system. Process- When the system is divided down to the simplest block, the way the block fulfils its functionality is described by processes. Basically a process is the code that will be executed. The complete syntax in process symbol is: <Process name> [(<number of instances at startup>, <maximum number of instances>)] Communication- SDL has two basic communication mechanisms: asynchronous signal and synchronous remote procedure calls. Inheritance- Since SDL is an object-oriented, which provides the user the powerful tool for structuring and reuse. VI. Larch Larch is an ongoing project at MIT‘s laboratory for Computer Science and DEC‘s system Research Centre. Basically it support a two tired specification, each of which has two component written in two language named as LIL( Larch Interface Language) and the other one is LSL ( Larch Shared Language ). LIL [7, 8] is designed for a specific programming language. It is used to describe the observable behavior of the component and is language dependent. VII. Comparison Here we are trying to describe the differences in specification languages by the means of the following parameters: Process-oriented – These are designed to describe concurrent networks of communicating component‘s behaviors, and since most of the language describe system in term of process, so it is called as process-oriented. Sequential-oriented – It provide the appropriate way to describe the input-output behavior of sequential system. Model-oriented – The language which fall in this category provide an abstract model of system and the operation are specified by either state change or by event affect the model. Property-oriented – These focus on the property desired by the system being specified and on data type instead of services/ functions that the system provides. Mathematics used—Algebra, logic, set theory. All the specification languages discussed here differ in the following: Z–sequential-oriented, property-oriented, uses set theory and logic. VDM–process-oriented, model-oriented, uses the set theory and logics. Larch – sequential-oriented, property-oriented, and uses algebra and logics SDL-process-oriented, property-oriented OCL—model-oriented, sequential-oriented, and uses set theory and logic. VIII. Conclusion The use of Formal specification language in software development process do not force you to invest a significant cost or time overhead across the entire development, rather it is helpful for understanding the system being developed and preventing error from being propagated through the early stage of lifecycle to the later one. References [1]. Nix, C.J. and Collins, B.P. ―The use of Software Engineering, including the Z notation, in development of CICS.‖1988 [2]. Spivey, J.M.. The Z Notation: A reference manual. Prentice- Hall, 1989. [3]. Warmer, J., and A. Kleppe. Object Constraint Language, Addis ion- Wesley 1998. [4]. C. B. Jones, Systematic Software Development using VDM, 2nd ed. Englewood Cliffs, PH, NJ:, 19190. [5]. M. Jackson, ―Description is our business,‖ in VDM ‗91: Formal Soft.Dev. Methods. New York: Springer-Verlag, LNCS-551, pp. 1- 9. [6]. Software Development using Specification and Description Language- Real time, Sharath Gopalappa. [7]. J. Guttag and J. Horning, Larch: Languages and Tools for Formal Specification, Springer-Verlag; 1993. [8]. Cooke, D., and Gates, A., ―Language for the Specification of Software,‖ Journal of System Software, 1996, pp 269-307.