Moreover, in Secure Tropos, the precise definition of how a secure goal can be
achieved is given by a secure plan, which is defined as a particular way for satisfying
a secure goal. Usually, a secure plan or goal needs a secure resource, which is an
informational entity that is needed for the achievement of a secure goal or the
fulfilment of a secure plan. Therefore, these entities of Secure Tropos (security
constraint, secure plan, secure resource) could be variants of a SPL because they are
related to goals and secure goals which are variations of a SPL, so that they are
modeled by means of a variability dependency relationship between them and an
actor.
We have also had to adapt the concept of actor of Secure Tropos, so that during
Application Engineering the different products/applications instantiated from the SPL
are modeled as actors that inherit from the SPL-actor.
A second challenge was to integrate the two main activities related to
requirements engineering in SPL engineering with Secure Tropos Process. According
to the definitions of these activities, and taking into account the development stages of
Secure Tropos, we have integrated the Domain Requirements Engineering activity in
both the Early and Late requirements phases, and the Application Requirements
Engineering activity only in the Late requirements phase. That is, for the development
of a SPL during the Domain Requirements Engineering activity we will carry out
Early and Late requirements phases analyses, initially by defining and understanding
the SPL settings and then by defining the SPL-to-be in the context of its operational
environment (modeling common, alternative and optional entities). While for the
instantiation of the products/applications of the SPL during the Application
Requirements Engineering activity we will inherit the early requirements from the
SPL completely. Thus, during Application Engineering it will only be needed to carry
out the Late Requirements Engineering activity, because is in this activity that each
instantiated product/application from the SPL is defined, in the context of its
operational environment.
Therefore, through the above discussed alignments and adaptations of concepts as
well as the extensions of the two of the Secure Tropos diagrams, i.e. Security
Enhanced Actor Diagram (SEAD) and Security Enhanced Goal Diagram (SEGD)
explained in next section, we are able to capture and model security, with Secure
Tropos, the requirements of a SPL along with the variability of their related entities.
2.2 Abstract Syntax Extension
The abstract syntax of Secure Tropos consists of the Secure Tropos metamodel. In
this work we are interested in two sub-parts of the modetamodel related to the
Security Enhanced Actor Model (SEAM) and Security Enhanced Goal Model
(SEGM).
The SEAM defines a set of actors along with their secure dependencies and any
security constraints that might be imposed to these actors. The SEGM assists to
analyse the security issues of a particular Actor by understanding the implications that
Security Constraints, identified in SEAM, have in that particular actor.
The extension to SEAM is shown in Fig. 1. We have added the ‘Variability
Dependency’ relationship, which inherits from ‘Dependency’ and from which ‘Secure
Dependency’ inherits, so that variability of Dependum entities could be modelled.
71