Databases Reference
In-Depth Information
by Computer Associates the tools have been renamed into Advantage Gen, Advantage Joe,
etc. (Computer Associates, 2003).
Catalysis is a methodology for modeling and constructing open systems from objects,
components and frameworks. Catalysis is mostly a development process, which means that
its main purpose is to provide software construction from high-level requirements. Unlike
RUP, Catalysis does not cover project management, process measures, tests, and team-task
management. Although the details of Catalysis are somewhat complex, the approach is based
on a small number of underlying concepts such as types, conformance, collaborations and
frameworks, used throughout the approach. Catalysis component development approach
encourages a strong separation of component specifi cation from implementation, using
an extended form of UML. This allows technology-neutral specifi cations to be developed
and then refi ned into implementation in a number of different implementation technolo-
gies. Although Catalysis covers the complete system lifecycle, “from business to code”,
the component concept is visible at the implementation level. It defi nes a component as a
“coherent package of software artifacts that can be independently developed and delivered,
as well as be composed and extended to build something larger”. Higher-level support for
the component concept is provided by the concept type, as a stereotype of a class. The type
is defi ned as a representation of some consistent behavior in the domain, while a class is an
implementation of the type. External behavior of the type is defi ned by its interface, which
is mapped to class operations. Refi nements from abstract to more detailed descriptions of a
system are recorded by capturing conformance between types. The interactions among types
are modeled as collaborations. This captures a set of actions involving multiple, typed objects
playing defi ned roles with respect to each other. A package is a larger-grained development
concept, and acts as the basic unit of a development product that can be separately created,
maintained, delivered, updated, assigned to a team, and generally managed as a unit. The
Catalysis approach is not a rigorous methodology. It is rather a semi-structured set of design
principles, advises and patterns throughout the system development life cycle. Therefore, a
systematic “roadmap” of the Catalysis way is lacking. The whole method tends to be vague,
with possible diffi culties for applying it in practice. However, Catalysis represents an excel-
lent foundation for supporting various CBD concepts, principles and techniques.
KobrA
KobrA is a software development method that uses and supports the component para-
digm in all phases of the software life cycle, following the product-line strategy (Atkinson
et al., 2002). It has developed as a result of the KobrA project from 1999 to 2001, funded
by the German government, and led by Softlab GmbH, Psipenta GmbH, GMD-FIRST and
Fraunhofer IESE. The KobrA approach is infl uenced by other leading software development
methods, such as Fusion (Coleman et al., 1993) and Catalysis (D'Souza & Wills, 1999). It is
also compatible with the Rational Unifi ed Process (Jacobson et al., 1999) and OPEN (Graham,
Henderson-Sellers & Younessi, 1997) process frameworks. The method is documented in
the dedicated topic (Atkinson et al., 2002), scientifi c papers, and companion reports. The
method is well equipped to support practical software engineering projects and supported
by Softlab's specially developed workbench based on the Enabler repository family. This
workbench allows organizations utilizing the KobrA method to assemble their own preferred
suite of tools to support KobrA development.
Search WWH ::




Custom Search