Creativity Techniques in Agile Requirements Processes

Similar documents
Hollis, B. & Maiden, N. (2013). Extending Agile Processes with Creativity Techniques. IEEE Software, 30(5), pp doi: /MS.2012.

Utilisation v Productivity who gets the gold medal? Margaret Morgan Helen Meek

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Software Development Methodologies

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK

Agile Extension to the BABOK Guide

The Agile Manifesto is based on 12 principles:

User and Client Satisfaction in Agile Development

Agile for Product Owners

From Agile by Design. Full book available for purchase here.

A Glossary of Scrum / Agile Terms

2. MANIPULATED RESULTS OF SURVEY. C o u n c i l f o r I n n o v a t i v e R e s e a r c h w w w. c i r w o r l d. c o m

LEAN AGILE POCKET GUIDE

Agile and lean methods for managing application development process

Improving Video Game Development: Facilitating Heterogeneous Team Collaboration Through Flexible Software Processes

Investigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations

PMI Agile Certified Practitioner (PMI ACP) Boot Camp Course AG05; 4 Days, Instructor-led

Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014

Using i for Transformational Creativity in Requirements Engineering

Review of Creative leadership: Skills that drive change

Models of Software Development

Business Analysts in an Agile World. Christian Antoine

Successful Strategies for Custom Software Development

Agile extreme Development & Project Management Strategy Mentored/Component-based Workshop Series

Clinical Risk Management: Agile Development Implementation Guidance

Transition to Agile Development

Agile and Secure: Can We Be Both?

Atomate Development Process. Quick Guide

Sept 10, The Agile Business Analyst

Introduction to Agile and Scrum

Traditional requirements

Agile in a Safety Critical world

Zarządzanie projektem agile The Mystery of Effective IT by Bogdan Bereza blogomotion.com/mystery 1 (30) Effective IT?

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Certified Business Analysis. Professional (CBAP) version 3

SESSION 303 Wednesday, March 25, 3:00 PM - 4:00 PM Track: Support Center Optimization

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Agile Software Development Methodologies and Its Quality Assurance

Iteration Planning. also called Iteration Kickoff

Requirement Engineering Process in Agile Software Development: Review

Generalizing Agile Software Development Life Cycle

Project Success. The Prince of Scrum. Using Scrum in a Prince 2 Environment Project Success Ltd

AGILE & SCRUM. Revised 9/29/2015

Mariusz Chrapko. Before: Software Quality Engineer/ Agile Coach, Motorola, Poland. My Public Profile:

Agile Project Management By Mark C. Layton

Agile Scrum Workshop

Comparing Agile Software Processes Based on the Software Development Project Requirements

Sometimes: 16 % Often: 13 % Always: 7 %

Your Agile Team s Indispensible Asset

Perspectives on Productivity and Delays in Large-Scale Agile Projects

Is there a Doctor in the House? A Business Analyst in an Agile Business Dot Tudor TCC Agile Business Conference 2015

Practice Overview. REQUIREMENTS DEFINITION Issue Date: <mm/dd/yyyy> Revision Date: <mm/dd/yyyy>

The Business Analyst Role in Agile Projects and How To Do It

Build the Right Software First Time

How do we achieve more with less?

Software Requirements, Third Edition

Managing Agile Projects in TestTrack GUIDE

As the use of agile approaches

D25-2. Agile and Scrum Introduction

Agile and lean methods for managing application development process

Scrum in a Large Project Theory and Practice

Secrets of a Scrum Master: Agile Practices for the Service Desk

Agile Project Management and Agile Practices Training; with a Scrum Project that you will do.

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

DSDM DSDM. CONSORTiUM. CONSORTiUM. AgileBA. The Handbook for Business Analysts. Extract The Requirements Lifecycle In An Agile Project.

Laboratório de Desenvolvimento de Software

Issues in Internet Design and Development

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

#POvsPM. John Milburn, Pragmatic Marketing David West, CEO Scrum.org

Requirements Engineering: A Roadmap

Agile Methods for Analysis

Assignment 1: Your Best Backlog

A Business Analysis Perspective on Business Process Management

Applying Agile Project Management to a Customized Moodle Implementation

SCRUM 1. Upon what type of process control is Scrum based? a. Empirical b. Hybrid c. Defined d. Complex

WE ARE FOCUSED ON HELPING OUR CLIENTS WORK SMARTER AND MORE EFFICIENTLY SO THAT TOGETHER, WE CAN EMPOWER PEOPLE TO DELIVER GREAT RESULTS.

CDC UNIFIED PROCESS PRACTICES GUIDE

An Overview of Quality Assurance Practices in Agile Methodologies

Software processes that are:

Agile Training Portfolio

2IOE0 Interactive Intelligent Systems

TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes

Agile and Secure: OWASP AppSec Seattle Oct The OWASP Foundation

RISK MANAGMENT ON AN AGILE PROJECT

The Role of Agile Methodology in Project Management

When is Agile the Best Project Management Method? Lana Tylka

Agile user-centred design

Statistics New Zealand is Agile Continued Implementation of AGILE Process at Statistics NZ

Agile Systems Engineering: What is it and What Have We Learned?

Certified ScrumMaster Workshop

Learning and Coaching Agile Methods. Görel Hedin Computer Science Lund University, Sweden

AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson Jyväskylä

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

Agile Requirements Best Practices

Software Development Life Cycle (SDLC)

Scrum and Kanban 101

The Basics of Scrum An introduction to the framework

Requirements Engineering for Software

Agile Based Software Development Model : Benefits & Challenges

Transcription:

Techniques in Agile Requirements Processes Professor Neil Maiden What s in the Talk 1. Creative requirements processes Existing views on requirements elicitation 2. workshops Strengths and weaknesses 3. in agile projects Injecting creativity into agile processes Agile creativity techniques A case study 4. Future work 1

Creative Requirements Processes Requirements focus on elicitation Ask stakeholders what they want Limited by perceptions of what is possible Separation of requirements from design Discourages thinking about possible solutions when eliciting requirements Requirements encapsulate creative thought Requirements are desired properties of a future system Results of creative work often expressed as requirements The Customer is a Rear-View Mirror, not a Guide to the Future George Colony - Forrester Research - Companies go out of business providing everything that their customers ask for - Our job is to give the client, on time and on cost, not what he wants, but what he never dreamed he wanted; and when he gets it, he recognizes it as something he wanted all the time - Denys Lasdon, architect 2

definition Sternberg and Lubart (1999) define creativity as the ability to produce work that is both novel (i.e. original, unexpected) and appropriate (i.e. useful, adaptive concerning task constraints) Draw on theories of creativity Psychology and artificial intelligence Original CPS model (Osborn 1953) Six stages: mess finding, data finding, problem finding, idea finding, solution finding and acceptance finding Problem understanding Idea generation Planning for action Frame Requirements Engineering as Creative Problem Solving [RE 10] CPS Method (Osborn & Parnes 1953) Osborn-Parnes process stages Software development processes 1. Objective finding: brainstorm a list of Goal modeling [van Lamsweerde 2008], objectives and goals Requirements mining [Goldin & Berry 1997] 2. Fact finding: brainstorm all facts related Requirements acquisition [Maiden & Rugg 1996], to each objective for all perspectives and modeling languages [Greenspan et al. 1994], participants satisfaction arguments [Hammond et al. 2001] 3. Problem finding: brainstorm different Goal modelling [Yu & Mylopoulos 1994], requirements ways to express the problem X expression [Robertson & Robertson 1999] 4. Idea finding: divergent brainstorming Requirements decompostion and refinement writing down all ideas, then convergence and [van Lamsweerde X 2008], architecture patterns [Buschmann et al. 1996] selecting relevant ideas 5. Solution finding: Take action on selected Architecture modeling, nonfunctional ideas, and develop solution selection requirements for selection criteria [Franch & Maiden 2003] criteria 6. Acceptance finding: consider real-world Systems design and implementation, downstream project issues to overcome, implementation issues planning 3

Workshops Pin boards structured by use case Workshop period Preparation Illumination Verification Preparation Workshop period Facilitated guidance at all times Converge Diverge Incubation Illumination Verification Preparation Workshop period Diverge Incubation Converge Diverge Incubation Illumination Verification Converge Games to encourage playfulness Running Workshops Some successes Applied in challenging requirements projects in European air traffic management, food information traceability, electronic vehicle use Generated novel and useful concepts and requirements Successful techniques constraint removal, analogies, storyboarding Greater creative outcomes on second workshop day Published extensively just ask 4

Running the Workshops Some remaining challenges Most workshops lasted two days Difficult to obtain stakeholders Changing requirements practices Smaller software projects Project budgets tighter Adoption of agile methods Applicable to non-software projects 2 days in Agile Projects [IEEE Software 2013] Agile techniques More innovative solutions Little empirical evidence Counter-claims [Oza & Abrahamsson 2011] Obvious challenges Limited use of creativity theories, techniques and tools Lack of incubation time Focus on current work Extended agile processes Explicit creativity support 5

Opportunities in Agile for Creative Thinking Investigated agile system development processes Based on Ambler model [2005] 1 in envisioning process Epics Initial requirements and architecture Initial workshop(s) requirements 2 Sprint zero in epic process Selected epics Iteration Working system Construction iterations Review Release system into production Working system Release The Envisioning Process Adapted from CPS v6.2 model 1. Clarifying the challenge 2. Getting ideas 3. Planning for implementation Understanding the challenge Generating ideas Preparing for action Research Plan workshop(s) Evaluate and refine Epic backlog 6

The Epic Process Adapted from Isaken s CPS v6.2 model Identify potential Understanding the challenge Generating ideas Preparing for action Evaluate and select Research epics Plan workshop(s) Evaluate and refine Project backlog Selecting epic(s) with creative potential Backlog of Epics Created during envisioning workshop Selection criteria 1. Are ambiguous 2. Are complex 3. Need for novelty or competitive advantage 4. Have creative potential An Evaluation of Epic Stage Agile project at major UK broadcaster More personalized television listings website Four-person team Lead developer, head of design, business analyst and other developer Applied Kanban, Scrum and XP development practices Generated backlog of 216 epics Applied extended Epic process In what ways might the system change a user s profile based on their behaviour inside or outside of the website? 7

The 45-Minute Workshop 1. Brainstorming Open brainstorm to share favourite ideas and allow others to build on them workshop(s) 2. Random stars Adopted from Hall of Fame [Michalko 2006] Used characters to force connections to generate new requirements according to themes! 3. Supplement - PICL Technique From Higgins [2005] 25 randomly-selected short statements The 14 Random Stars! 8

The Evaluate-and-Refine Stage One-week period of incubation workshop(s) Evaluate and refine Project backlog one week Team met once to select requirements to take forward Allowed more creative thinking about requirements Workshop Outcomes Lasted 55 minutes Lasted 30 minutes 30 new requirements Lasted 20 minutes 10 new requirements 9

Generated Requirements Brainstormed requirements Novel uses of websites and technologies Digital drop-in to see friends viewing People s reactions to programmes using webcam Random stars and PICL requirements Capturing user emotional responses Characters as personas, avoid becoming a social leper Two days after workshop Product owner interest in 2 requirements One week later after incubation Requirements changed Evaluating Workshop Requirements Versus Original Backlog of 20 Epics 20 Workshop Requirements Novelty and usefulness comparison by 10 experts Novelty rating 2.69 versus 3.28 out of 5, p-value < 0.001 Usefulness rating 3.37 versus 2.97 of 5, p-value < 0.001 One killer idea rated very novel and very useful Effect from running workshop 10

Lessons Learned techniques enhance Other techniques experimented with creativity triggers, combining story elements, creative story telling Seek killer ideas Numerous threats Need for repetition Contacts N.A.M.Maiden@city.ac.uk @NeilMaiden 11