![](bg6.png)
the MVC example is instantiated. According to
ADD methods, the Step 6 (define interfaces) and
Step 7 (refine requirements) should be done in an
actual project by meeting different requirements.
3.3 Analysis of the Design Model
This design model presents a clearly layered
structure of connector which fulfils the architectural
drivers by using ADD methods. Each layer is
responsible for dedicated requirements. The
developers can be guided through the process of
design of connector by using the design model.
Compared to other approaches of connector, this
model covers every aspect of connector in
distributed system. For example, in some research
works, network protocols (TCP/IP, P2P etc…) are
regarded as connectors. This misunderstand can lead
developers to only concentrate on the functionality
of transport, neglecting to study and design the
relationship of components.
Relationship is the core of the model. When
using this model, developers must put a lot of effort
into the relationship of the components. To simplify
the analysis of relationship, the pattern approach
(design pattern by using AOP) is applied to the
design of connector in distributed system.
Messaging system and other transport mechanisms
are designed to ensure that the messages can be
successfully delivered. In our opinion, the
messaging system should be situated in transport
layer of this model, even though some of messaging
systems have the function of description of
independency of components.
4 CONCLUSIONS
This paper discusses a design model of connectors in
distributed architecture. We mainly concentrate on
the design problems of connectors: how to gain the
benefit from the combination of multiple
technologies (design pattern, AOP, MOM and
network protocol) for satisfying the functional
requirements and achieving quality attribute. To
resolve the problems, we propose a general design
model for design of connector in distributed
architecture based on ADD method. And then we
give an example of distributed MVC architecture for
presenting how to instantiate that model based on
ADD. In that example, our design model enables us
to easily design and develop the connectors for
coherently linking the Views and Modes together
and fulfilling the functional and quality requirements
of connectors.
The presented approach is at an early stage of
development and would certainly merit being more
detailed especially for generalize our model to
facilitate the maintenance and reduce the cost of
distributed applications.
ACKNOWLEDGEMENTS
This work was sponsored by the University of
Quebec at Chicoutimi (Quebec), and by NSERC
(Canada).
REFERENCES
Bass, L., Clements, P. & Kazman, R., 2003. Software
Architecture in Practice, Addison-Wesley, Second
Edition.
Qiu, X., 2005. Message-based MVC Architecture for
Distributed and Desktop Applications. Syracuse
University PhD.
Elrad, T., Filman, R. E. & Bader, A., 2001. Aspect-
oriented programming: Introduction. Magazine
Communications of the ACM Volume 44 Issue 10,
Oct. 2001 ACM New York, NY, USA.
Wojcik, R., Bachmann, F., Bass, L., Clements, P., Merson
P., Nord R. and Wood, B., 2006. Attribute-Driven
Design (ADD), Version 2.0. TECHNICAL REPORT,
CMU/SEI-2006-TR-023, ESC-TR-2006-023.
OMG (Object Management Group), 2004. The Common
Object Request Broker: Architecture and
Specification, Version 3.0.3.
Pryce, N. G., 2000. Component Interaction in Distributed
Systems. PhD Thesis. Imperial College of Science,
Technology and Medicine.
Hohpe, G. & Woolf, B., 2004. Enterprise Integration
Patterns: Designing, Building, and Deploying
Messaging Solutions. Addison-Wesley.
Gamma, E., Johnson, R., Vlissides, J. & Helm, R., 1995.
Design Patterns: Elements of Reusable
Object-Oriented Software. Addison-Wesley.
Cooper, J. W., 2000. Java Design Patterns: A Tutorial.
Addison-Wesley.
Gradecki, J.D. & Lesiecki, N., 2003. Mastering AspectJ:
Aspect-Oriented Programming in Java. Wiley.
Laddad, R., 2003. Aspect J in Action: Practical
Aspect-oriented Programming. Manning.
ICSOFT 2011 - 6th International Conference on Software and Data Technologies
58