system. However, the architect not always envisions
automating all of them. Thus, the entities to be
automated should be distinguished from the entities
which are not going to be automated, as depicted in
Figure 1 (2). There, ‘(n)cbe’ stands for ‘(non)- to be
– computerized business entities’. The primary
consumer thus has relations not only to entities that
will be automated but also to ones that will not be
automated. These relations are to be restricted by the
imposed requirements (R) which are to be updated
nevertheless by the requirements presented to the
system architect by the future user of the automated
system under development – these requirements are
labelled as user requirements. Both the imposed
requirements and user requirements are reflected in
the overall business requirements, represented as R
I
.
Hence, we arrive at a ‘new business model’ that
might differ from what we associate with the
‘current situation’ not only because we have
introduced more requirements and we have grouped
the system entities but also because the entities from
the ‘current situation’ are not necessarily mapped
one-to-one to the entities in the ‘new business
model’. This is because often introducing software is
not only about efficiency (to replace human(s) by
software), it is also about innovation – the system
architect may wish to consider introducing new
services, re-arranging and/or updating the (observed)
entities and their relations, and so on. Figure 1 (2)
depicts therefore a new model that is only inspired
by the ‘current’ model (Figure 1(1)). Further, the
delimitation and representation of the entities that
are to be automated should be driven not only by
their relation to the primary consumer but also by
their relation(s) to the rest of the entities – those
entities that will not be automated – these ‘interface’
points are represented as black dots in Figure 1(2).
As for the software specification model, it is to be
derived from the new business model, and the
system architect may wish to abstract from the
entities that are not going to be automated –
abstracting from them however means that the future
software system will be adequately ‘accessible’
through the ‘interface points’ above mentioned, this
is what the system architect should take care of
(depicted in Figure 1(3) by the replication of the
black dots). The application model (Figure 1(3))
depicts hence software components (c) and their
relations – all mapped from the cbe entities (see
Figure 1(2)). However, some software components
may be introduced, which have no root in the new
business model, they are represented as black
square(s) – such components are introduced driven
by technical requirements, those requirements that
concern issues, such as platforms and operating
systems to be used, for example. We have thus (in
Figure 1(3)): (i) the application represented, as
consisting of components; (ii) the relation to the
primary consumer to whom the application should
deliver service(s), restricted by corresponding
business and technical requirements; (iii) the
‘interface points’ through which the outsider entities
(different from the primary consumer) can
collaborate with the application.
2.2 Towards Service Orientation and
Context Awareness
An application modeled in the way considered in
Sub-section 2.1, typically should not be expected to
support context-awareness. This is because, as
mentioned in the Introduction, supporting context-
awareness means ‘sensing’ the context of the user
and adapting (on this basis) the delivered behavior.
Such sensing is usually driven by technology – for
example, it is ‘sensed’ that Mary is at home or at
work, by receiving some GPS-related support. Such
kind of ‘support’ goes beyond the application and
concerns a service infrastructure. Further, to manage
context information through the infrastructure, one
would often need sensors, the context data
‘providers’ whose role in supporting CA
applications is very important. This all is illustrated
in Figure 2 and further elaborated.
2
sensor.. .
service
user within
context
application
context management
request
request service
c
c
c
environment
infrastructure
1
application
Figure 2: Towards service orientation and context
awareness.
2.2.1 Towards Service Orientation
As Figure 2 (1) suggests, when an application is
platform-dependent (this means that it runs on top of
a service infrastructure), it realizes some of its
functions not through its components but through
addressing the infrastructure (and receiving some
services from it) – this is depicted through the grey
discs in the figure.
2.2.2 Towards Context Awareness
A platform-dependent application is not necessarily
a context-aware application. To be context-aware, an
ICEIS 2008 - International Conference on Enterprise Information Systems
336