Introduction to User Stories

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Introduction to User Stories"

Transcription

1 Introduction to User Stories Announcements FAQ Search Home AMDD Best Practices Architecture Requirements Analysis Design Documentation Models Modeling Style Contact Us User stories are one of the primary development artifacts for Scrum and Extreme Programming (XP) project teams. A user story is a very high-level definition of a requirement, containing just enough information so that the developers can produce a reasonable estimate of the effort to implement it. This article covers the following topics: Introduction to user stories Initial user stories (informal) Initial user stories (formal) User stories and planning User stories throughout the agile lifecycle Detailing a user story Epics Themes Ads 1. Introduction to User Stories A good way to think about a user story is that it is a reminder to have a conversation with your customer (in XP, project stakeholders are called customers), which is another way to say it's some just-in-time analysis. In short, user stories are very slim and high-level requirements artifacts. 2. Initial User Stories (Informal) As you can see in Figure 1 user stories are small, much smaller than other usage requirement artifacts such as use cases or usage scenarios. It's important to recognize that each of the s Figure 1 represents a single user story. Figure 1. Example user stories. Students can purchase monthly parking passes online. Parking passes can be paid via credit cards. Parking passes can be paid via PayPal. Professors can input student marks. Students can obtain their current seminar schedule. Students can order official transcripts. Students can only enroll in seminars for which they have prerequisites. Transcripts will be available online via a standard browser. Important considerations for writing user stories: 1. Stakeholders write user stories. An important concept is that your project stakeholders write the user stories, not the developers. User stories are simple enough that people can lea in a few minutes, so it makes sense that the domain experts (the stakeholders) write them. 2. Use the simplest tool. User stories are often written on index cards as you see in Figure 2 (at least when your project team is co-located). Index cards are very easy to work with an an inclusive modeling technique. 3. Remember non-functional requirements. Stories can be used to describe a wide variety of requirements types. For example in Figure 1 the Students can purchase parking passes story is a usage requirement similar to a use case whereas the Transcripts will be available online via a standard browser is closer to a technical requirement. 4. Indicate the estimated size. You can see in Figure 2 that it includes an estimate for the effort to implement the user story. One way to estimate is to assign user story points to eac indication of how long it will take a pair of programmers to implement the story. The team then knows that if it currently takes them on average 2.5 hours per point;; therefore the user s will take around 10 hours to implement. 5. Indicate the priority. Requirements, including defects identified as part of your independent parallel testing activities or by your operations and support efforts, are prioritized by y stakeholders (or representatives thereof such as product owners) and added to the stack in the appropriate place. You can easily maintain a stack of prioritized requirements by mov around in the stack as appropriate. You can see that the user story card includes an indication of the priority;; I often use a scale of one to ten with one being the highest priority. Othe approaches are possible priorities of High/Medium/Low are often used instead of numbers and some people will even assign each card it s own unique priority order number (e.g. 344, want to indicate the priority somehow in case you drop the deck of cards, or if you're using more sophisticated electronic tooling. Pick a strategy that works well for your team. You als priority changed at some point in the past, this is a normal thing, motivating the team to move the card to another point in the stack. The implication is that your prioritization strategy n this sort of activity. My advice is to keep it simple. 6. Optionally include a unique identifier. The card also includes a unique identifier for the user story, in this case 173. The only reason to do this would be to do this is if you need to sort of traceability between the user story and other artifacts, in particular acceptance tests. Figure 2. User story card (informal, high level).

2 2. Initial User Stories (Formal) In User Stories Applied Mike Cohn suggests a more formal approach to writing user stories. He suggests the format: As a (role) I want (something) so that (benefit). For example, the user story of Figure 2 could be rewritten as "As a Student I want to purchase a parking pass so that I can drive to school", as you see in Figure 3. My experience is that this approach helps you to think about who a certain feature is built for and why, and as a result is the approach that I typically prefer to take. The best advice that I can give is to try both and see which approach works best for you. Figure 3. User story card (formal, high level). 4. User Stories and Planning There are two areas where user stories affect the planning process on agile projects: 1. Scheduling. Figure 4 depicts the agile change management management process where work items, including stories, are addressed in priority order. So, the implication is that t assigned to a story affects when the work will be done to implement that requirement. As discussed earlier, project stakeholders are responsible for prioritizing requirements. Note tha numerical prioritization strategy was taken (perhaps on a scale of 1 to 20) whereas in Figure 3 a MoSCoW (Must Should Could Won't) approach was used. Stakeholders also have the new requirements, change their minds about existing requirements, and even reprioritize requirements as they see fit. However, stakeholders must also be responsible for making deci providing information in a timely manner. 2. Estimating. Developers are responsible for estimating the effort required to implement the things which they will work on, including stories. The implication is that because you can o work in an iteration, the size of the work items (including stories), affect when those work items will be addressed. Although you may fear that developers don t have the requisite estim this is often true at first, the fact is that it doesn t take long for people to get pretty good at estimating when they know that they re going to have to live up to those estimates. If you've pair programming practice then a user story must be able to be implemented by two people in a single iteration/sprint. Therefore if you re working in one week iterations each user story less than one week worth of work. Of course, if you aren't taking a non-solo development approach such as pair programming the user story would need to be implementable by a sing a single iteration. Large stories, sometimes called epics, would need to be broken up into smaller stories to meet this criteria. Figure 4. Disciplined agile change management process.

3 5. User Stories Throughout the le Life Cycle As you can see in the agile delivery life cycle of Figure 5, there are several distinct "phases" or seasons in the life cycle (some people will refer to the agile delivery life cycle as a release r 6 depicts the AMDD project life cycle, which calls out modeling activities during the delivery life cycle. There are three common times when stories will be worked on during an agile project: 1. Iteration 0. You often create a stack of user stories during iteration 0 as part of your requirements envisioning activities to identify the scope of your system. 2. Construction. During construction iterations you will identify new stories, split existing stories when you realize that they re too large to be implemented in single iteration, reprioritize e or remove stories that are no longer considered to be in scope. The point is that your stories evolve over time just like other types of requirements models evolve. Furthermore, enhanc may be identified by your support staff during the production phase and then forwarded to a development team as they are working on an upcoming release. These enhancement req effectively new stories (albeit in a different format). 3. Release. Sometimes new stories will be identified during the release phase, although this isn't very common as the focus of release is on hardening the system and not on new functi does happen, and these stories would be prioritized and placed on the stack in priority order just as you normally would. Figure 5. A detailed agile SDLC. Figure 6. The AMDD lifecycle: Modeling activities throughout the life cycle of a project.

4 6. Detailing a User Story Because user stories contain so little information you will need to flesh them out a bit when you first work with them. There are three common times when you would do this: 1. During JIT analysis/model storming with stakeholders. Remember the early definition of "user stories are a reminder to have a conversation with your stakeholders"? Well, during conversation you're going to explore the details behind that user story. It is quite common the create screen sketches with stakeholders to explore what they want. It is also common acceptance criteria, or confirmations, which the stakeholders will use to validate that the user story has been implemented correctly. Figure 7 shows how the back side of a user story used to capture the confirmations. Of course, other tools which are more sophisticated than index cards can be used for this purpose as well. 2. During iteration planning. As part of the estimation effort it is quite common to list programming tasks required to implement the user story. 3. During implementation. When you start to work on implementing the user story you may decide to create some rough sketches of what you re going to build, perhaps a flow chart o diagram representing the relevant business logic. Figure 7. User story card (formal, with confirmations). 7. Epics

5 Epics are large user stories, typically ones which are too big to implement in a single iteration and therefore they need to be disaggregated into smaller user stories at some point. Epics are typically lower priority user stories because once the epic works its way towards the top of the work item stack, see Figure 4, it is reorganized into smaller ones. It doesn't make s disaggregate a low-priority epic because you'd be investing time on something which you may never get to addressing, unless a portion of the epic is high priority and needs to be teased out. defer commitment, in this case model on a just-in-time (JIT) basis, to increase your overall productivity. 8. Themes A theme is a collection of related user stories. For example, for a university registration system there might be themes around students, course management, transcript generation, grade adm financial processing. Themes are often used to organize stories into releases or to organize them so that various subteams can work on them. 9. Suggested Reading le Data Home Page Artifacts for le Modeling: The UML and Beyond Modeling Style Guidelines Why Extend the UML Beyond Object and Component Technology? This book is the defacto standard for how to write user stories. Period. The Object Primer 3rd Edition: le Model Driven Development with UML 2 is an important reference book for agile modelers, describing how to develop 35 type models including all 13 UML 2 diagrams. Furthermore, this book describes the techniques of the Full Lifecycle Object Oriented Testing (FLOOT) methodology to fundamental testing skills which you require to succeed at agile software development. The book also shows how to move from your agile models to source code (Ja provided) as well as how to succeed at implementation techniques such as refactoring and test-driven development (TDD). The Object Primer also includes a chap the critical database development techniques (database refactoring, object/relational mapping, legacy analysis, and database access coding) from my award-winn Database Techniques book. User Stories (Don Wells) A good white paper. le Modeling: Effective Practices for Extreme Programming and the Unified Process is the seminal book describing how agile software developers approach m documentation. It describes principles and practices which you can tailor into your existing software process, such as XP, the Rational Unified Process (RUP), or Unified Process (AUP), to streamline your modeling and documentation efforts. Modeling and documentation are important aspects of any software project, including and this book describes in detail how to elicit requirements, architect, and then design your system in an agile manner. The Elements of UML 2.0 Style describes a collection of standards, conventions, and guidelines for creating effective UML diagrams. They are based on sound, p engineering principles that lead to diagrams that are easier to understand and work with. These conventions exist as a collection of simple, concise guidelines that if consistently, represent an important first step in increasing your productivity as a modeler. This book is oriented towards intermediate to advanced UML modelers, alt numerous examples throughout the book it would not be a good way to learn the UML (instead, consider The Object Primer). The book is a brief 188 pages long and pocket-sized so it's easy to carry around. Translations Japanese Let Us Help We actively work with clients around the world to improve their information technology (IT) practices, typically in the role of mentor/coach, team lead, or trainer. A full description of what we d contact us, can be found at Scott W. Ambler + Associates. Copyright Scott W. Ambler This site owned by Ambysoft Inc.

Agile Techniques for Object Databases

Agile Techniques for Object Databases db4o The Open Source Object Database Java and.net Agile Techniques for Object Databases By Scott Ambler 1 Modern software processes such as Rational Unified Process (RUP), Extreme Programming (XP), and

More information

The Agile System Development Life Cycle (SDLC)

The Agile System Development Life Cycle (SDLC) The Agile System Development Life Cycle (SDLC) Surveys Podcasts Contact Me Mailing List Site Map Search Home Articles Agility@Scale Blog Books IT I'm often asked by clients to facilitate workshops overviewing

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 15 Agile Methodologies: AUP 1 Agile Unified Process (AUP) Proposed by Ambler as a simplified version of the Rational Unified Process (RUP).

More information

Introduction to Test Driven Development (TDD)

Introduction to Test Driven Development (TDD) Page 1 of 9 Introduction to Test Driven Development (TDD) Home Search Agile DBAs www.agiledata.org: Techniques for Successful Evolutionary/Agile Database Development Developers Enterprise Architects Enterprise

More information

White Paper. Improved Software Quality with Agile Processes. Research and Development Application Services. Author: Tabinda Aftab.

White Paper. Improved Software Quality with Agile Processes. Research and Development Application Services. Author: Tabinda Aftab. White Paper Improved Software Quality with Agile Processes Author: Tabinda Aftab Research and Development Application Services 2 Introduction The fundamental nature of software development is changing,

More information

PMI-ACP Study Notes: Domain V Adaptive Planning

PMI-ACP Study Notes: Domain V Adaptive Planning 1 / 7 PMI-ACP Study Notes: Domain V Adaptive Planning [NEW! For the 2015 July PMI-ACP Exam syllabus] The PMI-ACP Exam consists of 120 questions which can be categorised into seven domain. The fourth domain:

More information

Agile Software Development Methodologies and Its Quality Assurance

Agile Software Development Methodologies and Its Quality Assurance Agile Software Development Methodologies and Its Quality Assurance Aslin Jenila.P.S Assistant Professor, Hindustan University, Chennai Abstract: Agility, with regard to software development, can be expressed

More information

Survey Says: Agile Works in Practice

Survey Says: Agile Works in Practice Survey Says: Agile Works in Practice Agile software development methods and techniques are gaining traction Scott Ambler The results of Scott's survey indicate that agile software development methods and

More information

Quality in an Agile World BY SCOTT AMBLER Ambysoft, Inc.

Quality in an Agile World BY SCOTT AMBLER Ambysoft, Inc. TALKING POINTS Quality is an inherent aspect of true agile software development. The majority of agilists take a test-driven approach to development where they write a unit test before they write the domain

More information

Agile Software Development at Scale

Agile Software Development at Scale Agile Software Development at Scale Scott W. Ambler Practice Leader Agile Development, IBM Rational scott_ambler@ca.ibm.com Abstract: Since 2001 agile software development approaches are being adopted

More information

Akhil Kumar 1, Bindu Goel 2

Akhil Kumar 1, Bindu Goel 2 Factors Influencing Agile Practices: A Survey Akhil Kumar 1, Bindu Goel 2 1 (University School of Information Technology, GGS Indraprastha University, New Delhi-110075) 2 (University School of Information

More information

SECC Agile Foundation Certificate Examination Handbook

SECC Agile Foundation Certificate Examination Handbook Versions 2.0 Version Date Remarks 1.0 12/4/2012 Initial version 2.0 3/8/2008 REVISION HISTORY Updated knowledge areas Added questions examples Updated suggested readings section Page 2 of 15 Version 2.0

More information

An Agile Methodology Based Model for Change- Oriented Software Engineering

An Agile Methodology Based Model for Change- Oriented Software Engineering An Agile Methodology Based Model for Change- Oriented Software Engineering Naresh Kumar Nagwani, Pradeep Singh Department of Computer Sc. & Engg. National Institute of Technology, Raipur nknagwani.cs@nitrr.ac.in,

More information

Applying Agile Methods in Rapidly Changing Environments

Applying Agile Methods in Rapidly Changing Environments Applying Agile Methods in Changing Environments 7/23/2002 1 Applying Agile Methods in Rapidly Changing Environments Peter Kutschera IBM Unternehmensberatung GmbH Am Fichtenberg 1, D-71803 Herrenberg Steffen

More information

Traditional requirements

Traditional requirements What do we do now? Traditional requirements Reams of paper Detailed requirements documented upfront Documentation of so many requirements that they had to be identified as mandatory or desirable Customers

More information

The Agile Manifesto is based on 12 principles:

The Agile Manifesto is based on 12 principles: The Agile Manifesto is based on 12 principles: Customer satisfaction by rapid delivery of a useful product solution Welcome changing requirements, even late in development Working products are delivered

More information

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development Ingegneria del Software Corso di Laurea in Informatica per il Management Agile software development Davide Rossi Dipartimento di Informatica Università di Bologna The problem Efficiency: too much effort

More information

Plan-Driven Methodologies

Plan-Driven Methodologies Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a

More information

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

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational

More information

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

Mariusz Chrapko. Before: Software Quality Engineer/ Agile Coach, Motorola, Poland. My Public Profile: http://www.linkedin. Gathering Customer Requirements in an Agile Environment Mariusz Chrapko ReConf 2009, Munich Mariusz Chrapko Now: Process Consultant/ Agile Coach@Kugler Maag CIE, Stuttgart Supported Areas: - CMMI - SPICE/

More information

Scaling Agile Software Development

Scaling Agile Software Development White Paper Series May 2014 Scaling Agile Software Development Disciplined Agility at Scale By Scott W. Ambler and Mark Lines There are two fundamental visions about what it means to scale agile: Tailoring

More information

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project. THE AGILE PROJECT LEADER S DICTIONARY This dictionary attempts to de-mystify the jargon around the world of Agile projects. Part 1 translates common Agile terms into more traditional words. Part 2 translates

More information

Agile Software Engineering Practice to Improve Project Success

Agile Software Engineering Practice to Improve Project Success Agile Software Engineering Practice to Improve Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems dietmar.winkler@qse.ifs.tuwien.ac.at

More information

Focus on Value: How to Create Value-Driven User Stories

Focus on Value: How to Create Value-Driven User Stories ARTICLE Focus on Value: How to Create Value-Driven User Stories by Chris Sterling Scrum Alliance Feb. 25, 2008 Traditionally, software development projects started out with an idea and then tried to identify

More information

Agile Modeling: A Brief Overview

Agile Modeling: A Brief Overview Agile Modeling: A Brief Overview Scott W. Ambler President, Ronin International scott.ambler@ronin-intl.com Abstract: Agile Modeling (AM) is a practice-based methodology for effective modeling of software-based

More information

EXIN Agile Scrum Foundation

EXIN Agile Scrum Foundation Sample Questions EXIN Agile Scrum Foundation Edition September 2013 Copyright 2013 EXIN All rights reserved. No part of this publication may be published, reproduced, copied or stored in a data processing

More information

As the use of agile approaches

As the use of agile approaches What Does a Business Analyst Do on an Agile Project? By Kent J. McDonald Senior Instructor, B2T Training As the use of agile approaches increases, business analysts struggle to determine how their role

More information

Agile Requirements Best Practices

Agile Requirements Best Practices IBM Software Group Agile Requirements Best Practices Robin Bater Community of Practice Architect Stockholm, Oct 15 th SAST 2010 IBM Corporation Topic Agilists know that any investment in detailed documentation

More information

Requirements Management Practice Description

Requirements Management Practice Description Requirements Management Practice Description 1. REQUIREMENTS MANAGEMENT (RM) 1.1 Description of the practice TRASYS provide solutions to effectively manage critical issues and reduce risks in project related

More information

A Manager s Introduction to The Rational Unified Process (RUP)

A Manager s Introduction to The Rational Unified Process (RUP) A Manager s Introduction to The Rational Unified Process (RUP) Scott W. Ambler This version: December 4, 2005 Copyright 1999-2005 Scott W. Ambler Executive Summary Software development is a complex endeavor,

More information

Basic Unified Process: A Process for Small and Agile Projects

Basic Unified Process: A Process for Small and Agile Projects Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.

More information

Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process

More information

Experiences Linking Business Architecture with an Agile/Lean Development Method

Experiences Linking Business Architecture with an Agile/Lean Development Method John Baker, Enterprise Architecture Experiences Linking Business Architecture with an Agile/Lean Development Method Agenda Setting the stage Business Architecture within MasterCard Agile within MasterCard

More information

How to Adopt RUP in Your Project

How to Adopt RUP in Your Project 08Bergstrom.C08 Page 127 Thursday, December 4, 2003 12:06 PM 8 How to Adopt RUP in Your Project Support Projects with Mentoring Make a High-Level Adoption Plan and Develop a Communication Plan Project

More information

The Agile Scaling Model (ASM): Adapting Agile Methods for Complex Environments

The Agile Scaling Model (ASM): Adapting Agile Methods for Complex Environments December 2009 The Agile Scaling Model (ASM): Adapting Agile Methods for Complex Scott W. Ambler Chief Methodologist for Agile, IBM Rational Page 2 Contents 2 Executive Summary 2 Introduction 4 Agile Software

More information

White Paper What Solutions Architects Should Know About The TOGAF ADM

White Paper What Solutions Architects Should Know About The TOGAF ADM White Paper What Solutions Architects Should Know About The TOGAF ADM WP0015 October 2011 The Open Group Architecture Framework 1 (TOGAF) is the most widely referenced architecture framework currently

More information

Software Developing with Agile Methods and Combination of Architecture

Software Developing with Agile Methods and Combination of Architecture Software Developing with Agile Methods and Combination of Architecture Mehdi Yaghoubi Department of Computer Sciences, Faculty of Sciences, Golestan University, Gorgan, Golestan, Iran Manoochehr Babanezhad

More information

Robust Object Oriented System Analysis

Robust Object Oriented System Analysis Robust Object Oriented System Analysis Dr Jie Zhao, Dunstan Thomas Consulting Summary Uses cases are widely accepted as the best approach to capturing system requirements, in particular, functional requirements.

More information

Becoming a Business Analyst

Becoming a Business Analyst Becoming a Business Analyst What is Business Analysis? The practice of enabling change in an organizational context by defining needs and recommending solutions that delivers value to stakeholders When

More information

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT Shivangi Shandilya, Surekha Sangwan, Ritu Yadav Dept. of Computer Science Engineering Dronacharya College Of Engineering, Gurgaon Abstract- Looking at the software

More information

A Soft-Structured Agile Framework for Larger Scale Systems Development

A Soft-Structured Agile Framework for Larger Scale Systems Development A Soft-Structured Agile Framework for Larger Scale Systems Development Shvetha Soundararajan and James D. Arthur Department of Computer Science Virginia Polytechnic Institute and State University Blacksburg,

More information

Implementing Agile Requirements using IBM Rational Requirements Composer with C/ALM

Implementing Agile Requirements using IBM Rational Requirements Composer with C/ALM IBM Software Group Implementing Agile Requirements using IBM Rational Requirements Composer with C/ALM Yan (Tina) Zhuo, IBM Rational Topics IBM Rational Requirements Composer Agile Requirements Project

More information

Using Use Cases on Agile Projects

Using Use Cases on Agile Projects Using Use Cases on Agile Projects Ivar Jacobson with Ian Spence Agenda What are agile teams looking for? Cards, conversations, and confirmations Knowing what to do and when it s done Being agile with use

More information

Advanced Disciplined Agile Delivery Workshop Overview

Advanced Disciplined Agile Delivery Workshop Overview Disciplined Agile Delivery: Workshop Overview Advanced Disciplined Agile Delivery Workshop Overview Mark Lines mark@scottambler.com Mark_Lines Scott W. Ambler scott@scottambler.com scottwambler 1 Objectives

More information

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC

More information

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design Session # 3 Contents Systems Analysis and Design 2 1 Tiers of Software Development 10/4/2013 Information system development project Realistic behavior 3 Information system development project System Development

More information

Business Process Flow and Use Cases

Business Process Flow and Use Cases Business Process Flow and s Prepared by Alice Bouché President, January 23, 2006 Overview Business Process Flow Swim lane approach s Unified Modeling Language (UML) Textual specification Style Techniques

More information

Frank Tsui. Orlando Karam. Barbara Bernal. State. University. Polytechnic. Ail of Southern JONES & BARTLETT LEARNING

Frank Tsui. Orlando Karam. Barbara Bernal. State. University. Polytechnic. Ail of Southern JONES & BARTLETT LEARNING Frank Tsui Orlando Karam Barbara Bernal Ail of Southern Polytechnic State JONES & BARTLETT LEARNING University Preface Hi Chapter 1 Writing a Program 1 1.1 A Simple Problem 2 1.2 Decisions, Decisions 2

More information

BEDIFFERENT ACE G E R M A N Y. aras.com. Copyright 2012 Aras. All Rights Reserved.

BEDIFFERENT ACE G E R M A N Y. aras.com. Copyright 2012 Aras. All Rights Reserved. BEDIFFERENT ACE G E R M A N Y ACE Germany Implementation Best Practices Scrum Methodology Patrick Willemsen Senior Consultant ARAS Software AG Slide 3 Dilbert says Slide 4 Agenda Agile Methodology An Overview

More information

The Role of Requirements Traceability in System Development

The Role of Requirements Traceability in System Development The Role of Requirements Traceability in System Development by Dean Leffingwell Software Entrepreneur and Former Rational Software Executive Don Widrig Independent Technical Writer and Consultant In the

More information

IBM Rational Software

IBM Rational Software 2007 IBM Corporation IBM Rational Software Development Conference 2008 Scaling Agile Software Development: Strategies for Applying Agile in Complex Situations Per Kroll Chief Architect IBM Rational Expertise

More information

Introduction to Agile Scrum

Introduction to Agile Scrum Introduction to Agile Scrum by Julia M. Lobur Penn State Harrisburg CMPSC 487W Fall 2015 Introduction to Scrum Learning Goals Relationship of Scrum to other Agile methods Scrum Framework Scrum Roles Scrum

More information

COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS

COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS COMPARATIVE STUDY ON SOFTWARE PROJECT MANAGEMENT MODELS *1 Mrs. Kalaivani S., * 2 Mrs. Kavitha S., *1 M.Phil Research Scholar, Department of Computer Science Auxilium College (Autonomous), Vellore, TamilNadu,

More information

EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development

EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development EMC PERSPECTIVE Adopting an Agile Approach to OSS/BSS Development Reader ROI The agile software methodology is different from the traditional approach in that requirements gathering and analysis, design,

More information

User Stories for Requirements Elicitation

User Stories for Requirements Elicitation User Stories for Requirements Elicitation by Nick Naumovich, nick@naumovich.com Plano, TX h. 972 398 8501 / c. 214 650 8501 This article was originally written on Mach 20, 2007 to help a team transition

More information

Mastering the Iteration: An Agile White Paper

Mastering the Iteration: An Agile White Paper Rally Software Development Corporation Whitepaper Mastering the Iteration: An Agile White Paper Dean Leffingwell Abstract: The heartbeat of Agile development is the iteration the ability of the team to

More information

Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1

Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1 Rapid software development Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1 Objectives To explain how an iterative, incremental development process leads to faster delivery of

More information

Chapter 3. Technology review. 3.1. Introduction

Chapter 3. Technology review. 3.1. Introduction Technology review Chapter 3 3.1. Introduction Previous chapter covers detail description about problem domain. In this chapter I will discuss the technologies currently available to solve a problem in

More information

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

Sometimes: 16 % Often: 13 % Always: 7 % SCRUM AT RIIS A Standish study found that only 20% of features in a typical system were used often or always and 45% of features were never used at all. The ability to embrace change is critical to reducing

More information

Sample Exam ISTQB Agile Tester 2014 Foundation Level Extension

Sample Exam ISTQB Agile Tester 2014 Foundation Level Extension Sample Exam ISTQB Agile Tester 2014 Foundation Level Extension Version 1.0 Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged. Table of Contents

More information

Disciplined Agile Delivery (DAD): The Foundation for Scaling Agile

Disciplined Agile Delivery (DAD): The Foundation for Scaling Agile Disciplined Agile Delivery (DAD): The Foundation for Scaling Agile Scott W. Ambler Chief Methodologist for Agile and Lean, IBM Rational www.ibm.com/developerworks/blogs/page/ambler twitter.com/scottwambler

More information

Advanced User Stories

Advanced User Stories Advanced User Stories Reference Materials What is a User Story? THE BASICS User stories are nothing more than a placeholder for conversation. Often referred to as a plain, simple statement of a requirement,

More information

CSSE 372 Software Project Management: More Agile Project Management

CSSE 372 Software Project Management: More Agile Project Management CSSE 372 Software Project Management: More Agile Project Management Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: Plan Create a plan for

More information

Agile Scrum Workshop

Agile Scrum Workshop Agile Scrum Workshop What is agile and scrum? Agile meaning: Able to move quickly and easily. Scrum meaning: a Rugby play Agile Scrum: It is an iterative and incremental agile software development framework

More information

How do you determine how to structure your team?

How do you determine how to structure your team? By Tanya Smeltzer How do you determine how to structure your team? Company needs Will an outside consult be necessary to meet the requirements? Software development people available Different levels of

More information

Agile So)ware Development

Agile So)ware Development Software Engineering Agile So)ware Development 1 Rapid software development Rapid development and delivery is now often the most important requirement for software systems Businesses operate in a fast

More information

6 Contracts and Scenarios in the Software Development Process

6 Contracts and Scenarios in the Software Development Process 6 Contracts and Scenarios in the Software Development Process Summary: Software development processes play an important role in the successful and timely delivery of software. There are different approaches

More information

Extreme Programming 1

Extreme Programming 1 Extreme Programming 1 Extreme Programming Waterfall model inspired by civil engineering Civil engineering metaphor is not perfect Software is more organic than concrete You grow the software to meet changing

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

Agile Processes: Extreme Programming

Agile Processes: Extreme Programming Agile Processes: Extreme Programming 1 Old School: The Waterfall Model Gather Requirements Specification Design Implementation Integration Product 3 Old School: Waterfall drawbacks The major risks are:

More information

Xtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda

Xtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda Xtreme RUP by Ne t BJECTIVES Lightening Up the Rational Unified Process 2/9/2001 Copyright 2001 Net Objectives 1 RUP Overview Agenda Typical RUP Challenges Xtreme Programming Paradigm Document driven or

More information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development

More information

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. jeff.payne@coveros.com www.coveros.

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. jeff.payne@coveros.com www.coveros. Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. jeff.payne@coveros.com www.coveros.com 1 About Coveros Coveros helps organizations accelerate the delivery

More information

Agile Business Conference

Agile Business Conference Copyright 2010 2014 Sprint Agile Ltd All rights reserved. Agile Business Conference How To. Slice Stories Matt Roadnight October 2014 matt.roadnight@sprintagile.com 2 How to Slice Stories Your Experience.

More information

Managing IT Projects. Chapter 3 Software Project Life cycle

Managing IT Projects. Chapter 3 Software Project Life cycle Managing IT Projects Chapter 3 Software Project Life cycle The Systems Development Life Cycle (SDLC) The SDLC is composed of four fundamental phases: -Planning Analysis Design Implementation The Systems

More information

PERFORMANCE ENGINEERING IN SCRUM

PERFORMANCE ENGINEERING IN SCRUM PERFORMANCE ENGINEERING IN SCRUM Balasubramanian, Infosys Technologies Limited This paper describes how performance engineering as a software discipline should be planned and executed in an agile development

More information

Agile Development Overview

Agile Development Overview Presented by Jennifer Bleen, PMP Project Services Practice of Cardinal Solutions Group, Inc. Contact: Agile Manifesto We are uncovering better ways of developing software by doing it and helping others

More information

11 Tips to make the requirements definition process more effective and results more usable

11 Tips to make the requirements definition process more effective and results more usable 1 11 Tips to make the s definition process more effective and results more usable This article discusses what I believe are the key techniques for making s definition process repeatable from project to

More information

Increasing Development Knowledge with EPFC

Increasing Development Knowledge with EPFC The Eclipse Process Framework Composer Increasing Development Knowledge with EPFC Are all your developers on the same page? Are they all using the best practices and the same best practices for agile,

More information

How to Elaborate Requirements Through Use Cases and User Stories Mar$n Schedlbauer, Ph.D., CBAP, CSM, PSM

How to Elaborate Requirements Through Use Cases and User Stories Mar$n Schedlbauer, Ph.D., CBAP, CSM, PSM November 5 th, 2015 How to Elaborate Requirements Through Use Cases and User Stories Mar$n Schedlbauer, Ph.D., CBAP, CSM, PSM Requirements Techniques Narrative Statements often in the form of The system/solution

More information

Use Case Analysis. Use Case Analysis. Use Case Analysis. Use Cases Describe Function not Form. Example: Library System

Use Case Analysis. Use Case Analysis. Use Case Analysis. Use Cases Describe Function not Form. Example: Library System Use Case Analysis USE CASES & REQUIREMENT Lecture 2 CS-463 Umair Javed Use case ( Stories of using the system) is a technique to understand requirements Mainly deal with the functional requirements of

More information

Agile Unified Process

Agile Unified Process INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND MOBILE APPLICATIONS - IJCSMA Agile Unified Process Charles Edeki Ph.D, American Intercontinental University, Department of Information Technology, 160 Parkside

More information

Sreerupa Sen Senior Technical Staff Member, IBM December 15, 2013

Sreerupa Sen Senior Technical Staff Member, IBM December 15, 2013 Sreerupa Sen Senior Technical Staff Member, IBM December 15, 2013 Abstract In this experience report, I ll talk about how we transformed ourselves from a team that does one big bang release a year, to

More information

Basic Trends of Modern Software Development

Basic Trends of Modern Software Development DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering

More information

Agile Methodologies and EXtreme Programming. Lecturer: Giuseppe Santucci. (Some slides taken from slideshare.net)

Agile Methodologies and EXtreme Programming. Lecturer: Giuseppe Santucci. (Some slides taken from slideshare.net) Agile Methodologies and EXtreme Programming Lecturer: Giuseppe Santucci (Some slides taken from slideshare.net) Outline Development Methodologies Agile Development (12 Key Practices) Extreme Programming

More information

Analyze the Problem Workflow Vision Document

Analyze the Problem Workflow Vision Document RUP RUP Artifacts and Deliverables RUP Purpose of To establish and maintain agreement with the customers and other stakeholders on what the system should do. To provide system developers with a better

More information

Agile Scaling Model: Be as Agile as You Need to Be

Agile Scaling Model: Be as Agile as You Need to Be Agile Scaling Model: Be as Agile as You Need to Be Scott W. Ambler Chief Methodologist for Agile and Lean, IBM Rational www.ibm.com/developerworks/blogs/page/ambler twitter.com/scottwambler This presentation,

More information

Making the Most of the Software Development Process

Making the Most of the Software Development Process Making the Most of the Software Development Process Dr Graham Stone, Dunstan Thomas Consulting http://consulting.dthomas.co.uk Organisations are under increased pressure to look at development initiatives

More information

Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering. Shvetha Soundararajan

Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering. Shvetha Soundararajan Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering Shvetha Soundararajan Thesis submitted to the faculty of the Virginia Polytechnic Institute and State University

More information

User experience storyboards: Building better UIs with RUP, UML, and use cases

User experience storyboards: Building better UIs with RUP, UML, and use cases Copyright Rational Software 2003 http://www.therationaledge.com/content/nov_03/f_usability_jh.jsp User experience storyboards: Building better UIs with RUP, UML, and use cases by Jim Heumann Requirements

More information

Agile Development with Jazz and Rational Team Concert

Agile Development with Jazz and Rational Team Concert Agile Development with Jazz and Rational Team Concert Mayank Parikh mayank.parikh.@in.ibm.com Acknowledgements: Thanks to Khurram Nizami for some of the slides in this presentation Agile Values: A Foundation

More information

Universiti Teknologi MARA. Designing a Proposed Model of Software Development Practices

Universiti Teknologi MARA. Designing a Proposed Model of Software Development Practices Universiti Teknologi MARA Designing a Proposed Model of Software Development Practices Nor Hasikin Bt Husian Thesis submitted infiilfillmentof the requirements for Bachelor of Science (Hons) Information

More information

Agile Database Techniques: Effective Strategies for the Agile Software Developer HDT822 Four Days

Agile Database Techniques: Effective Strategies for the Agile Software Developer HDT822 Four Days Four Days Prerequisites Students should have experience designing databases and data warehouses. Knowledge of Agile design techniques is helpful. Who Should Attend This course is targeted at database designers,

More information

The Essence of Software Engineering: Applying the SEMAT Kernel. Scott Ambler interviews Ivar Jacobson

The Essence of Software Engineering: Applying the SEMAT Kernel. Scott Ambler interviews Ivar Jacobson The Essence of Software Engineering: Applying the SEMAT Kernel Scott Ambler interviews Ivar Jacobson 1 The Essence of Software Engineering: Applying the SEMAT Kernel from Addison-Wesley Professional was

More information

Agile with XP and Scrum

Agile with XP and Scrum Agile with XP and Scrum Amit Goel National Agile Software Workshop @ Indore Agile India Conference Agile Software Community of India Disclaimer and Credits Most of material in this presentation has been

More information

A technical discussion of RUP Using the IBM Rational Unified Process for Small Projects: Expanding Upon extreme Programming

A technical discussion of RUP Using the IBM Rational Unified Process for Small Projects: Expanding Upon extreme Programming A technical discussion of RUP Using the IBM Rational Unified Process for Small Projects: Expanding Upon extreme Programming Gary Pollice Table of Contents Abstract... 1 Introduction... 1 A SHORT STORY...

More information

Scrum and User Stories

Scrum and User Stories Scrum and User Stories CS314 SUDIPTO GHOSH, JIM BIEMAN, GERI GEORG Scrum A framework within which people can address complex adaptive problems, while productively and creatively delivering products of

More information

Agile Requirements Methods

Agile Requirements Methods Agile Requirements Methods by Dean Leffingwell Software Entrepreneur and Former Rational Executive To ensure that their software teams build the right software the right way, many companies turn to standard

More information

Modellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003

Modellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 20-21 The Unified Process Dynamic dimension Two dimensions Content

More information