Modeling of distributed objects computing design pattern combinations using a formal specification language

Toufik Taibi; David Ngo

International Journal of Applied Mathematics and Computer Science (2003)

  • Volume: 13, Issue: 2, page 239-253
  • ISSN: 1641-876X

Abstract

top
Design patterns help us to respond to the challenges faced while developing Distributed Object Computing (DOC) applications by shifting developers' focus to high-level design concerns, rather than platform specific details. However, due to the inherent ambiguity of the existing textual and graphical descriptions of the design patterns, users are faced with difficulties in understanding when and how to use them. Since design patterns are seldom used in isolation but are usually combined to solve complex problems, the above-mentioned difficulties have even worsened. The formal specification of design patterns and their combination is not meant to replace the existing means of describing patterns, but to complement them in order to achieve accuracy and to allow rigorous reasoning about them. The main problem of the existing formal specification languages for design patterns is the lack of completeness. This is mainly because they tend to focus on specifying either the structural or behavioral aspects of design patterns but not both of them. Moreover, none of them even ventured in specifying DOC patterns and pattern combinations. We propose a simple yet Balanced Pattern Specification Language (BPSL) aimed to achieve equilibrium by specifying both the aspects of design patterns. The language combines two subsets of logic: one from the First-Order Logic (FOL) and the other from the Temporal Logic of Actions (TLA).

How to cite

top

Taibi, Toufik, and Ngo, David. "Modeling of distributed objects computing design pattern combinations using a formal specification language." International Journal of Applied Mathematics and Computer Science 13.2 (2003): 239-253. <http://eudml.org/doc/207640>.

@article{Taibi2003,
abstract = {Design patterns help us to respond to the challenges faced while developing Distributed Object Computing (DOC) applications by shifting developers' focus to high-level design concerns, rather than platform specific details. However, due to the inherent ambiguity of the existing textual and graphical descriptions of the design patterns, users are faced with difficulties in understanding when and how to use them. Since design patterns are seldom used in isolation but are usually combined to solve complex problems, the above-mentioned difficulties have even worsened. The formal specification of design patterns and their combination is not meant to replace the existing means of describing patterns, but to complement them in order to achieve accuracy and to allow rigorous reasoning about them. The main problem of the existing formal specification languages for design patterns is the lack of completeness. This is mainly because they tend to focus on specifying either the structural or behavioral aspects of design patterns but not both of them. Moreover, none of them even ventured in specifying DOC patterns and pattern combinations. We propose a simple yet Balanced Pattern Specification Language (BPSL) aimed to achieve equilibrium by specifying both the aspects of design patterns. The language combines two subsets of logic: one from the First-Order Logic (FOL) and the other from the Temporal Logic of Actions (TLA).},
author = {Taibi, Toufik, Ngo, David},
journal = {International Journal of Applied Mathematics and Computer Science},
keywords = {substitution; First-Order Logic (FOL); Temporal Logic of Actions (TLA); elimination; addition; Balanced Pattern Specification Language (BPSL); balanced pattern specification language},
language = {eng},
number = {2},
pages = {239-253},
title = {Modeling of distributed objects computing design pattern combinations using a formal specification language},
url = {http://eudml.org/doc/207640},
volume = {13},
year = {2003},
}

TY - JOUR
AU - Taibi, Toufik
AU - Ngo, David
TI - Modeling of distributed objects computing design pattern combinations using a formal specification language
JO - International Journal of Applied Mathematics and Computer Science
PY - 2003
VL - 13
IS - 2
SP - 239
EP - 253
AB - Design patterns help us to respond to the challenges faced while developing Distributed Object Computing (DOC) applications by shifting developers' focus to high-level design concerns, rather than platform specific details. However, due to the inherent ambiguity of the existing textual and graphical descriptions of the design patterns, users are faced with difficulties in understanding when and how to use them. Since design patterns are seldom used in isolation but are usually combined to solve complex problems, the above-mentioned difficulties have even worsened. The formal specification of design patterns and their combination is not meant to replace the existing means of describing patterns, but to complement them in order to achieve accuracy and to allow rigorous reasoning about them. The main problem of the existing formal specification languages for design patterns is the lack of completeness. This is mainly because they tend to focus on specifying either the structural or behavioral aspects of design patterns but not both of them. Moreover, none of them even ventured in specifying DOC patterns and pattern combinations. We propose a simple yet Balanced Pattern Specification Language (BPSL) aimed to achieve equilibrium by specifying both the aspects of design patterns. The language combines two subsets of logic: one from the First-Order Logic (FOL) and the other from the Temporal Logic of Actions (TLA).
LA - eng
KW - substitution; First-Order Logic (FOL); Temporal Logic of Actions (TLA); elimination; addition; Balanced Pattern Specification Language (BPSL); balanced pattern specification language
UR - http://eudml.org/doc/207640
ER -

References

top
  1. Abadi M. and Lamport L. (1993): Composing specifications. - ACM Trans. Programm. Lang. Syst., Vol. 15, No. 1, pp. 73-132. 
  2. Back R.J.R. and Kurki-Suonio R. (1988): Distributed cooperation with action systems. - ACM Trans. Programm. Lang. Syst., Vol. 10, pp. 513-554. Zbl0663.68028
  3. Cheesman J. and Daniels J. (2000): UML Components: A Simple Process for Specifying Component-Based Software. - Reading, MA: Addison-Wesley. 
  4. Chinnasamy S., Raje R.R. and Liu Z. (1999): Specification of design patterns: An Analysis. - Proc. 7th Int. Conf. Advanced Computing and Communications, ADCOM'99, Roorkee, India, pp. 300-400. 
  5. Dong J., Alencar P.S.C. and Cowan D.D. (2000): Ensuring structure and behavior correctness in design composition. - Proc. 7th IEEE Int. Conf. Workshop on the Engineering of Computer Based Systems, Edinburgh, Scotland, pp. 279-287. 
  6. D'Souza D.F and Wills A.L (1998): Objects, Components, and Frameworks With UML: The Catalysis Approach. - Reading, MA: Addison-Wesley. 
  7. Eden A.H. and Hirshfeld Y. (1999): LePUS-Symbolic Logic Modeling of Object Oriented Architectures: A Case Study. - Proc. 2nd Nordic Workshop Software Architecture, NOSA'99, Ronneby, Sweden. 
  8. Eden A.H. and Hirshfeld Y. (2001): Principles in formal specification of object-oriented architectures. - Proc. IBM Center for Advanced StudiesConference, CASCON'2001, Toronto, Canada. 
  9. Gamma E., Helm R., Johnson R. and Vlissides J. (1995): Design Patterns: Elements of Reusable Object-Oriented Systems. - Reading, MA: Addison-Wesley. Zbl0887.68013
  10. Helm, R., Holland, I.M. and Gangopadhyay D. (1990): Contracts: Specifying behavioral compositions in object-oriented systems. - Proc. ECOOPOOPSLA'90, Ottawa, Canada, pp. 169-180 
  11. ISO 8807 (1989): Information Processing Systems, Open Systems Interconnection-LOTOS-. - A Formal Description Technique based on the Temporal Ordering of Observational Behavior. 
  12. Lamport L. (1994): The temporal logic of actions. - ACM Trans. Programm. Lang. Syst., Vol. 16, No. 3, pp. 872-923. 
  13. Lauder A. and Kent S.(1998): Precise visual specification of design patterns. - Proc. Europ. Conf. Object-Oriented Programming, ECOOP98, Brussela, Belgium, pp. 114-134. 
  14. Mikkonen T. (1998): Formalizing design patterns. - Proc. Int. Conf.s Software Engineering, ICSE'98, Kyoto, Japan, pp.115-124. 
  15. Rambaugh J., Jacobson I. and Booch G. (1998): The Unified Modeling Language Reference Manual. - Reading, MA: Addison-Wesley. 
  16. Saeki M. (2000): Behavioral Specification of GOF Design Patterns with LOTOS. - Proc. IEEE Asia Pacific Software Engineering Conference, APSEC'2000, Singapore, pp. 408-415. 
  17. Schmidt D.C., Stal M., Rohnert H. and Buschmann F. (2000): Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects. - New York: Wiley. Zbl1001.68025
  18. Taibi T. and Ngo D.C.L (2001): Why and how should patterns be formalized. -J. Object-Oriented Programm., Vol. 14, No. 4, pp. 8-9, 101 communications. 
  19. Taibi T. and Ngo D.C.L (2002): Formal specification of design patterns-A comparison. - Tech. Rep., Faculty of Information Technology, Multimedia University. 
  20. Taibi T. and Ngo D.C.L (2003): Formal specification of design pattern-A balanced approach. - J. Object Technol., Vol. 2, No. 2, pp. 127-140. 
  21. Vlissides J.M. (1997a): Multicast. - C++ Report, Sep. 97, SIGS Publications. 
  22. Vlissides J.M. (1997b): Multicast - Observer = Typed Message. - C++ Report, Nov.-Dec. 97, SIGS Publications. 

NotesEmbed ?

top

You must be logged in to post comments.

To embed these notes on your page include the following JavaScript code on your page where you want the notes to appear.

Only the controls for the widget will be shown in your chosen language. Notes will be shown in their authored language.

Tells the widget how many notes to show per page. You can cycle through additional notes using the next and previous controls.

    
                

Note: Best practice suggests putting the JavaScript code just before the closing </body> tag.