Skip to main content

Über dieses Buch

Everyone expects the products and services they use to be secure, but 'building security in' at the earliest stages of a system's design also means designing for use as well. Software that is unusable to end-users and unwieldy to developers and administrators may be insecure as errors and violations may expose exploitable vulnerabilities.

This book shows how practitioners and researchers can build both security and usability into the design of systems. It introduces the IRIS framework and the open source CAIRIS platform that can guide the specification of secure and usable software. It also illustrates how IRIS and CAIRIS can complement techniques from User Experience, Security Engineering and Innovation & Entrepreneurship in ways that allow security to be addressed at different stages of the software lifecycle without disruption.

Real-world examples are provided of the techniques and processes illustrated in this book, making this text a resource for practitioners, researchers, educators, and students.





Chapter 1. Why Designing for Usability and Security is Hard

In this chapter, I summarise the challenges that make designing for usability and security hard, and outline the structure of this book.
Shamal Faily

Chapter 2. Usable and Secure Software Design: The State-of-the-Art

This chapter reviews the current state-of-the-art in the design of usable and secure systems. This chapter should not be considered as a state of the art review of usability and security in general, and HCI-Security (HCI-Sec) in particular. For those readers interested in such a review, I would recommend [1]. I begin by identifying several common themes in the design of effective information security and reviews work by the HCI-Sec community towards designing usable security. Based on limitations in this existing work, I take a step back and review the prevalent HCI concepts available for designing usable and secure systems, including research on integrating these ideas with Software Engineering, and the potential consequences of these approaches to security. Because the concept of Requirement is shared by both the security and usability communities, I review how existing work in Security Requirements Engineering might be cogent to the design of usability. In particular, I review several dominant Requirements Engineering approaches, and consider issues which may arise when viewing them from a usability perspective. I also introduce the concept of a framework and illustrate how existing Requirements Engineering frameworks deal with eliciting security and usability concerns. I conclude this chapter with a brief review of the available tool-support for facilitating Usability and Security Requirements Engineering activities.
Shamal Faily

Chapter 3. A Conceptual Model for Usable Secure Requirements Engineering

This chapter presents a conceptual model for Usable Secure Requirements Engineering. This work builds upon practical work in usability design, and recent research on meta-models for Security Requirements Engineering, to help structure and manage Usability, Security, and Requirements Engineering activities in different contexts. I present an overview of the conceptual model itself, before describing each view of the meta-model: Environment, Asset, Task, Goal, Risk, and Responsibility. For each view, I present and justify the related concepts and their relationships. I illustrate each aspect of the meta-model using examples from a specification exemplar: NeuroGrid.
Shamal Faily



Chapter 4. The IRIS Framework

This chapter presents a process framework for specifying usable and secure systems. Building on the meta-model described in Chap. 3, I describe the different perspectives of IRIS, and their make up, propose a number of exemplar techniques for each perspective.
Shamal Faily

Chapter 5. Introducing CAIRIS: Tool-Support for Designing Usable and Secure Systems

This chapter presents CAIRIS (Computer Aided Integration of Requirements and Information Security): a software platform designed to embody the characteristics needed to support the IRIS framework. I introduce the design principles that guided the development of CAIRIS in Sect. 5.1, before briefly describing how the platform was developed in Sect. 5.2. The design of CAIRIS is then reviewed in terms of its high level architecture, physical deployment, and visual layout in Sect. 5.3, before describing how the platform’s characteristics satisfy the design principles we wish to foster in Sect. 5.4.
Shamal Faily

Chapter 6. Adapting Personas and Scenarios for Security and Usability Design

In this chapter, I describe how personas and scenarios can be adapted to best suit the design of secure and usable systems. I begin by presenting an approach for building personas as part of an IRIS process. Such processes typically rely on empirical data collected for the purpose of creating and using personas, but such data is not always easy to obtain. To work around this restriction, I describe how argumentation models can be used to provide assurance for personas based on assumptions or other data sources. I then examine how this model can be used to link grounded theory models to personas, providing a means of effectively validating personas. Building on the use of argumentation models, I explore how these can be used to better adapt scenarios for usability and security using misusability cases: scenarios which describe how design decisions may lead to usability problems subsequently leading to system misuse.
Shamal Faily

Chapter 7. Case Study: Securing a Medical Data Portal

In this chapter, I present a case study where IRIS and CAIRIS were used to elicit security requirements for a software infrastructure used to facilitate research data sharing. I present the context of the project within which this study was situated, before presenting the IRIS process adopted, and our use of both IRIS and CAIRIS. I describe the results of our work, before concluding with some lessons learned.
Shamal Faily

Chapter 8. Case Study: Defending Critical Infrastructure Against Stuxnet

In this chapter, I present a case study where IRIS and CAIRIS were used to analyse and improve an information security policy for a UK water company following reports of the Stuxnet worm. I present the organisational context, before presenting the IRIS process adopted, and the use of both IRIS and CAIRIS. I describe the results of this work, before concluding with some lessons learned.
Shamal Faily

Beyond Requirements


Chapter 9. Analysing and Managing Architectural Risk

In this chapter, I illustrate how modest extensions to the IRIS meta-model, together with complementary updates to CAIRIS, can be used to automate an architectural risk analysis. I introduce meta-models for architectural patterns and contextualised attack patterns; these formalise the elements necessary to facilitate an architectural risk analysis. I show how these elements are applied in practice in Sect. 9.7
Shamal Faily

Chapter 10. Case Study: Securing An Internet of Things Middleware

This chapter describes the challenges faced designing security and usability into webinos: a software environment for running web applications securely across different device platforms [1]. I begin by considering what we can learn from Research and Development projects, before presenting the webinos project and its objectives, the design approach taken to develop the webinos platform, and the part played by security and usability design techniques. I describe the difficulties faced in applying these techniques, together with the approaches taken to tackle them. Finally, we reflect on lessons for those looking to align security and usability design in projects of this nature.
Shamal Faily

Chapter 11. Evaluate Security as an Innovation

This chapter presents the paradigm of Security Entrepreneurship: the application of innovation models and principles to organise, create, and manage security design elements to bring about improved system security. I begin by introducing some tenets from the innovation literature, before introducing four sample Security Entrepreneurship techniques, and illustrating each with a working example. Finally, the consequences of this paradigm are discussed, and I propose research directions for the mainstream introduction of Security Entrepreneurship for security design.
Shamal Faily

Chapter 12. Further Applications of CAIRIS for Usable and Secure Software Design

To close this book, this chapter presents further applications afforded by the CAIRIS platform. We consider new ideas around the role of environments in CAIRIS, examine how the IRIS meta-model can be leveraged to support the modelling of threats and trust expectations in CAIRIS, and how IRIS and CAIRIS realises the idea of “design as code”. I conclude by demonstrating the use of CAIRIS to model both functional and human concerns, and show how CAIRIS models help evaluate research when participants can be difficult to find or reach.
Shamal Faily


Weitere Informationen

Premium Partner

BranchenIndex Online

Die B2B-Firmensuche für Industrie und Wirtschaft: Kostenfrei in Firmenprofilen nach Lieferanten, Herstellern, Dienstleistern und Händlern recherchieren.



Best Practices für die Mitarbeiter-Partizipation in der Produktentwicklung

Unternehmen haben das Innovationspotenzial der eigenen Mitarbeiter auch außerhalb der F&E-Abteilung erkannt. Viele Initiativen zur Partizipation scheitern in der Praxis jedoch häufig. Lesen Sie hier  - basierend auf einer qualitativ-explorativen Expertenstudie - mehr über die wesentlichen Problemfelder der mitarbeiterzentrierten Produktentwicklung und profitieren Sie von konkreten Handlungsempfehlungen aus der Praxis.
Jetzt gratis downloaden!