Requirements and Design - Related Papers

The papers here focus primarily on four topics - using the analysis of fieldwork to inform the requirements engineering process, fieldwork-informed systems design, requirements engineering process improvement and a viewpoint-based approach to requirements engineering. The work on Coherence is also directly relevant to this topic.

Ethnography and requirements engineering

To get started in this area, we recommend looking at the first presentation below and reading the first two papers on the use of ethnography and its presentation to requirements engineers.

Understanding the Informal in Systems Requirements Engineering - Ian Sommerville

Powerpoint Presentation
that discusses why it is important to use fieldwork and observe what really happens in work settings when deriving requirements for systems.

Sommerville, I. (2000). Understanding the Informal in Systems Requirements Engineering.

Integrating ethnography into the requirements engineering process - Ian Sommerville, Tom Rodden, Pete Sawyer, Richard Bentley and Michael Twidale

This paper reports on experiences of an inter-disciplinary project involving software engineers and sociologists. The project is concerned with discovering the requirements for a user interface to a flight database which is used to provide real-time information to air traffic controllers. The sociologists are conducting an ethnographic analysis of the activity of air traffic control and this is being used to inform the development of a prototype system. The paper gives an overview of the project, discusses how sociologists can contribute to requirements engineering and suggests tool support which will allow ethnographic observations to be integrated into the requirements engineering process.

Sommerville, I., Bentley, R., Rodden, T., Twidale, M. and Sawyer, P. (1993). Integrating Ethnography into the Requirements Engineering Process. Proc. 1st IEEE Int. Symposium on Requirements Engineering, San Diego, January 1993, IEEE Computer Society Press.

Presenting ethnography in the requirements process - John Hughes, Jon O'Brien, Tom Rodden, Mark Rouncefield and Ian Sommerville

In this paper we argue that industrial development of interactive systems has to recognise the social dimension of work if they are to fully meet the real needs of their users Under current approaches this depends on whether an individual requirements engineer implicitly applies a user-centred approach and recognises the importance of cooperation and is sufficiently sympathetic and intuitive to understand the work and reflect this in the system requirements. We wish to move beyond this by allowing for the provision of a more systematic incorporation of the social dimensions of work. To this end we focus on developing a number of alternative models for involving ethnography in the requirements process and a more systematic approach to the presentation of ethnographic material. Our approach to presented ethnographic information is based on the use of number of defined viewpoints and is embodied within a general hypertext tool.

Rodden, T., Sommerville, I., Hughes, J., O’Brien, J. and Rouncefield, M. 1995. Presenting Ethnography in the Requirements Process. Proc. RE95, 27-35, York. IEEE Computer Society Press.

Informing the Requirements Process with Patterns of Cooperative Interaction - Ian Sommerville, David Martin and Mark Rouncefield

The need to understand the social context within which work to be supported by computer-based systems takes place is broadly recognised within the RE community. Ethnographic studies have been used in particular to inform the requirements process from a social perspective. To make this accessible to requirements engineers, work in this area has focused on how to integrate and communicate ethnographic findings on a per project basis but scant attention has been paid to how findings from individual studies may be generalised and re-used for the purposes of RE in new settings. This paper is intended to introduce our resource of Patterns of Cooperative Interaction to the RE community. These patterns specifically compare and contrast a variety of ethnographic findings, discuss their relevance to design and provide an introduction to the analytic sensibilities of such studies. We discuss how we developed patterns of interaction from a corpus of ethnographic studies, illustrate a selection of these patterns and suggest how the patterns collection can be used by requirements engineers as a means of highlighting potential social issues that are or relevance to the system requirements and as a means of generating requirements that support social interaction.

Sommerville, I., Martin, D. and Rouncefield, M. (2003). Informing the Requirements Process with Patterns of Cooperative Interaction. Invited paper. International Arab J. of Information Technology, 1 (1), July 2003.

Social analysis in the requirements engineering process: from ethnography to method - Stephen Viller & Ian Sommerville

Over a number of years, we have been involved in investigations into using workplace observation to inform requirements for complex systems. This paper discusses how our work has evolved from ethnography with prototyping, through presentation of ethnographic fieldwork, to developing a method for social analysis that has been derived from our experience of applying ethnographic techniques. We discuss the strengths and weaknesses of each of these approaches with a particular focus on our most recent work in developing the Coherence method. This method is based on a fusion of viewpoint-oriented and ethnographic approaches to requirements engineering and uses an industry-standard notation (UML) to represent knowledge of work. We use a common example of an air traffic control system to illustrate each approach.

Viller, S. and Sommerville, I. (2000). ‘Social Analysis in the Requirements Engineering Process: From Ethnography to Method’. In Systems Modeling for Business Process Improvement. D. Bustard, P. Kawalek and M. Norris (eds.), Artech House, 2000.

Requirements Engineering for Cooperative Systems - Ian Sommerville and Tom Rodden

This paper addresses the problem of ‘production-quality’ CSCW software development where software is developed from an agreed statement of the system requirements. In particular, we are concerned with ways in which requirements specifications for CSCW systems can be developed and with the integration of ethnography into traditional specification methods. Existing approaches to requirements engineering are briefly described as are our experiences of using ethnographic studies in systems requirements analysis.
We suggest that existing requirements analysis methods and ethnography must both evolve to accommodate the strengths of the other approach to produce an effective and complete method of deriving cooperative system requirements. An investigation of the changes required to notations for system description and analysis methods is a long- term research goal. However, we suggest shorter-term results can be obtained by using integrated tools for ethnography and requirements capture.

Sommerville, I. and Rodden, T. (1994). Requirements engineering for cooperative systems. Collaborative Computing, 1 (4), 219-35.

Deriving Information Requirements from Responsibility Models - Ian Sommerville, Russell Lock, Tim Storer and John E. Dobson

Powerpoint Presentation that discusses how responsibility modelling can be used to model organisations and understand the requirements for information from agents in the organisation.

Sommerville, I., Lock, R., Storer, T., and Dobson, J. E. (2009). Deriving Information Requirements from Responsibility Models. Proc. CAiSE 2009. 21st International Conference on Advanced Information Systems Engineering, Amsterdam, June 2009, 515-29. doi:10.1007/978-3-642-02144-2_40

A Hybrid Approach to Upstream Requirements: IBIS and Cognitive Mapping - J Rooksby, I Sommerville

We address the problem of eliciting requirements for large-scale technical systems with multiple stakeholders, significant technological uncertainties and extended timescales. Our focus is on the early, 'upstream' stage where options and commitment are just beginning to emerge. Drawing both on problem structuring methods found in management science and on design rationale techniques found in software engineering, we have developed a hybrid process and accompanying software tool support to facilitate consensual problem definition. Negotiation occurs through a combination of informal group problem structuring (cognitive mapping) and incremental formalism (dialogue mapping with IBIS) of requirements. The process and tool have been successfully used in 1) strategy development for revision of a UK Government administrative system, and 2) the negotiation of a twenty-five year vision by stakeholders in a major technology company.

Rooksby, J., Sommerville, I., Pidd, M. (2006). A Hybrid Approach to Upstream Requirements: IBIS and Cognitive Mapping. In Dutoit AH, McCall R, Mistrik I, and Paech B (Eds.) Rationale Management in Software Engineering, Springer, p131-148 (ISBN: 3-540-30997-7)

Managing Stakeholder Requirements in High Performance Computing Procurement
- John Rooksby, Mark Westcombe, Mike Pidd, Ian Sommerville

High Performance Computing (HPC) facilities are provided in the UK at a national level. These facilities are amongst the best in the world, supporting world class research across a spectrum of disciplines. EPSRC has led the procurement of the two current facilities: CSAR (Computing Services for Academic Research) which was implemented in 1998, and HPCx which was implemented in 2001. In this paper we consider the issues involved in HPC procurement and present recommendations for managing stakeholder requirements in future procurements of national HPC facilities. These recommendations are organised as a process, of which the top level is presented here. The process takes an iterative, ‘spiral’ approach affording rounds of eliciting, balancing and validating requirements. Previous procurements have been successful, but with the increasing costs of HPC, an increasing effort must be made to ensure that this remains so. Our focus here is on how stakeholders, particularly within the academic scientific community, can be better involved in the decision making processes and ultimately how procurement strategy can rigorously meet the demands of the potential users.

Rooksby, J., Sommerville, I., Mark, W. and Mike, P. (2003). Managing Stakeholder Requirements in High Performance Computing Procurement. In: UK e-Science All Hands Meeting.

Fieldwork-informed systems design

The first paper here describes a system that we developed many years ago but which still contains many relevant notions for cooperative design.

The Designers' Notepad: Supporting and understanding cooperative design
- Michael Twidale, Tom Rodden, Ian Sommerville

We describe the development of a system to support cooperative software design. An iterative development approach has been used, based upon the observation of system use in authentic design sessions. This allows us to correct interface errors, and also to learn more about the nature of collaborative design. The observations of use and the resulting refinements of the system are described. In particular we note the variability in design activity both amongst designers and according to circumstances. We also note the way in which concepts mutate over time (often involving frequent and rapid revision) leading to an evolution of structure.

Twidale, M., Rodden, T. and Sommerville, I. 1993. ‘The Designers Notepad: Supporting and Understanding Cooperative Design’. Proc. 3rd European CSCW Conf., Milan, 93-108, Kluwer.

Developing a tool to support collaborative dialogues and graphical representation of ideas - M.B. Twidale, T. Rodden, I. Sommerville

The aim of this paper is twofold: firstly to describe the Designers' NotePad (DNP) and its potential as an advanced form of Computer Mediated Communication (CMC) for Distance Education, and secondly to describe the techniques used in the development of the DNP that may be helpful in the development of other CMC systems. With regard to the former, we believe that the DNP offers considerable potential in supporting collaborative dialogues by its use of 'graphical text', i.e. short text fragments positioned two dimensionally and supported by graphical notations such as various kinds of links, surrounding shapes and the use of colour. Using the system, idea structures can be developed and refined with great ease and speed and used as the basis of a discussion for further developing the ideas.
With regard to the experiences and techniques used, we wish to emphasise the substantial influence of the interface on usability and effectiveness of the system. This effect can completely swamp the effects of other carefully prepared features of the system to support learning. Therefore we advocate devoting considerable resources to the iterative design and evolving refinement of an interface that is easy to learn and easy to use.

Twidale, M., Rodden, T. and Sommerville, I. (1993). Developing a tool to support collaborative dialogues and graphical representation of ideas. Verdejo, F. (Ed) Collaborative dialogue technologies in distance learning, Proceedings of the NATO ARW, Segovia, Spain, 1993.

The use of a computational tool to support the refinement of ideas - M Twidale, T. Rodden, I. Sommerville

It is well established that the use of concept mapping has considerable educational benefits [1]. A computational tool to support concept mapping can enhance these benefits by providing features that make the mapping activity easier for students. In particular, computer-based concept mapping can more effectively support the refinement of ideas that leads to the revision of the structure of the map. Given that mapping leads to learning it is inevitable that student's concepts will evolve and so the representation of the concepts should be easily alterable. This can be difficult and messy to do with paper-based maps, but can be made into a trivial activity for paper based maps.
We describe a computational tool which can support not only concept mapping but brainstorming and the refinement and revision of ideas. Although initially developed to support software design, we believe that its core features are equally applicable as a learning environment for students of any domain. A preliminary study of the use of the tool by second year computing undergraduates and students of other disciplines has been undertaken as part of its incremental development. We report the initial findings of this study and their implications for future development of this and related learning-support tools.

Twidale, M., Rodden, T. and Sommerville, I. (1993). Developing a tool to support collaborative dialogues and graphical representation of ideas. Verdejo, F. (Ed) Collaborative dialogue technologies in distance learning, Proceedings of the NATO ARW, Segovia, Spain, 1993.

Home technology systems - Guy Dewsbury, Karen Clarke, Mark Rouncefield, Ian Sommerville

This paper is interested in the design of technology in domestic, or home, settings. The systems themselves have become increasingly complex and the need for dependable systems correspondingly important. The design problem is not so much concerned with the creation of new technical artefacts as it is with their effective and configuration and integration. Inadequate understanding of the context of the lived reality of use and user needs is often a significant cause of lack of dependability. The paper aims to illuminate and highlight some fields of investigation that might form the basis for future research and development agendas technology in domestic settings.

Dewsbury, G., Clarke, K., Rouncefield, M., Sommerville, I. (2002). Home Technology Systems. J. of Housing Care and Support, 5 (4).

Patterns of Home Life: Informing Design For Domestic Environments. - John Hughes, Jon O’Brien, Tom Rodden, Mark Rouncefield and Stephen Viller

This paper considers how we may provide support for the development of general design principles in domestic environments. In particular we examine the potential for using design patterns as a means of presenting ethnographic material and outlining design solutions. The paper reports on the development of an initial pattern language based on our studies of a number of domestic environments and offers a general structure for presenting these patterns. Finally, we briefly reflect on our experiences of developing an on-line set of patterns for this class of environments.

Rouncefield, M., Rodden, T., Hughes, J., O'Brien, J. and Viller, S. (2000). Patterns of Home Life: Informing Design for Domestic Environments. Personal Technologies Special Issue on Domestic Personal Computing, 4. pp. 25-38.

Designing with Care: Adapting Cultural Probes to Inform Design in Sensitive Settings - Andy Crabtree, Terry Hemmings and Tom Rodden, Keith Cheverst, Karen Clarke, Guy Dewsbury, John Hughes and Mark Rouncefield

We report on the methodological process of developing computer support for former psychiatric patients living in residential care settings, for older members of the community, and disabled people living at home. Methods for identifying user needs in such sensitive settings are underdeveloped and the situation presents a very complex set of design challenges. In particular, the highly personal character of such settings presents conventional observational techniques, such as ethnography, with obdurate problems that make direct observation intrusive, disruptive and inappropriate on occasion. Direct observation requires supplementation in sensitive settings. Accordingly, we report on our experiences of adapting Cultural Probes to explore care settings, to develop a design dialogue with participants, and to gather information about their unique needs.

Crabtree, A., Hemmings, T., Rodden, T., Cheverst, K., Clarke, K., Dewsbury, G., Hughes, J. and Rouncefield, M. (2003). Designing with Care: Adapting cultural probes to inform design in sensitive settings. In Proceedings of OzCHI 2003, New Directions in Interaction: Information environments, Media & Technology, 26-28 November at the University of Queensland, Brisbane, Australia. pp 4-13.

Storytelling and Design: the problem of leadership - Simon Kelly, Marian Iszatt White, John Rooksby and Mark Rouncefield

“Stories provide a good first pass at what is important, from the point of view of the users; they provide the designer with a glimpse of what the user’s terrain feels like, and thus provide a starting point for further exploration.” (Erickson, 1996: 3). This paper treats leadership essentially as a design problem. Taking Thomas Erickson’s study of the design of software for information systems as a somewhat unorthodox starting point we ask whether the production, telling and re-telling of stories can be used as a resource for making a ‘good first pass’ at what is important to those who are faced with the challenges of leadership in the UK learning and skills sector. Drawing upon a series of ethnographic studies of leadership in further education, we analyse the different ways in which everyday practices are made ‘storyable’ by participants and how different stories and storytelling practices are ‘occasioned’ through the practical accomplishment of everyday leadership work. In doing so we reflect on the extent to which the documenting and analysis of storytelling practices may provide 'teachable moments' through which to inform programmes of leadership development and create links between leadership training, research and everyday practice.

Kelly, S., Iszatt White, M., Rooksby, J., and Rouncefield, MF. (2005). Storytelling and design: the problem of leadership. In: Rethinking Leadership: New Directions in the Learning and Skills Sector? (Lancaster Leadership Centre, Lancaster University Management School) - 2005.

Evaluation timebands as a tool for structuring the design of socio-technical systems - Gordon Baxter, Alan Burns and Kenneth Tan

Structuring the design of a socio-technical system so that it fully meets its requirements is a complex problem. Typically, the system is described using hierarchical structures, but time is only represented as a single flat physical phenomenon. We have developed a framework that allows systems to be partitioned into a hierarchical series of time bands, such that the temporal properties can be adequately represented and exploited. We have used a simple scheduling model to evaluate the framework using sample scenarios from a case study in a neonatal unit. The results highlight: the importance of finding the right level of abstraction when identifying system activities; the need to ensure that appropriate precedences are allocated to activities that are part of larger procedures; and offer some support for the separation of concerns between bands.

Baxter, G.D., Burns, A., & Tan, K. (2007). Evaluating timebands as a tool for the structuring of socio-technical systems. In P. Bust (Ed.) Contemporary Ergonomics 2007. (pp. 55-60). London, UK: Taylor & Francis.

What Can an Ethnography of Information Giving by Telephone Tell Us For Designing a Website? - John Rooksby and Alan Dix
Ethnographic evidence has proved invaluable in understanding how people work and communicate with and through technology. We have undertaken a study of a Mental Health Information Service that provides information and a listening ear over the telephone. The ethnographic data gives us insight into operator work and how to better support that work It is not the operators’ task to relay information over the telephone but to deal with callers in accordance with their needs, to work with (and around) confidentiality, to reassure the callers, to (help) formulate the callers’ problems, to draw from prior experience, to signpost, to do the organisation’s work, and simply to be there. An aim of the Service is to put information online. In this paper we ask how far ethnographic evidence of the workplace can be used in supporting design of a website.

Rooksby, J. and Dix, A. (2005). What can an ethnography of information giving by telephone tell us when designing a website? In:Healthcare Information Giving Services and Future ICTs.

Requirements engineering process improvement

Work in this area involved the development of the Requirements Engineering: Good Practice Guide, which is summarised in the first paper below. Although written in the mid-1990s, this book is still relevant (and available from Amazon).

Improving the Requirements Process - Pete Sawyer, Ian Sommerville and Stephen Viller

The state-of-the practice in requirements engineering is currently such that organisations wishing to improve their requirements processes find it hard to discover, evaluate and apply good practice. Good practice certainly exist but dissemination of practical experience is poor. Standards coverage of the requirements process is also patchy. This paper describes the Requirements Engineering Good Practice Guide which attempts to fill this gap by disseminating good requirements practice within a process improvement framework. The work is motivated by the authors' judgement that it is timely to exploit industry's interest in software process improvement as a vehicle for raising the profile of good requirements practice.

Sawyer, P., Sommerville, I., and Viller, S. (1998). Improving the Requirements Process. In: Fourth International Workshop on Requirements Engineering: Foundations of Software Quality (REFSQ'98).

Human Factors in Requirements Engineering - Stephen Viller, John Bowers, Tom Rodden

Requirements Engineering (RE) is an inherently social process, involving the contribution of individuals working in an organizational context. Furthermore, failures in the RE process will potentially lead to systematic failures in the products that are produced as a result. Consequently, the RE process for dependable systems development should itself be considered as a dependable process, and therefore subject to greater scrutiny for vulnerabilities to error. Research on human error has typically focused on the work of individual actors from a cognitive perspective. This paper presents a survey which broadens the view on what contributes to human error by also examining work from the social and organizational literature. This review was conducted to inform efforts to improve the systems development process for dependable systems, and in particular their requirements engineering process.

Bowers, J., Rodden, T. & Viller, S. (1997). Human Factors in Requirements Engineering.

Capturing the Benefits of Requirements Engineering - Pete Sawyer, Ian Sommerville, and Stephen Viller

Requirements problems are expensive and plague almost all systems and software development organizations. In most cases, the best you can hope for is to detect errors or omissions in the requirements in time to contain them before the product is released. With luck, nonessential functionality can be traded for product quality. All too often, however, the product is late, over budget, and of poor quality, while failing to meet crucial customer requirements. Faced with recurrent requirements problems, organizations often turn to soft- ware process improvement for a solution.1,2 Unfortunately, SPI seldom fixes problems rooted in the requirements process because existing SPI models concentrate on the downstream phases of development. The SEI’s Capability Maturity Model for Software,3 for example, explicitly addresses requirements processes only in the level two Requirements Management key practice area. The more recent Systems Engineering CMM4 has greater coverage of requirements engineering, but is widely and incorrectly perceived to be aimed only at niche industries.

Sawyer, P. and Sommerville, I. (1999). Capturing the Benefits of Requirements Engineering. IEEE Software, 16 (2). pp. 78-85.

Requirements Process Improvement through the Phased Introduction of Good Practice - Pete Sawyer, Ian Sommerville and Stephen Viller

Current process improvement and maturity models pay little attention to requirements engineering. Typically, requirements engineering is considered to be a single activity in the overall development process. Even where this is not strictly the case, the requirements activities are not elaborated in sufficient detail to permit the derivation of an improvement plan. This is unfortunate because requirements engineering is increasingly recognised as a problem. Despite the regular improvement of techniques for eliciting, analysing, validating and managing requirements, even otherwise mature organisations repeatedly experience requirements problems. This paper describes a good practice- based approach to requirements engineering process improvement which aims to fill the gap left by existing process improvement methods. This distils practical information from over 60 requirements practices and provides a framework to help organisations identify their problem areas and deploy the practices most appropriate to their needs.

Sawyer, P., Viller, S. and Sommerville, I. (1998). Requirements Process Improvement through the Phased Introduction of Good Practice. Software Process Journal. 3 (1), 19-34.

Viewpoint-oriented requirements engineering

The work here on viewpoints, in conjunction with other work on the same topic (e.g. Finkelstein's work at Imperial College) has been quite influential in requirements engineering. The first paper below is a good starting point for further exploration of this topic.

Viewpoints for requirements elicitation: a practical approach - I. Sommerville, P. Sawyer and S. Viller

This paper introduces an approach to multi-perspective requirements engineering (PREview) which has been designed for industrial use and discusses our practical experience in applying PREview. We have developed a flexible model of viewpoints and, using examples from an industrial application, show how this can be used to organise system requirements derived from radically different sources. We show how ‘concerns’, which are key business drivers of the requirements elicitation process, may be used to elicit and validate system requirements. They are decomposed into questions which must be answered by system stakeholders. We briefly describe the process of using PREview which has been designed to allow incremental requirements elicitation. Finally, we discuss some practical considerations which emerged when the approach was applied in industry.

Sommerville, I. and Sawyer, P. (1998). Viewpoints for requirements elicitation: a practical approach. Proc. IEEE Int. Conf. on Requirements Engineering, Colorado Springs. IEEE Press.

Viewpoints: Principles, Problems and a Practical Approach to Requirements Engineering
- Ian Sommerville and Pete Sawyer

The paper includes a survey and discussion of viewpoint-oriented approaches to requirements engineering and a presentation of new work in this area which has been designed with practical application in mind. We describe the benefits of viewpoint-oriented requirements engineering and describe the strengths and weaknesses of a number of viewpoint-oriented methods. We discuss the practical problems of introducing viewpoint-oriented requirements engineering into industrial software engineering practice and why these have prevented the widespread use of existing approaches.
We then introduce a new model of viewpoints called Preview. Preview viewpoints are flexible, generic entities which can be used in different ways and in different application domains. We describe the novel characteristics of the Preview viewpoints model and the associated processes of requirements discovery, analysis and negotiation. Finally, we discuss how well this approach addresses some outstanding problems in requirements engineering (RE) and the practical industrial problems of introducing new requirements engineering methods.

Sommerville, I. and Sawyer, P. (1997). Viewpoints: Principles, problems and a practical approach to requirements engineering. Annals of Software Engineering. 3, 101-30.