Goal Sketching: Towards Agile Requirements Engineering

Published on Aug 1, 2007
· DOI :10.1109/ICSEA.2007.36
Kenneth Duncan Boness5
Estimated H-index: 5
(University of Reading),
Rachel Harrison21
Estimated H-index: 21
This paper describes a technique that can be used as part of a simple and practical agile method for requirements engineering. 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.
  • References (11)
  • Citations (18)
📖 Papers frequently viewed together
267 Citations
1 Author (Armin Eberlein)
48 Citations
3 Authors (V. Dattatreya, ..., V. M. Rayudu)
78% of Scinapse members use related papers. After signing in, all features are FREE.
We show that, in today's world, a requirement without agility is just as bad as agility without requirements. We have discovered a consensus that systems analysis and requirements definition, in particular, have fallen on hard times. Ten or 15 years ago we taught people structured analysis, information engineering, data modeling, and working with computer-aided software engineering tools to turn those requirements into running programs. Rather than understanding the user's business and informati...
38 CitationsSource
#1Jerzy Nawrocki (PUT: Poznań University of Technology)H-Index: 13
#2Michal Jasinski (PUT: Poznań University of Technology)H-Index: 4
Last. Adam Wojciechowski (PUT: Poznań University of Technology)H-Index: 10
view all 4 authors...
Extreme programming (XP) is an agile (lightweight) software development methodology and it becomes more and more popular. XP proposes many interesting practices, but it also has some weaknesses. From the software engineering point of view the most important issues are: maintenance problems resulting from very limited documentation (XP relies on code and test cases only), and lack of wider perspective of a system to be built. Moreover, XP assumes that there is only one customer representative. In...
59 CitationsSource
#1Scott W. AmblerH-Index: 1
In this innovative book, Scott Ambler reviews how to: 1. Model on an XP project without detracting from its fast-moving and agile software development approach. 2. Simplify the modeling disciplines/workflows of the UP without losing any of the true benefits of those disciplines. 3. Use modeling to explore an issue or to facilitate communication. 4. Effectively apply the UML, and extend it with other methodologies, to meet your real-world development needs. 5. Reduce the documentation burden on y...
373 Citations
#1Armin Eberlein (U of C: University of Calgary)H-Index: 22
48 Citations
#1A. van Lamsweerde (UCL: Université catholique de Louvain)H-Index: 37
Goals capture, at different levels of abstraction, the various objectives the system under consideration should achieve. Goal-oriented requirements engineering is concerned with the use of goals for eliciting, elaborating, structuring, specifying, analyzing, negotiating, documenting, and modifying requirements. This area has received increasing attention. The paper reviews various research efforts undertaken along this line of research. The arguments in favor of goal orientation are first briefl...
1,391 CitationsSource
#1Michael JacksonH-Index: 31
This book is a must-have for all IT professionals facing software development problems on a daily basis. If you are a systems analyst or requirements engineer it will provide an essential, practical guide from the task of identifying the problem to making the descriptions needed to resolve it.
810 Citations
In today's software development environment, requirements often change during the product development life-cycle to meet shifting business demands, creating endless headaches for development teams. We discuss our experience in implementing the Scrum software development process to address these concerns.
373 CitationsSource
#1Dean LeffingwellH-Index: 2
#2Don WidrigH-Index: 2
From the Publisher: Despite the wealth of development knowledge, experience, and tools available today, a substantial percentage of software projects fail, often because requirements are not correctly determined and defined at the outset, or are not managed correctly as the project unfolds. This Second Edition of the popular text Managing Software Requirements focuses on this critical cause of failure and offers a practical, proven approach to building systems that meet customers' needs on time ...
189 Citations
#1Craig LarmanH-Index: 7
“This edition contains Larman's usual accurate and thoughtful writing. It is a very good book made even better.”—Alistair Cockburn, author, Writing Effective Use Cases and Surviving OO Projects“Too few people have a knack for explaining things. Fewer still have a handle on software analysis and design. Craig Larman has both.”—John Vlissides, author, Design Patterns and Pattern Hatching“People often ask me which is the best book to introduce them to the world of OO design. Ever sinc...
298 Citations
#1A. van LamsweerdeH-Index: 37
#2Anne DardenneH-Index: 3
Last. Françoise DubisyH-Index: 1
view all 4 authors...
A dry semipermeable membrane, which is adapted to separate solutes from solutions by reverse osmosis methods, is prepared by a process which comprises casting a film from a casting solution containing a cellulose derivative, a first additive, and a suitable amount of an organic compound with an organic solvent as the balance of the casting solution; evaporating a portion of said organic solvent from said cast film; dipping the partially evaporated film in water to extract the remainder of said o...
70 Citations
Cited By18
#1Woogon Shim (Ajou University)
Agile and lean are now the mainstream tenets of software development. This development methodology is attracting attention because it can develop software that operates quickly despite uncertain situations and limited information (requirements), and it can adaptively develop while checking feedback both frequently and regularly. The key is to welcome change without resistance, which is not limited to development but also requires changes in requirement management. However, there is a lack of pra...
#1Woogon Shim (LG Electronics)H-Index: 1
#2Seok-Won Lee (Ajou University)H-Index: 13
Abstract Nowadays agile development has become a mainstream development methodology. Yet agile is still lacking in how in-depth it deals with Requirement Engineering (RE) compared to the other development stages. There have been attempts to apply agile RE techniques to traditional development and conversely to apply traditional RE techniques to agile development. But the biggest problem is that it is difficult to maintain the essence of agile which is to “collaborate”, “(iterative and frequent) ...
3 CitationsSource
#1Mirosław Ochodek (PUT: Poznań University of Technology)H-Index: 7
#2Sylwia Kopczynska (PUT: Poznań University of Technology)H-Index: 5
Abstract Context:Requirements Engineering (RE) is one of the key processes in software development. Since Agile software development advocates continuous improvement, the question arises which Agile RE practices are the most essential and shall be adopted/improved at first? Objective:Investigate and rank the Agile RE practices based on how practitioners perceive their importance for a software project. Method:We conducted a survey asking 136 Agile software development practitioners how they perc...
7 CitationsSource
#1Shalinka Jayatilleke (La Trobe University)H-Index: 2
#2Richard Lai (La Trobe University)H-Index: 13
ContextSoftware requirements are often not set in concrete at the start of a software development project; and requirements changes become necessary and sometimes inevitable due to changes in customer requirements and changes in business rules and operating environments; hence, requirements development, which includes requirements changes, is a part of a software process. Previous work has shown that failing to manage software requirements changes well is a main contributor to project failure. G...
8 CitationsSource
#1Kaiss ElgharianiH-Index: 1
#2Nazri KamaH-Index: 7
The popularity of agile methodology has been increased since agile offers further collaboration. Requirements engineering (RE) is one of the software development process in agile approaches. The features of face to face communication is one of agile way which unlike to other traditional software methods. Software developers are using the definition agile way to improve the agile way of activities. Besides, the challenge of dealing with RE practices is not much is known in agile way or model. How...
6 CitationsSource
#1Irum Inayat (Information Technology University)H-Index: 7
#2Siti Salwah Salim (Information Technology University)H-Index: 12
Last. Shahaboddin Shamshirband (IAU: Islamic Azad University)H-Index: 38
view all 5 authors...
We mapped out 17 requirements engineering practices adopted by agile practitioners so far.Identified 5 challenges of traditional requirements engineering overcome by adopting agile requirements engineering.Found 8 challenges posed by following agile requirements engineering.Findings suggest that research context needs attention in terms of more empirical.The empirical results can help to analyse impact of adopting agile requirements engineering. Unlike traditional software development methods, a...
135 CitationsSource
#1Irum Inayat (UM: University of Malaya)H-Index: 7
#2Lauriane Moraes (PUCRS: Pontifícia Universidade Católica do Rio Grande do Sul)H-Index: 1
Last. Siti Salwah Salim (UM: University of Malaya)H-Index: 12
view all 4 authors...
The software development industry has rapidly accepted agile methods. Empirical studies suggest that due to their flexible and emergent nature, agile methods brought solutions to several chronic problems of traditional software development methods. One among the many is the acceptance of requirements changes at later stages of development. However, knowledge about the solutions that agile brought to requirements engineering (RE) is fragmented. Also, little is known about whether the agile philos...
9 CitationsSource
Requirements Engineering (RE) is a key activity in the development of software systems and is concerned with the identification of the goals of stakeholders and their elaboration into precise statements of desired services and behavior. The research describes an Agile Requirements Engineering approach for re-engineering & changes in existing Brownfield adaptive system. The approach has few modifications that can be used as a part of SCRUM development process for re-engineering & changes. The app...
The combination between agile software engineering and distributed engineering is gaining a growing interest. Combining these however creates an interesting paradox. Where agile clearly states that documentation is not the most important thing, from the field of globally distributed engineering a higher focus on documentation is observed. In this thesis the field of requirements engineering is also taken into the mix. Combining these three a user-story model is defined to take advantage of the, ...
#1Kenneth Duncan Boness (University of Reading)H-Index: 5
Last. Rachel Harrison (Oxford Brookes University)H-Index: 21
view all 3 authors...
Abstract Context During development managers, analysts and designers often need to know whether enough requirements analysis work has been done and whether or not it is safe to proceed to the design stage. Objective This paper describes a new, simple and practical method for assessing our confidence in a set of requirements. Method We identified four confidence factors and used a goal oriented framework with a simple ordinal scale to develop a method for assessing confidence. We illustrate the m...
12 CitationsSource