Please cite this article in press as: El-Attar, M., Towards developing consistent misuse case models. J. Syst. Software (2011),
doi:10.1016/j.jss.2011.08.023
ARTICLE IN PRESS
G Model
JSS-8787; No. of Pages 17
The Journal of Systems and Software xxx (2011) xxx–xxx
Contents lists available at SciVerse ScienceDirect
The Journal of Systems and Software
j our na l ho mepage: www.elsevier.com/locate/jss
Towards developing consistent misuse case models
Mohamed El-Attar
∗
Information and Computer Science Department, King Fahd University of Petroleum and Minerals, P.O. 5066, Dhahran 31261, Saudi Arabia
a r t i c l e i n f o
Article history:
Received 8 October 2010
Received in revised form 18 August 2011
Accepted 18 August 2011
Available online xxx
Keywords:
Misuse cases
Use cases
Model consistency
a b s t r a c t
Secure software development should begin at the early stages of the development life cycle. Misuse case
modeling is a technique that stems from traditional use case modeling, which facilitates the elicitation
and modeling functional security requirements at the requirements phase. Misuse case modeling is an
effective vehicle to potentially identify a large subset of these threats. It is therefore crucial to develop
high quality misuse case models otherwise end system developed will be vulnerable to security threats.
Templates to describe misuse cases are populated with syntax-free natural language content. The inher-
ent ambiguity of syntax-free natural language coupled with the crucial role of misuse case models in
development can have a very detrimental effect. This paper proposes a structure that will guide mis-
use case authors towards developing consistent misuse case models. This paper also presents a process
that utilizes this structure to ensure the consistency of misuse case models as they evolve, eliminating
potential damages caused by inconsistencies. A tool was developed to provide automation support for
the proposed structure and process. The feasibility and application of this approach were demonstrated
using two real-world case studies.
© 2011 Elsevier Inc. All rights reserved.
1. Introduction
Use case modeling (Armour and Miller, 2000; Booch et al., 2003;
Jacobson et al., 1992, 1995; OMG, 2003) is constantly increasing
in popularity amongst business analysts and requirements engi-
neers as a preferred choice to determine, communicate and specify
functional requirements. This constant increase in use case mod-
eling popularity is attributed to its relatively small and simple
set of syntactical rules and large degree of natural language use.
Non-technical stakeholders feel more comfortable and involved in
the requirements engineering process when dealing with use case
rather than with declarative specifications. To capitalize on this
success, researchers are constantly devising new techniques that
will allow use case modelers to capture and specify non-functional
requirements.
In this paper, the focal non-functional requirements category
considered is security requirements. In the context of UC model-
ing, an approach to elicit security requirements with misuse cases
has shown to be promising (Alexander, 2002, 2003; Ekremsvik
and Tiset, 2004; Mæhre, 2005; Diallo et al., 2006; Stålhane and
Sindre, 2007). In essence, misuse cases are similar to traditional
∗
Corresponding author.
E-mail address: melattar@kfupm.edu.sa
use cases except they describe negative operational sequences that
can harm the stakeholders of a system. Misusers (analogous to
actors) are defined as external entities that interact with the system
with harmful intentions. Misusers interact with the system through
misuse cases to attain their goals. Misuse cases and misusers are
modeled as a supplement to traditional use case models.
A number of templates to describe misuse cases have been
proposed in the literature. Misuse cases can be described used
a “lightweight” approach by embedding the description of mis-
use within regular use case templates (Sindre and Opdahl, 2005),
such as (Cockburn, 1997, 2001; Constantine, 1995; Kruchten,
1999; Kulak and Guiney, 2000). Alternatively, misuse cases can be
described in an “extensive” format (Sindre and Opdahl, 2001, 2005).
These templates are populated with syntax-free natural language
and are discussed in great detail in Section 2.2. Using syntax-free
natural language is a double-edge sword. On one hand, the expres-
siveness power and readability of syntax-free natural language
attract non-technical stakeholders. On the other hand, syntax-free
natural language is inherently ambiguous. The use of syntax-free
natural language thus hampers several use case modeling quality
attributes. Such quality attributes include consistency, complete-
ness, understandability, correctness and its analytical perspective.
Given the similarity in nature between misuse cases and tradi-
tional use cases, it can be inferred that misuse case models would
equally suffer from the use of syntax-free natural language. In
fact, the use of syntax-free natural language could prove to be
0164-1212/$ – see front matter © 2011 Elsevier Inc. All rights reserved.
doi:10.1016/j.jss.2011.08.023