Information Technology Reference
In-Depth Information
cooperation. When the instance is reacti-
vated, the stored information is reused.
4. Termination: When the goal of a community
instance is achieved or the community fails
to achieve its goal, the instance is terminated.
MDA proposes the process of building a high-
level abstraction model should start by obtaining
requirement analysis and then refining the model
until the model directly represents the final system.
In order to apply the MDA approach for developing
a community computing system, we need several
models that abstract a community computing
system from different viewpoints. To develop a
community computing system at first, a developer
forms a CCM (Community Computing Model),
the most high-level abstraction model. A CCM
describes a community computing system in view
of the community by showing how a community
computing system satisfies its requirements with
communities. The generated CCM is transformed
to a CIM-PI (Platform Independent Community
Computing Implementation Model). A CIM-PI
considers implementation of a system without
concern for specific platforms and describes a
community computing system in more detail using
the description of the member types. To describe
implementation based on a specific platform,
CIM-PI is converted to CIM-PS (Platform Specific
Community Computing Implementation Model),
which in turn specifies how a system is able to
run in a particular platform. Using the model
transformation process from a CCM to a CIM-PS,
some portions of the source code are automati-
cally generated, and then the remaining portions
are manually filled by developers. This process
makes development of community computing
fast and systematic. Furthermore, developers
are able to guarantee consistency throughout the
entire development process by using a coherent
metaphor, community.
MDA Based Development Process
In order to implement a community computing
system systematically, we propose a develop-
ment process based on the MDA (Model Driven
Architecture) approach. Prior to explaining the
development process in detail, it is worth to in-
troduce MDA.
In 2001, OMG, the Object Management Group,
proposed a software development approach en-
titled MDA (OMG, 2003). MDA is an approach
to system development that increases the power
of models in that area. It is model-driven because
it provides methods for using models to direct the
course of understanding, design, construction,
deployment, operation, maintenance and modifi-
cation. It attempts to establish the idea of separa-
tion of concern by separating the specification of
the operation of a system from the details of how
system uses its platform. To develop a software
system, MDA specifies three models on differ-
ent viewpoints: CIM, PIM, and PSM. A CIM, or
computation independent model, focuses on the
requirements and environments of a system. It is
independent of how a system is implemented, and
thus it does not specify detail of the structure of
systems. A CIM is used to build a PIM, which is
a platform independent model, and describes the
system but does not specify details of use of its
platform. A PIM is transformed into a PSM, which
is the platform specific model, and specifies how
that system makes use of the chosen platform.
In the final development step, working from the
PSM, the platform-specific source codes such as
interface definitions, application code, makefiles,
and configuration files are generated. Using the
MDA approach, developers are able to expect por-
tability, interoperability and reusability of models.
COMMUNITY COMPUTING MODEL
The community computing model can be distin-
guished by the intelligence level of a community
as shown in Table 1. It is not necessary for ev-
ery community computing system to be highly
intelligent, as some problems can be solved by
Search WWH ::




Custom Search