Professional Documents
Culture Documents
Klock
Notice of Originality
I declare that this paper is my own work and that information derived from pub-
lished or unpublished work of others has been acknowledged in the text and has been
explicitly referred to in the list of references. All citations are in the text between quotation
marks ( ). I am fully aware that violation of these rules can have severe consequences for
my study at Utrecht University.
I. Introduction
This paper discusses the FISA-XP method that is proposed by Sonia, Singhal, and Banati (2014).
FISA-XP aims to integrate security activities with the core activities of Extreme Programming
(XP). This integration is proposed because security activities during the development phase are
becoming increasingly important due to the vast increase of security treats nowadays.
Currently agile software development methods like SCRUM and Extreme Programming (XP)
are very popular. These agile methods provide software developers with the ability to quickly
react to unpredictable changes. This method of software development however conflicts with
security activities. Most security activities require planning in advance and are not very agile.
The method is defined in two phases. Both phases consist of three steps, which will be
described in the next section. The entire method is iterative. After completion of the integration of
an agile activity with a security activity, the integration process will start again from phase II with
the next agile activity.
1
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
de Win, Scandariato, Buyens, Grgoire, & Joosen, 2009). There are several methods available for
the agile activities. The agile activities of XP are used by this method.
The second step is to identify which of the agility features affect the agility of an activity. The
authors propose a group of agility features based on their literature research and their previous
work (Sonia & Singhal, 2012).
The third step orders these features according to their relative importance using a technique
they call WRIAF (Weights describing Relative Importance of Agility Features). This phase results
in a table with the desired agility features and sub-features with their assigned weights.
2
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
II. Example
This section will give an example of applying FISA-XP in the case of a startup that wants to create
a web shop (webshop.com). Webshop.com wants to develop this web shop iteratively using the XP
developing method since their developers are familiar with it. At first they want to create the basic
features and than gradually extend the web shop application. Since the web shop stores payment
details of users and other privacy related details, security of the stored data is important. However
the budget of the startup is limited, which requires them to quickly release their base product.
As stated in the introduction, the startup will use the XP activities as agile activities. Web-
shop.com will use the OWASP CLASP security checklist because it is recommended by the authors
of the method and it saves them time because they can reuse results from the authors.
Planning Activity
Perform security
Identify global
security policy
requirements
environment
analysis of
Desired Agile
Related Attributes
Characteristics
Change in project plans 2 2 2 2 2 4
Changes in team members 2 2 2 2 3 4
Flexibility
Changes to new technology 1 3 2 2 2 4
Changes at any later stage
0 0 1 1 1 4
even in work product
Simplicity 1 0 1 2 2 2
Leanness (L) Quality Improvement 3 2 2 2 2 3
Economical 1 0 1 1 1 2
Documentation
- 0 1 0 1 1 1
Level (DL)
Iterative behaviour 0 0 2 2 2 4
Development Incremental towards
1 1 1 2 2 3
Style (DS) continuous improvement
Rapid execution 1 1 2 2 1 3
Informal 0 0 1 1 1 3
Cross functional ability
1 1 2 3 2 3
Team Structure (Self Organized disciplined teams)
and Behaviour (TS) Competency 1 1 2 2 1 2
Trust level and cooperation 1 1 1 1 1 2
Automation Level (AL) - 1 1 1 2 2 2
Learning & knowledge Continuous training and
2 2 2 1 1 3
development (LK) development of business people
Reusability (R) - 1 1 1 2 2 3
Role of customer i.e. Customer satisfaction 1 1 1 2 3 4
Customer involvement (CI) Customer Interaction
0 0 1 2 1 4
and enrichement
.
Table 1: Modified Preferred Agile Values of CLASP Security Activities and XP Planning activity used for measuring their agility degrees.
Based on the table of Sonia et al. (2014)
3
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
Based on the reuse of the previous components they can also reuse the integration matrix that
was provided by Sonia et al. (2014). Webshop.com however does not agree with the assigned
agility degree of the security activities. The matrix with the assigned agility degrees of the security
activities is modified as can be seen in Table 1. The cells with red text indicate a changed assigned
agility degree. A specification of the operational environment is not considered agile with regards
to changes in the technology used. Since web development is a rapidly evolving area, they consider
it likely that they will use different technologies in the future. Furthermore Webshop.com believe
that implementing a global security policy for their web shop can be reused when switched to
another technology. Because of their limited budget, they find the creation of the detailed misuse
cases too expensive. Furthermore the management of the startup requires a security analysis of
most new requirements, so this is considered important and hence assigned a higher agile value.
Next they define an acceptable amount of agility loss (AARF). Webshop.com decides to define
this threshold quite low for the beginning because of the financial needs to release a product. They
define a 5% agility loss as acceptable. Based on their defined threshold and the calculations that
resulted from the defined agility degrees, they select the security activities that have an agility loss
less than 5%. These activities are then selected and performed during the development process.
This section describes the method and technique presented by Sonia et al. (2014) using two
Process-deliverable diagrams (PDD). The PDDs are created using a meta-modeling technique
presented by van de Weerd and Brinkkemper (2008). The model follows the conventions presented
in that paper. The PDD of the entire method is depicted in Figure 1. The technique used in the
Determine importance of Agility Feature activity of this method is elaborated in a seperate PDD,
as shown in Figure 2. These PDDs are supported by an Activity table (Table 2) and a Concept
table (Table 3). These tables contain the activities and concepts respectively of both the method
and technique.
The paper of Sonia et al. (2014) does not provide explicit roles for the method or activities.
Since the activities require knowledge of both the business and technical aspects, the role of
Project manager is assigned to the diagrams. Depending on the size and complexity of the
project, other people might be involved. A team of security experts might be involved to select
the required security activities for an development project that has high security requirements for
example.
4
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
6
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
7
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
8
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
V. Concept table
Concept Description
AGILE ACTIVITY Activity that is part of an Agile method. An Agile method is an
(system development) method that is aligned with the concepts
of the Agile Manifesto (Fowler & Highsmith, 2001).
AGILE ACTIVITY LIST Collection of AGILE ACTIVITIES
SECURITY ACTIVITY Activity that is part of an software development process that
helps developers build more secure software.
SECURITY ACTIVITY Collection of SECURITY ACTIVITIES
LIST
AGILE FEATURE Factor desirable for describing agile nature of an activity (Sonia
& Singhal, 2012).
AGILE FEATURE HIER- Hierarchy of AGILE FEATURES where a goal is placed at the
ARCHY highest level. The second level contains AGILITY FEATURES
and the third level contains the AGILITY sub-FEATURES. The
hierarchy is displayed in a table. The first column contains the
goal, the second column the AGILITY FEATURES and the third
column contains the AGILITY sub-FEATURES (if any) (Sonia et
al., 2014).
COMPARISON MATRIX Contains the results of all pair-wise importance comparisons
between the AGILE FEATURES (Sonia et al., 2014).
NORMALIZED COM- Specialized version of the COMPARISON MATRIX. This version
PARISON MATRIX is created by normalizing the COMPARISON matrix using a com-
puted priority vector to determine the weights of the attributes
(Sonia et al., 2014).
CONSISTENCY RATIO This ratio compares the inconsistency of the set of judgements
in a matrix with what it would be if the judgements and the
corresponding reciprocals were taken at random from the scale
(Saaty, 1994).
AGILE FEATURE
Table containing all AGILE FEATURE and corresponding AGILE
GLOBAL WEIGHT TABLE
sub-FEATURES with their corresponding weights (Sonia et al.,
2014).
WEIGHTED AGILE FEA- Collection of AGILE FEATURES with associated weights, describ-
TURES LIST ing the relative importance (Sonia et al., 2014).
9
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
Concept Description
INTEGRATION MATRIX Matrix that depicts the integration possibilities between SECU-
RITY ACTIVITIES and AGILE ACTIVITIES. The AGILE ACTIVI-
TIES form the column headers, the SECURITY ACTIVITIES are
the row headers. The matrix can be build using the following
formula:
(
1, if (i, j) integration is possible
aij =
0, otherwise
10
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
11
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
VII. Template
This section shows a template for the AGILE FEATURE GLOBAL WEIGHT TABLE. As explained
in the Concept table above, this AGILE FEATURE GLOBAL WEIGHT TABLE contains all AGILE
FEATURES and corresponding AGILE sub-FEATURES with their corresponding weights.
The first column contains the names of Agile Features that were identified in the Identify
agile (sub)features step of the technique. The relative weights for each Agile Feature (RA1) can
be found in the Create normalized matrix step of the technique. The third column (Sub-features)
contains the names of all Agile sub-features, grouped by parent Agile Feature. The relative weights
(RA2) column can also again be filled in from the values present in the normalized matrix that has
been created. Finally the global weights are filled in according to the Calculate global weights
step. The global weight of sub-feature #2.1 of feature 2 is calculated using the following formula:
Global Weight = RA12 RA22.1
where RA12 is the relative weight of feature 2 and RA22.1 is the relative weight of sub-feature #2.1
12
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
References
Al-Ahmad, W. (2011). Building secure software using XP. IJSSE, 2(3), 6376.
Ayalew, T., Kidane, T., & Carlsson, B. (2013). Identification and evaluation of security activities
in agile projects. In H. R. Nielson & D. Gollmann (Eds.), Secure IT systems - 18th nordic
13
FISA-XP: an agile-based integration of security activities with extreme programming S. Klock
conference, nordsec 2013, Ilulissat, Greenland, october 18-21, 2013, proceedings (pp. 139153).
Berlin: Springer.
Baca, D., & Carlsson, B. (2011). Agile development with security engineering activities. In D. Raffo,
D. Pfahl, & L. Zhang (Eds.), International conference on software and systems process, ICSSP 2011,
Honolulu, HI, USA, may 21-22, 2011, proceedings (pp. 149158). New York, NY: ACM.
Beck, K. (2000). Extreme programming explained: embrace change. Boston, MA: Addison-Wesley
Professional.
Beznosov, K., & Kruchten, P. (2004). Towards agile security assurance. In C. Hempelmann &
V. Raskin (Eds.), Proceedings of the new security paradigms workshop 2004, september 20-23, 2004,
Nova Scotia, Canada (pp. 4754). New York, NY: ACM.
de Win, B., Scandariato, R., Buyens, K., Grgoire, J., & Joosen, W. (2009). On the secure
software development process: Clasp, sdl and touchpoints compared. Information and
software technology, 51(7), 11521171.
Foundation, O. (2006). Owasp clasp project. Retrieved 2015-02-11, from https://www.owasp.org/
index.php/Category:OWASP_CLASP_Project
Fowler, M., & Highsmith, J. (2001). The agile manifesto. Software Development, 9(8), 2835.
Keramati, H., & Mirian-Hosseinabadi, S. (2008). Integrating software development security
activities with agile methodologies. In The 6th ACS/IEEE international conference on computer
systems and applications, AICCSA 2008, Doha, Qatar, march 31 - april 4, 2008 (pp. 749754). New
York, NY: IEEE Computer Society.
Saaty, T. L. (1994). How to make a decision: the analytic hierarchy process. Interfaces, 24(6), 1943.
Siponen, M. T., Baskerville, R., & Kuivalainen, T. (2005). Integrating security into agile development
methods. In J. J. Nunamaker & R. Briggs (Eds.), 38th hawaii international conference on system
sciences (HICSS-38 2005), CD-ROM / abstracts proceedings, 3-6 january 2005, Big Island, HI, USA
(pp. 185a185a). Washington, DC: IEEE Computer Society.
Sonia, & Singhal, A. (2011). Development of agile security framework using a hybrid technique
for requirements elicitation. In S. Unnikrishnan, S. Surve, & D. Bhoir (Eds.), Advances in
computing, communication and control (pp. 178188). Berlin: Springer Berlin Heidelberg.
Sonia, & Singhal, A. (2012, February). Integration analysis of security activities from the perspective
of agility. In J. E. Guerrero (Ed.), Agile india (agile india), 2012 (pp. 4047). New York, NY:
IEEE Computer Society.
Sonia, Singhal, A., & Banati, H. (2014). FISA-XP: an agile-based integration of security activities
with extreme programming. ACM SIGSOFT Software Engineering Notes, 39(3), 114.
van de Weerd, I., & Brinkkemper, S. (2008). Meta-modeling for situational analysis and design
methods. In M. Syed & S. Syed (Eds.), Handbook of research on modern systems analysis and
design technologies and applications (pp. 3558). Hershey: Idea Group Publishing.
14