DocumentCode
1706201
Title
Specification of design patterns using real-time process algebra (RTPA)
Author
Nguyen-Cong, Vu ; Wang, Yingxu
Author_Institution
Dept. of Comput. Sci. & Software Eng., Nong Lam Univ., Ho Chi Minh City, Vietnam
Volume
3
fYear
2004
Firstpage
1545
Abstract
Real-time process algebra (RTPA) is used to describe design patterns formally and explicitly in order to enhance the understandability of their semantics and to facilitate the development of support tools. Design patterns can be specified formally in RTPA by three parts known as the architecture, static and dynamic behaviors. At the architectural level, components and their relations are described. Then the components are refined further to have their own architecture and behaviors. By using this specification process, a pattern is refined from its conceptual model to detailed architectures and behaviors. The formal description of patterns in RTPA extends the visual and textual representations, and allows developers to comprehend the usage of a pattern and to implement it by any programming language without ambiguity. In this paper, the Observer and Abstract Factory patterns are chosen for our case studies to illustrate the expressive power of RTPA in specifying design patterns. The formal approach shows that architectures, static and dynamic behaviors of software patterns can be rigorously described by RTPA. Relationships between the formal and informal models of design patterns are comparatively analyzed. The method developed in this paper can be applied to the existing and/or future design patterns in software engineering.
Keywords
formal specification; object-oriented programming; process algebra; programming language semantics; software architecture; Abstract Factory pattern; Observer pattern; RTPA; component architecture; design pattern specification; formal description; real-time process algebra; semantics; support tools; textual representation; understandability; visual representation; Algebra; Cities and towns; Computer architecture; Computer languages; Computer science; Drives; Object oriented modeling; Real time systems; Software design; Software engineering;
fLanguage
English
Publisher
ieee
Conference_Titel
Electrical and Computer Engineering, 2004. Canadian Conference on
ISSN
0840-7789
Print_ISBN
0-7803-8253-6
Type
conf
DOI
10.1109/CCECE.2004.1349701
Filename
1349701
Link To Document