modeling tools [6] are relevant as far as Business CoMponents’ specification is
concerned. Each Business CoMponent should be then elaborated with the domain-
imposed requirements, for the purpose of adding elicitation on the particular context
in which its corresponding Business Component exists within the business system.
Then, a mapping towards a software specification model should take place, possibly
driven by the DEMO-UML transformation mechanism [5]. The domain-imposed
requirements as well as the user-defined requirements are to be considered here, since
the derived software model should reflect not only the original business features but
also the particular user demands towards the system-to-be. The (UML-based)
software specification model would need then a precise elaboration so that it provides
sufficient elicitation in terms of structure, dynamics, data, and coordination [3]. The
model needs also to be decomposed into a number of Software CoMponents
reflecting functionality pieces. Then these Software CoMponents are to undergo
realization and implementation, being reflected (in this way) in Software
Components. This final set of components might consist of such components which
are implemented (using software component technologies, such as .NET or EJB, for
instance) based on corresponding Software CoMponents and such components which
are purchased. Finally, the (resulting) component-based application would support the
target business system, by automating anything that concerns the initially identified
Business Component(s) identified from the mentioned system.
Other Traditional Methods. The challenge of capturing the essential aspects about
business processes for the purpose of further software specification, has been
addressed not only by the SDBC approach but also by methods such as Catalysis [7]
and Tropos [8] as well as by the Model Driven Architecture – MDA [9].
The Catalysis method provides a coherent set of techniques for business analysis and
system development as well as well-defined consistency rules across models.
However, these techniques concern the software design perspective and have no
theoretical roots relevant to the modeling of business processes. Hence, the business
process modeling as conducted in Catalysis would inevitably be superficial and
therefore the method cannot guarantee an adequate capturing of all related real-life
aspects, including semantic and pragmatic ones. In addition to this, Catalysis does not
have mechanisms for a mapping between business process models and software
specification models. Therefore, a definite strength (in this regard) of SDBC is that,
relying on the LAP-OS ‘combination’, the approach supports adequately the business
process modeling task and the software design activities in SDBC stem from a pure
business process model, guaranteeing that the application-to-be would function
adequately in the business environment in which it would have to be integrated.
The strengths of the method Tropos relate to its capability of conducting a sound
requirements analysis, considering the business processes which are to be supported
by the application-to-be. From such a business process modeling point of view, the
method addresses the software design. The mentioned requirements analysis includes
elicitation not only of the ‘early requirements’ that concern the original business
reality but also of the ‘late requirements’ which are about a corresponding updated
(desired) business reality. The analysis is driven by a thorough consideration of the
intentions of stakeholders, modeled as goals which are then reflected in the system’s
global architecture. Its definition is in terms of sub-systems interconnected through
data, control, and other dependencies. Then a detailed design follows. Therefore, all
39