<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>SecTro: A CASE Tool for Modelling Security in Requirements Engineering using Secure Tropos</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Michalis Pavlidis</string-name>
          <email>m.pavlidis@ieee.org</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Shareeful Islam</string-name>
          <email>shareeful@uel.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>School of Computing, IT and Engineering, University of East London</institution>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <fpage>89</fpage>
      <lpage>96</lpage>
      <abstract>
        <p>Secure Tropos is an extension of Tropos methodology, which considers security throughout the whole development process. The main concept of Secure Tropos is the security constraint that captures constraints regarding security. Similarly, the concepts of dependency, goal, task, resource, and capability were also extended with security in mind. In this paper we present the SecTro tool, a CASE tool that guides and supports the developers in the construction of the appropriate models of Secure Tropos.</p>
      </abstract>
      <kwd-group>
        <kwd>Security</kwd>
        <kwd>goal modelling</kwd>
        <kwd>requirements engineering</kwd>
        <kwd>Secure Tropos</kwd>
        <kwd>CASE tools</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        As the use of information systems is increasing rapidly everyday in finance,
military, education, health care, and transportation, the need of security is increasing
respectively. The stored information in many cases is sensitive and has to be secured
by protecting it from any attack. In other words, there should be cost effective and
operationally effective protection from undesirable events [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        It is already agreed by the industry and research community, that security has to be
considered from the early phases of the software development process [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Having
defined the security requirements along with the functional requirements will enable
the better comprehension of the system’s security issues and limit the conflicts
between the security and functional requirements for more secure information
systems [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        Secure Tropos is a security requirements engineering methodology that considers
security throughout the whole development process [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The approach identifies,
models and analyses the security issues from the early stages of software development
within the organization and social settings [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. But, the fact that it considers security
from the early stages of software development, results in a serious increase of the
activities in the software development stages and therefore requires the existence of a
software tool to support the development process [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. This paper demonstrates a tool,
named SecTro, which assists the security analysts in constructing the relevant Secure
Tropos diagrams that are required in order to identify, model and analyze the security
issues.
      </p>
      <p>The rest of the paper is structured as follows. Section 2 is a review on Secure
Tropos. Section 3 illustrates the tool that supports Secure Tropos. Section 4 discusses
the related work while section 5 concludes the paper and presents future work.</p>
    </sec>
    <sec id="sec-2">
      <title>2 Secure Tropos Methodology</title>
      <p>
        Secure Tropos is an extension of Tropos methodology that takes security into
account and is based on the concept of security constraint. Also, the Tropos concepts
of dependency, goal, task, resource, and capability were also extended with security
in mind and formed the secure entities [
        <xref ref-type="bibr" rid="ref1 ref3">1, 3</xref>
        ]. Secure Tropos includes the following
modelling activities, the security reference modelling, the security constraint
modelling, the secure entities modelling, and the secure capability modelling. In
addition, it consists of four stages, the early requirements, the late requirements, the
architectural design, and the detailed design stages. The metamodel of Secure Tropos
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] is shown in Fig. 1 and for a more detailed description of Secure Tropos please
refer to [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3 The SecTro Tool</title>
      <sec id="sec-3-1">
        <title>3.1. SecTro Architecture</title>
        <p>SecTro is a standalone application that was built with the Java programming
language making it a portable application across different platforms. The package
diagram is shown in Fig. 2 and descriptions of the packages are given in Table 1. The
class diagram of the classes that are responsible for the drawing functionality of the
tool is shown in Fig. 3. In the ElementType class belong all the elements that can be
drawn, such as an actor and a hard goal, and in the LinkType class belong all the links
between the elements, such as the “plays” link and the “satisfies” link. The class
diagram of the graphical user interface (GUI) package is shown in Fig. 4.</p>
        <p>Package
sectro
sectro.drawing
sectro.drawing.elements
sectro.drawing.links
sectro.gui
sectro.util</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. SecTro Layout and Functionalities</title>
        <p>SecTro’s workspace (Fig. 5) consists of the drawing canvas in the centre, on the
top there is a series of tabs for showing the developed diagrams for each stage of
Secure Tropos, the project explorer and the properties panel are on the right side, the
toolbox (Fig. 6) is on the left side, and the SecTro assistant at the bottom of the
workspace. The graphical representations of all the concepts of Secure Tropos by the
SecTro tool are shown in Fig. 7 and the graphical representation of the secure
dependency is shown in Fig. 8.</p>
        <p>The main functionalities of the SecTro are to support the developer in the
modelling activities of Secure Tropos. Therefore, the tool enables the developer to
perform security reference modelling (Fig. 9), security constraint modelling (Fig. 10),
secure entities modelling (Fig. 11), and secure capability modelling. During these
activities the tool has a mechanism for checking the rules and constraints and informs
the developer for any error. Also, the SecTro assistant panel shows more information
about the rules and constrains, the concepts and the meta-models. In this way it assists
the developer in the learning process of Secure Tropos methodology. Furthermore, the
tool enables the developer to export the diagrams as images and in XML format.</p>
        <p>Fig. 11. Secure entities modelling.</p>
        <p>
          During the architectural design the architecture of the system is defined. The tool
can automatically generate the architecture style and the system decomposition.
However, the activities of the architectural design can be a very difficult task for a
developer without knowledge of security. Finally, in most cases, during the end of the
architectural design the security attack testing takes places, where the design of the
system is tested against the security requirements [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. The tool automatically
generates for the developer the security attack scenario template and the security test
case template.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4 Related Work</title>
      <p>
        Although Secure Tropos is still in research and it is difficult to develop a CASE
tool for a methodology that is still in research, the i* modelling framework has been
out for some years and a number of related CASE tools were developed to support it.
OME [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], OpenOME [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], REDEPEND-REACT [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], TAOM4e [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], GR-Tool [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ],
TTool [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], ST-Tool [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], J-PRiM [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], jUCMNav [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], SNet Tool [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], and
DesCARTES [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] are some examples of such tools.
      </p>
      <p>The aforementioned tools, although they were developed for different ultimate
purposes, they all provide support for the i* modelling framework, which is the
modelling framework that was adopted by Secure Tropos as well. But, Secure Tropos
introduces new concepts that none of the previous tools enables their graphical
representation, i.e. security constraint, secure goal, secure plan, secure resource, and
secure capability. Also, the previous tools don’t provide support for the modelling
activities that Secure Tropos introduces, i.e. security constraint modelling, secure
entities modelling, and secure capability modelling. So, despite the fact that
experienced users with Secure Tropos can make conventions and use the previous
tools to construct single diagrams; these tools are not adequate to support the Secure
Tropos methodology.</p>
    </sec>
    <sec id="sec-5">
      <title>5 Conclusions and Future Work</title>
      <p>The tool supports the developers in the modelling activities of the early and late
requirements and architectural design stages of Secure Tropos by assisting them in the
construction of the relevant concepts and models that are required during the new
modelling activities. Its user-friendly interface makes it easy to use and assists
security analysts who are not familiar with the methodology, by providing them with
information about the methodology concepts, stages, and metamodels. Also, it
enforces rules and constraints and provides valuable feedback on various actions of
the developers in an interactive way. The tool has already been used by the students
of university of East London to model and analyse security issues of a real industry
case study. However, the tool does not support the modelling activities of the detailed
design stage and we consider this as future work. In addition, future work includes the
extension of the XML Schema in order to validate more models of the methodology.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Mouratidis</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Secure Tropos: A Security-Oriented Extension of the Tropos Methodology</article-title>
          .
          <source>International Journal of Software Engineering and Knowledge Engineering</source>
          <volume>17</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>285</fpage>
          -
          <lpage>309</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Mouratidis</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Integrating Security and Software Engineering: Future Vision and Challenges</article-title>
          . In: Mouratidis,
          <string-name>
            <given-names>H.</given-names>
            ,
            <surname>Giorgini</surname>
          </string-name>
          , P. (eds.) Integrating Security and Software Engineering: Advances and
          <string-name>
            <given-names>Future</given-names>
            <surname>Visions</surname>
          </string-name>
          . Idea Group Publishing, London (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mouratidis</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zannone</surname>
          </string-name>
          , N.:
          <article-title>Modelling Security and Trust with Secure Tropos</article-title>
          . In: Mouratidis,
          <string-name>
            <given-names>H.</given-names>
            ,
            <surname>Giorgini</surname>
          </string-name>
          , P. (eds.) Integrating Security and Software Engineering: Advances and
          <string-name>
            <given-names>Future</given-names>
            <surname>Visions</surname>
          </string-name>
          . Idea Group Publishing, London (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Matulevicious</surname>
          </string-name>
          , R.:
          <source>Summary of Secure Tropos Metamodel. Internal Report</source>
          , University of Namur (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Mouratidis</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Security Attack Testing (SAT</surname>
          </string-name>
          )
          <article-title>- Testing the Security of Information Systems at Design Time</article-title>
          .
          <source>Journal of Information Systems 32</source>
          , pp.
          <fpage>1166</fpage>
          -
          <lpage>1183</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>6. OME3, http://www.cs.toronto.edu/km/ome/</mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>7. OpenOME, https://se.cs.toronto.edu/trac/ome/</mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maiden</surname>
          </string-name>
          , N.:
          <string-name>
            <surname>REDEPEND-REACT</surname>
          </string-name>
          :
          <article-title>An Architecture Analysis Tool</article-title>
          . In: 13th IEEE International Conference on Requirements Engineering, pp.
          <fpage>455</fpage>
          -
          <lpage>456</lpage>
          . Paris (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Morandini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nguyen</surname>
            ,
            <given-names>C.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Siena</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Susi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Tool-supported Development with Tropos: The Conference Management System Case Study</article-title>
          . In: Luck,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Padgham</surname>
          </string-name>
          ,
          <string-name>
            <surname>L. (eds.) AOSE</surname>
          </string-name>
          <year>2007</year>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>4951</volume>
          , pp.
          <fpage>182</fpage>
          -
          <lpage>196</lpage>
          , Springer, Heidelberg (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sebastiani</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Goal-Oriented Requirements Analysis and Reasoning in Tropos Methodology</article-title>
          .
          <source>Journal of Engineering Applications of Artificial Intelligence</source>
          <volume>18</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>159</fpage>
          -
          <lpage>171</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Massaci</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zanone</surname>
          </string-name>
          , N.:
          <article-title>Computer-Aided Support for Secure Tropos</article-title>
          .
          <source>Journal of Automated Software Engineering</source>
          <volume>14</volume>
          (
          <issue>2</issue>
          ),
          <fpage>341</fpage>
          -
          <lpage>364</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Grau</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franch</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Avila</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <string-name>
            <surname>J-PRiM</surname>
          </string-name>
          :
          <article-title>A Java Tool for a Process Reengineering i* Methodology</article-title>
          .
          <source>In: 14th IEEE International Conference on Requirements Engineering</source>
          , pp.
          <fpage>359</fpage>
          -
          <lpage>360</lpage>
          .
          <string-name>
            <surname>Minneapolis</surname>
          </string-name>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Mussbacher</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Amyot</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Assessing the Applicability of Use Case Maps for Business Process and Workflow Description</article-title>
          . In: 2008
          <source>International MCETECH Conference on eTechnologies</source>
          , pp.
          <fpage>219</fpage>
          -
          <lpage>222</lpage>
          . Montreal (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Gans</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lakemeyer</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jarke</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vits</surname>
          </string-name>
          , T.:
          <article-title>SNet: A Modeling and Simulation Environment for Agent Networks Based on i* and ConGolog</article-title>
          .
          <source>In: Proceedings of the 14th International Conference on Advanced Information Systems Engineering</source>
          , pp.
          <fpage>328</fpage>
          -
          <lpage>323</lpage>
          (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>15. UCL/ISYS - DesCARTES Architect, http://www.isys.ucl.ac.be/descartes/index.php</mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>