Title :
Object-based modeling of parallel programs
Author :
Gorton, Ian ; Gray, Jonathan P. ; Jelly, Lnnes
Author_Institution :
Div. of Inf. Technol., CSIRO, North Ryde, NSW, Australia
Abstract :
The Parse Project has been investigating software development issues covering a range of parallel applications. Parse itself is an object-based design methodology that incorporates design management strategies based on data and function encapsulation, hierarchical decomposition, and staged refinement. Parse represents parallel software designs with a graphical notation called process graphs. After capturing a design´s important structural features, this notation systematically derives the design´s skeletal dynamic properties. For this, it can use either a behavioral specification language or formal methods such as CSP (Communicating Sequential Processes) or Petri nets. Parse builds on existing parallel software design techniques that are based on dataflow and object-oriented approaches. Parse attempts to capture precise object interactions and synchronization in an abstract, architecture-independent notation. To do so, it combines the strengths of various object-oriented techniques and extends the abilities of real-time design methodologies. The Parse project has tried to promote recognized software engineering techniques and extend them to incorporate high-level abstractions for parallel software design. Using systematic transformation techniques, system designers then can methodically refine their designs into formal notations to promote verification and into programming languages for easy implementation
Keywords :
Petri nets; data encapsulation; data flow computing; data structures; graph theory; object-oriented methods; parallel programming; program verification; software engineering; specification languages; CSP; Parse Project; Petri nets; behavioral specification language; data encapsulation; dataflow approaches; design management strategies; formal methods; function encapsulation; graphical notation; hierarchical decomposition; object-based modeling; object-oriented approaches; parallel applications; parallel programs; parallel software designs; precise object interactions; process graphs; skeletal dynamic properties; software development issues; staged refinement; synchronization; Application software; Computer languages; Design methodology; Encapsulation; Object oriented modeling; Petri nets; Programming; Software design; Software engineering; Specification languages;
Journal_Title :
Parallel & Distributed Technology: Systems & Applications, IEEE