© ThoughtWorks, 2007 The TW Agile template for VSTS Microsoft Architect Insight Conference – 2007 Nick Hines ThoughtWorks.

Slides:



Advertisements
Similar presentations
QuEdge Testing Process Delivering Global Solutions.
Advertisements

Web Development Engineering Processes Introduction to Web Development Outsourcing Processes.
HP Quality Center Overview.
<<replace with Customer Logo>>
Project Management Framework May 2010 Ciaran Whyte Risk Administrator Planning & Strategic Projects Unit.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall B.1.
ITEC 370 Lecture 25 Lifecycles. Review Questions? F give prototype demonstration –Testing plan for your software Life cycles –Scrum (Roles, Meetings,
Agile development By Sam Chamberlain. First a bit of history..
Project Management Workshop. Nick Cook  Citigroup Corporate and Investment Bank  European Technology Business Office Manager Edinburgh University April.
GAI Proprietary Information
Software Life Cycles ECE 417/617: Elements of Software Engineering
System Analysis and Design (SAD )
Slide 1 INTRODUCTION Chapter 1. Slide 2 Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
Extreme Programming--a “New” Process Model Extreme Programming-- a “New” Process Model.
By Saurabh Sardesai October 2014.
PopMedNet Software Development Life Cycle Chayim Herzig-Marx Harvard Pilgrim Health Care Institute Daniel Dee Lincoln Peak Partners.
> Blueprint Kickoff >. Introductions Customer Vision & Success Criteria Apigee Accelerator Overview Blueprint Schedule Roles & Responsibilities Communications.
Release & Deployment ITIL Version 3
The Integration Story: Rational Quality Manager / Team Foundation Server / Quality Center Introductions This presentation will provide an introduction.
What is Business Analysis Planning & Monitoring?
Complete and Integrated Lifecycle Management. Challenges 1.
COMPGZ07 Project Management Presentations Graham Collins, UCL
Copyright BSPIN Agile Practices Benchmarking Case Study by Cosmonet Solutions Pvt. Ltd.
Z26/GI03: Project Management Tutorial: What to include in your presentation Graham Collins.
Copyright David Churchville - XP and Agile Planning David Churchville ExtremePlanner Software XP Fishbowl.
1 Advanced Computer Programming Project Management: Methodologies Copyright © Texas Education Agency, 2013.
Business Analysis and Essential Competencies
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
Unified Process versus Extreme Programming. Outline Compare and contrast UP and XP  Processes / Disciplines  Management  Artefacts Risk management.
Introduction- Project Management By Ctrl+C & Ctrl+V 1.
Industry SDLCs and Business Climate. Justin Kalicharan Credentials Director and Senior Technology Officer Over 14 years of coding experience in various.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Rational Unified Process Mr Hisham AlKhawar. Iterative versus Waterfall  We need to use a life cycle model in order to approach developing a system easily,
K.Ingram 1 Sept 2007 Agile Software Development. K.Ingram 2 Sept 2007 Contents Agile Software Development: 1.What is it? 2.Agile’s Values, Principles,
Environmental Management Plan (EMP) Required for: Full EIA based on Palestinian EIA Policy Category A projects based on World Bank Policy.
Process Presentation Kin Wan Li, Ashley Zoch, Mevesh Gopee, Damian Ridgwell, Edwin Lusala,
Lecture 4 – XP and Agile 17/9/15. Plan-driven and agile development Plan-driven development A plan-driven approach to software engineering is based around.
Agile Metrics It’s Not All That Complicated. © 2011 VersionOne 2 Welcome – About your Trainer, Katia Sullivan VersionOne Product Trainer and Agile Coach.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
CSPC 464 Fall 2014 Son Nguyen. 1. The Process of Software Architecting, Peter Eeles, Peter Cripss 2. Software Architecture for Developers, Simon Brown.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix B Agile Methodologies B.1.
SCRUM.
Requirements Workshop Techniques for E-Business Projects
Planning Extreme programming
WHEN TITLE IS NOT A QUESTION N O ‘WE CAN’ CA Agile Vision Product Manager Michael Lester.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Successful Software Practice How to successfully work as a team to create software Chris Mendes, Chief Technology Officer Sirca Limited March 2012.
What’s New in SPEED APPS 2.3 ? Business Excellence Application Services.
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
IS&T Project Reviews September 9, Project Review Overview Facilitative approach that actively engages a number of key project staff and senior IS&T.
Embedded Systems Software Engineering
Methodologies and Algorithms
Office 365 Security Assessment Workshop
Workplace Projects.
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Information Technology Project Management – Fifth Edition
Chapter 3: The Project Management Process Groups: A Case Study
Introduction to Software Engineering
How to Successfully Implement an Agile Project
Summarizing Our Models to Date
Introduction to Agile Blue Ocean Workshops.
Ensuring Project Success with SpiraTeam & Rapise
Teaching slides Chapter 13
Scrum in Action.
Executive Project Kickoff
Agile Development.
Presentation transcript:

© ThoughtWorks, 2007 The TW Agile template for VSTS Microsoft Architect Insight Conference – 2007 Nick Hines ThoughtWorks

© ThoughtWorks, 2006 Introduction The session will cover: – Introduction to TW Agile – Iteration planning and estimation – Work items including stories, tasks and bugs – Reports and tracking including burn down charts, velocity charts, and bug reporting – VSTS and CruiseControl

© ThoughtWorks, 2006 ThoughtWorks at a glance Reach United Kingdom United States Australia India Canada China Industries Asset Finance Insurance Retail Mortgage Banking Expertise.NET Java SOA EAI Open Source Agile Distributed Agile Services Deliver Transform Advise Select Clients Bank of America Caterpillar Financial St Paul Travelers CNA Dixons Nationwide Size 700 employees $85 M in revenue

© ThoughtWorks, 2006 What makes TW Agile different? Given the loose definition of agile, many methodologies fall into this category: Some are more extreme in their definitions Hybrid approaches like ThoughtWorks Agile work well if they are sympathetic to their roots.

© ThoughtWorks, 2006 When to use TW Agile More Strict More Agile Waterfall RUP XP RAD TW Agile TW Agile TW Agile: Not as radical as XP, but incorporating many XP practices such as pair programming, TDD, Continuous Integration, etc. Scrum Crystal Clear Crystal Clear

© ThoughtWorks, 2006 Process Guidance

© ThoughtWorks, 2006 Roles and Responsibility Key roles within delivery: – Analyst: Responsible for identifying and defining the project requirements as stories and tasks, and supporting those stories through development to sign- off. – Developer: Responsible for implementing stories and tasks to ensure that technical tasks (e.g. environmental, spikes) and business requirements (stories) are delivered. – QA: Responsible for defining the acceptance criteria for each story and for functionally testing the story to ensure it is complete and bug free. – Project Manager: Responsible for managing project activity and tracking project progress and reporting progress internally to the team and externally to the client.

© ThoughtWorks, 2006 What about the Architect? –What is the role of an architect on an Agile project? »“cuts” code – no ivory towers! »maintains overall system architecture vision »final word on disputed design decisions »interacts with customer and customer IT staff as appropriate »responsible for successful delivery of the application

© ThoughtWorks, 2006 The role of the story The role of a story is to record a functional requirement. Stories are written in a specific format that identifies the requirement, user and business value of the requirement “As a…….I want…….so that…….” – An example from an online banking project could be: “As a current account holder, I want to be able to see my bank balance online so that I can see how much money I have to spend”. This format ensures that each requirement has a clear role (or roles) associated with it’s use, and a view of it’s importance to the business. This helps differentiate ‘essential’ from ‘nice to have’ features. Stories are given a priority and an estimate so that they can be scheduled for development. The story is only fully analysed once it has been selected for development in the next iteration.

© ThoughtWorks, 2006 Finding stories Stories are identified using a ‘workshop’ based approach and traditional business analysis activities. Analysis is carried out in a light-weight manner using whiteboards cards and post-its. Outputs include: – Process Maps/Models – State change diagrams – UI Prototypes – Information Architectures These outputs are then used as the basis for story writing sessions – “at this step in the process, what is it you actually want to be able to do”

© ThoughtWorks, 2006 Capturing stories in VSTS Unique identifier for story Short title of story. Use ubiquitous language, (DDD) User persona requesting story Description of business functionality required Description of business value achieved by story Release and iteration in which story is “played” Customer priority for story Developer estimate of story size What does the system have to do for this story to be complete? Initial story state

© ThoughtWorks, 2006 Estimating & Prioritising stories Estimation is undertaken by the developers who will be responsible for delivering the requirements Estimates are given to each story Prioritisation is done by the business A priority is given to each story

© ThoughtWorks, 2006 Release Planning Release planning is achieved by assigning stories to a release based on their priority and estimate. Stories are often moved between releases based on project progress and changing project priorities. No specific tool support yet

© ThoughtWorks, 2006 The importance of Story Cards Visibility is a key aspect to ThoughtWorks methodology Physical cards are pinned to a ‘story wall’ so that it is visible to all at a glance what is happening in the current iteration, and what is planned for the next iteration. The card wall becomes a place of congregation for stand-ups and status meetings.

© ThoughtWorks, 2006 Story Card from VSTS

© ThoughtWorks, 2006 The Master Story List (MSL)

© ThoughtWorks, 2006 Story Lifecycle New Signed-off QA Complete QA Complete Dev Complete Dev Complete Analysis Complete Analysis Complete Defined Add title, description, priority and estimate Add Acceptance Criteria and other required information Develop story Test developed code/functionality Business review

© ThoughtWorks, 2006 Stories and Tasks Stories are functional requirements Capture non-functional requirements, (such as performance) as stories Stories will require a number of development tasks to achieve e.g. build a screen, create a DB table, etc. Tasks include environmental, build & deployment tasks, spikes, etc. All tasks relate to a story

© ThoughtWorks, 2006 Risk and Issues Risks – A risk is an anticipated event which has the potential to impair successful project delivery Issues – An issue is an event, whether anticipated or not, which has impaired or is now impairing successful project delivery Risks and issues can be technical, (e.g. insufficient test environments) as well as business driven (e.g. insufficient time with key stakeholders)

© ThoughtWorks, 2006 Risk Management Cycle Brainstorm & triage Probability, Cost & Impact Countermeasures & Triggers Execute mitigating actions Continue to monitor risk Execute contingency

© ThoughtWorks, 2006 Capturing Issues in VSTS Identifier for issue State of issue: - initially Open Priority of issue – Low, Medium, High Textual description of issue Actions to be taken to mitigate issue

© ThoughtWorks, 2006 Issue Log

© ThoughtWorks, 2006 Capturing Bugs in VSTS Title of Bug Story that bug relates to State of bug – initially Open Priority of bug- High, Medium, Low Number of build in which bug detected Estimated effort to resolve bug Actual effort required to resolve bug Build in which bug is resolved Detailed description of bug Detailed steps to recreate bug

© ThoughtWorks, 2006 Project Tracking & Reporting TW Agile template provides high project visibility Different projects may require different levels of reporting Template provides number of charts for project tracking e.g. velocity, yesterday’s weather, bug tracking, etc. Other reports can be easily generated using SQL Reporting Services

© ThoughtWorks, 2006 Project Velocity

© ThoughtWorks, 2006 Yesterday’s weather

© ThoughtWorks, 2006 MSL Progress

© ThoughtWorks, 2006 Reporting Bug Status

© ThoughtWorks, 2006 VSTS and CruiseControl Limitations of TFS build process Regular check-ins of code Build early build often CC.Net plug-in for TFS Source Control

© ThoughtWorks, 2006 Build Reporting

© ThoughtWorks, 2006 Next steps Currently beta-testing internally Add detail reports and filtering Addition of source code metrics – E.g. cyclomatic complexity, ratio test vs. production code, class and method sizes Release on CodePlex once beta-testing complete