models and languages (where automation can save
time and prevent human error). However, since de-
sign is a creative process, manual input from the de-
signer/developer almost always remains necessary in
any design step.
Looking at step 1 of our process, we see the first
need for human intervention: deciding and selecting
which parts of the well-being domain are to be cov-
ered by the application under development can not be
done automatically. We can support the designers by
aiding the selection process, making sure the set of
selected elements is as complete as possible, but the
final decision in this step has to be made by humans.
In order to complete step 2, we have to translate
between two modeling languages, requiring a map-
ping between the two. Because of the structuring
of context-aware applications, we an predict which
variables from the application specific model are to
be mapped to which application structure model el-
ement: observable variables are modeled as sensors,
deducible variables are part of the data interpretation
of the application, and the controllable variables are
mapped onto actuators. As we can see, most of this
step can be performed automatically.
Because we are dealing with the behavior of the
application in step 3, we will require human interven-
tion again. It will be possible to deduce part of the
reasoning to be done by the application, this can be
deduced from the causal links in our application spe-
cific model. However, how these actions are to be
planned and in what way they are to be shown to the
user requires human creativity.
The final step in our process, the creation of the
prototype, can only be supported by the automatic
generation of code based on the models created in
steps 2 and 3. User interface design and implemen-
tation can not be performed automatically. However,
the development can be aided by the domain- and ap-
plication specific models: they allow engineers to rea-
son about behavior, making it easier to implement the
needed actions the application is to present.
In this paper we havenot discussed aspects such as
the conceptualization of sensor data, the way condi-
tions can be quantified or how the capturing and stor-
age of large data volumes should be handled by the
application. We consider these aspects to be specific
for the application under development and as such
not generalizable for the development process of all
context-aware well-being applications.
5 RELATED WORK
With smartphones containing an increasing number
of sensors, the development of “apps” that advise the
user on medical subjects has rapidly increased. How-
ever, as any developer, regardless of their medical
background and expertise, can create such a smart-
phone application. The users of this app expect it
to work properly and provide the right information,
but this is not always the case. As a response to this
problem, the European Union and the United States
of America havedeveloped certification and programs
for medical apps (European Commission, 2013; U.S.
Department of Health and Human Services Food and
Drug Administration et al., 2013). Applications that
do not use measurements or provide medical treat-
ment, e.g. the issuing of medication, would not re-
quire certification. However, those that do utilize sen-
sors to obtain the user’s vitals are to be subjected for
testing.
(Jorgensen and Bossen, 2003) discuss a method
of performing requirements engineering for pervasive
health care systems. Even more so than with well-
being applications, the correct working of these sys-
tems is crucial, the treatment of patients depending
on them. The authors propose a three-tier approach to
creating and using executable use cases, going from
prose, to executable models, and finally to an ani-
mated example the user can interact with. The main
difference with our type of application, is that the per-
vasive systems looked at by the authors have a fixed
context, a hospital, in which the users move around.
This is unlike our application, in which the user is the
only constant of the system context, with the environ-
ment continuously changing.
In (Maiden et al., 2004), the authors describe
a model driven approach called RESCUE that inte-
grates 4 modeling techniques in order to obtain a set
of requirements that is as complete as possible. The
four techniques that are integrated are activity mod-
eling, system goal modeling (which is performed in
the i
∗
language), use case modeling and requirements
management. Using model transformations, the au-
thors synchronize the data captured in each of these
models in order to keep them consistent. When com-
paring this work to our own, we primarily identify the
difference between the domains: our systems oper-
ate in highly dynamic, changing environments, while
the system the authors of RESCUE looked at are
predominantly static, allowing for more complete re-
quirements elicitation. The use of different angels to
look at the same problem in order to obtain a more
complete picture is, however, an interesting approach
which may be a direction for future work.
SENSORNETS2014-InternationalConferenceonSensorNetworks
402