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
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;
Conference_Titel :
Electrical and Computer Engineering, 2004. Canadian Conference on
Print_ISBN :
0-7803-8253-6
DOI :
10.1109/CCECE.2004.1349701