Goal sketching: An Agile Approach to Clarifying Requirements

This paper describes a technique that can be used as part of a simple and practical agile method for requirements engineering. It is based on disciplined goal-responsibility modelling but eschews formality in favour of a set of practicality objectives. The technique can be used together with Agile Programming to develop software in internet time. We illustrate the technique and introduce lazy refinement, responsibility composition and context sketching. Goal sketching has been used in a number of real-world development projects, one of which is described here.

[1]  三嶋 博之 The theory of affordances , 2008 .

[2]  Alistair Cockburn,et al.  Patterns for Effective Use Cases , 2002 .

[3]  Adam Wojciechowski,et al.  Extreme programming modified: embrace requirements engineering practices , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[4]  Scott W. Ambler,et al.  Agile modeling: effective practices for extreme programming and the unified process , 2002 .

[5]  William M. Hix,et al.  Assumption-Based Planning: A Planning Tool for Very Uncertain Times , 1995 .

[6]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[7]  Alan M. Davis,et al.  Just Enough Requirements Management: Where Software Development Meets Marketing , 2005 .

[8]  Tim Kelly,et al.  The Goal Structuring Notation – A Safety Argument Notation , 2004 .

[9]  Peter Checkland,et al.  Soft Systems Methodology in Action , 1990 .

[10]  Pete Sawyer,et al.  Requirements Engineering: A Good Practice Guide , 1997 .

[11]  Michael A. Jackson,et al.  Problem Frames - Analysing and Structuring Software Development Problems , 2000 .

[12]  Ron Jeffries,et al.  Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process , 2002 .

[13]  Dean Leffingwell,et al.  Managing Software Requirements: A Use Case Approach , 2003 .

[14]  Rachel Harrison,et al.  Goal Sketching: Towards Agile Requirements Engineering , 2007, International Conference on Software Engineering Advances (ICSEA 2007).

[15]  A. van Lamsweerde Goal-oriented requirements enginering: a roundtrip from research to practice [enginering read engineering] , 2004 .

[16]  Armin Eberlein Agile Requirements Definition: A View from Requirements Engineering , 2002 .

[17]  Richard Stevens,et al.  Writing Better Requirements , 2002 .

[18]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[19]  Ken Orr,et al.  Agile requirements: opportunity or oxymoron? , 2004, IEEE Software.

[20]  Dorit Nevo,et al.  How to avoid disappointment by design , 2007, CACM.

[21]  Karl Cox,et al.  Requirements engineering for e-business systems: integrating Jackson problem diagrams with goal modeling and BPM , 2004, 11th Asia-Pacific Software Engineering Conference.

[22]  Axel van Lamsweerde,et al.  Goal-oriented requirements enginering: a roundtrip from research to practice [enginering read engineering] , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[23]  Rachel Harrison,et al.  A lightweight technique for assessing risks in requirements analysis , 2008, IET Softw..

[24]  Alistair Cockburn,et al.  Writing Effective Use Cases , 2000 .

[25]  Tom Gilb,et al.  Principles of software engineering management , 1988 .

[26]  Linda Rising,et al.  The Scrum Software Development Process for Small Teams , 2000, IEEE Softw..

[27]  Walter G. Vincenti,et al.  What Engineers Know and How They Know It: Analytical Studies from Aeronautical History. , 1992 .

[28]  Rachel Harrison,et al.  Goal Sketching with Activity Diagrams , 2008, 2008 The Third International Conference on Software Engineering Advances.