Introduction to Agile Requirements, Estimation

50 %
50 %
Information about Introduction to Agile Requirements, Estimation
Software

Published on April 21, 2014

Author: cabhilash

Source: slideshare.net

Description

A brief summary of Agile Product Management, User stories, Vertical slicing, estimation

Overview of TDD, SOLID principles

Introduction to Agile Software Requirements Abhilash Chandran Development Manager Xerox

What are we going to discuss today? • What stories are • Writing User Story • Estimation • Workshop

Books …

Product Vision • What the product should look like when ultimately finished – Type of features supported – Type of users – Market share etc. • Continuous change because of – New knowledge – New customer base – New or changing market conditions

Product Vision… • Should contain – Product features (as would be listed on the product box or web site) – Target market/customers – Key differentiators

Cone of uncertainty

Continuous iterations • Traveling at night • Embrace the change • Write only what you have • Do only what you know • Add new insights

User Roles • A user role is any type of user that interacts with the system • Identifying the different types of Users is the first step in Agile Product Management • Lack of a clear understanding of User Roles – critical requirements can be missed or misunderstood – Higher probability of developing a wrong software with unwanted features .

User story • A sentence or a paragraph that describes functionality of the system from the user’s perspective As a <type of user> I can <perform some task> [so that I can <achieve some goal>]

User Story… • As a user, I want to reserve a hotel room • As a frequent flyer, I want to rebook a past trip so that I save time booking trips I take often.

3 C’s • Card: The written description of the story • Conversation: Verbal discussions that bring out further details of the system • Confirmation: the conditions of satisfaction that are used to determine when the feature is complete – Should also include key conditions or constraints

Conversation • As a user, I can cancel a reservation. – Does the user get a full or partial refund? – Is the refund to her credit card or is it site credit? – How far ahead must the reservation be cancelled? – Is that the same for all hotels? – For all site visitors? Can frequent travellers cancel later? – Is a confirmation provided to the user? – How?

Conditions of satisfaction • As a user, I can cancel a reservation. – Verify that a premium member can cancel the same day without a fee. – Verify that a non-premium member is charged 10% for a same-day cancellation. – Verify that an email confirmation is sent. – Verify that the hotel is notified of any cancellation

Split Stories • As a user, I can cancel a reservation. – As a premium site member, I can cancel a reservation up to the last minute. – As a site visitor, I am emailed a confirmation of any cancelled reservation.

Epic • A very large user story • As a user, I can cancel a reservation.

Start with Epic • MMF – Minimum Marketable Feature • A basic set of features required for product which can be marketed

Estimation • Planning Poker – It is about size not duration – Identify the relative value

Activity • User story breakdown • Estimation

Part II • Workshop on Clean code

Book…

Test Driven Development

Demo • Demo with C# and MS Unit Test

Demo • Demo with C# & Specflow

Behaviour-driven development

SOLID Principles • Stands for five basic principles of object- oriented programming and design • Are guidelines that can be applied while working on software to improve code quality • Helps in – low coupling, – high cohesion – strong encapsulation

SRP • Single responsibility principle A class should have only a single responsibility (i.e. only one potential change in the software's specification should be able to affect the specification of the class)

OCP • Open/closed principle Software entities … should be open for extension, but closed for modification

LSP • Liskov substitution principle Objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program

ISP • Interface segregation principle Many client-specific interfaces are better than one general-purpose interface.

DIP • Dependency inversion principle One should “Depend upon Abstractions. Do not depend upon concretions.

Questions

Contact Me • Email : c.abhilash@gmail.com • Twitter : https://twitter.com/cabhilash • Blog : http://www.TheAgileSchool.com

Add a comment

Related presentations

Speaker: Matt Stine Developing for the Cloud Track Marc Andressen has famou...

This presentation explains how to develop a Web API in Java using (JAX-RS or Restl...

1 App,

1 App,

November 10, 2014

How to bring innovation to your organization by streamlining the deployment proces...

Cisco Call-control solutions can handle voice, video and data

Nathan Sharp of Siemens Energy recently spoke at the SAP Project Management in Atl...

Related pages

Agile Requirements, Estimation and Planning -- Iteration ...

Agile Requirements, Estimation and Planning ... Introduction Agile product development is designed to improve visibility and predictability of schedule ...
Read more

Introduction to Agile Planning and Estimation - AgilePalooza

Introduction to Agile ... • All of the requirements were done up front, ... using agile estimation techniques such as planning
Read more

An Introduction to Agile Estimation - Inflectra

This paper offers an introduction to the most popular of these techniques, ... Agile Software Requirements. ... Agile Estimation;
Read more

Introduction to Agile Requirements, Estimation - Software

1. Introduction to Agile Software Requirements Abhilash Chandran Development Manager Xerox . 2. What are we going to discuss today? • What stories are ...
Read more

Scrum: A Breathtakingly Brief and Agile Introduction

Mastering Agile Requirements; ... Scrum: A Breathtakingly Brief and Agile Introduction. ... (Estimation) During story time, ...
Read more

An Introduction to Agile Estimating and Planning - Mike Cohn

An Introduction to Agile Estimating and Planning ... A Review of Studies on Expert Estimation of Software Development ... Extra requirements
Read more

How do you estimate on an Agile project? - ThoughtWorks

How do you estimate on an Agile project? ... Introduction 3 ... It is a subjective unit of estimation used by Agile
Read more

Software Costs Estimation Tutorial | Toptal

Software Costs Estimation In Agile Project Management ... Introduction. One of the hardest ... Let’s explore Agile project estimation and software ...
Read more

Agile Development Presentations for Download

ScrumMaster and trainer Mike Cohn offers an agile development overview with presentations for ... Introduction to ... or requirements ...
Read more