Agile Development from a Product Management Perspective Scott Cressman Technical Product Manager, Sophos.

Slides:



Advertisements
Similar presentations
What is Business Architecture?. Overview Agility matters today more than yesterday Previous methods for managing change were designed for the needs of.
Advertisements

Iteration Planning.
Walter Bodwell Planigle. An Introduction – Walter Bodwell First did agile at a startup in 1999 Got acquired by BMC in 2000 and spent the next 8 years.
An Agile Retrospective Clinton Keith Overview Retrospective format What works (clear wins)? What doesn’t work so well? What do we need to start doing?
A little Software Engineering: Agile Software Development C Sc 335 Rick Mercer.
C O N F I D E N T I A L 4-May-15 1 Attendee Management - Being Agile Attendee Management.
ITEC 370 Lecture 25 Lifecycles. Review Questions? F give prototype demonstration –Testing plan for your software Life cycles –Scrum (Roles, Meetings,
ECE44x SCRUM Overview slides adapted from Marty Stepp
What Is Agile? Agile is a group of software development methodologies Scrum Extreme Programming (XP) Lean Etc. Key Characteristics: Small increments Adaptive.
NAUG NAUG Knowledge Evening – th February 2007.
Agile Project Management
Agile development By Sam Chamberlain. First a bit of history..
Extreme Programming Team Members Gowri Devi Yalamanchi Sandhya Ravi.
1 14. Project closure n An information system project must be administratively closed once its product is successfully delivered to the customer. n A failed.
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Copyright © 2014 ASTQB Presented by Rex Black, CTAL Introducing ISTQB Agile Foundation Extending the ISTQB Program’s Support Further.
Agile Acceptance Testing Closing the communication gap in software projects Gojko Adzic
Agile Methodologies for Project Management By – Komal Mehta.
An Overview of Agile L e a d i n g C h a n g e T h r o u g h C o l l a b o r a t i o n.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
AgileCamp Presents: Agile Software Development. Good luck in your presentation! This slide deck has been shared by AgileCamp Kit under the Creative Commons.
S/W Project Management
Michael Burnside Blog: Software Quality Assurance, Quality Engineering, and Web and Mobile Test.
Software Development Landscape
Agile Software Development Brian Link
Copyright David Churchville - XP and Agile Planning David Churchville ExtremePlanner Software XP Fishbowl.
Disturbance Strategy to Achieve Self Organization.
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
One XP Experience: Introducing Agile (XP) Software Development into a Culture that is Willing but not Ready Joe Bergin * Fred Grossman * David Leip **
Describing Methodologies PART II Rapid Application Development* Systems Analysis and Design II.
Agile Modeling Theory. 2 Agile Modeling (AM) AM is a chaordic, practices-based process for modeling and documentation AM is a collection of practices.
The Account Executive’s Job Description. Account Service Advertising is an ideas business. People create ideas. Good account executives like working with.
Distributed Agile: Ten Guiding Principles Student: Yu Chang 張鈺 Raja Bavani, Chief Architect, Mindtree 28Dec Department of Computer Science and Information.
T Software Development Project I Customer Info Jari Vanhanen Ohjelmistoliiketoiminnan ja –tuotannon laboratorio Software Business and.
Release and Iteration Planning September 13, 2008.
1 Today’s Plan In Class Exam – Quick Review Thoughts on your Junior Projects, cntd People and Roles on Projects.
EXtreme Programming: An Introduction Presentation by: Jon Banta.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Agile Assessment Gadi Lifshitz, Ayelet Kroskin, Barak Yagour, Yael Dubinsky.
5. Planning.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
1 Software Process Models-ii Presented By; Mehwish Shafiq.
A simple performance measurement framework A good performance measurement framework will focus on the customer and measure the right things. Performance.
XP Explained Chapters 7-9. Primary Practices  Sit together Ideal Resistance Multi-site  Whole Team All the necessary skills in a single management structure.
Lecturer: Gareth Jones Class 18: Teams.  Teams ◦ What are teams? ◦ Types of teams ◦ Conflict resolution ◦ Team strategies 27/10/2015Business Communication.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
Copyright © 2015 Curt Hill Software Development Paradigms What do you need to know?
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.
What Is Agile? Agile is a group of software development methodologies Scrum Extreme Programming (XP) Lean Etc. Key Characteristics: Small increments Adaptive.
Definition of Done in the Age of DevOps Intel Agile and Lean Development Conference Piotr Żmijewski May 22 nd, 2014.
Implementing Strategy Chapter 7. Objectives Upon completion of this chapter, you should be able to:  Translate strategic thought to organisational action.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Extreme Programming. Extreme Programming (XP) Formulated in 1999 by Kent Beck, Ward Cunningham and Ron Jeffries Agile software development methodology.
Planning Extreme programming
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Meeting Practices Yan Wei Foundation Extreme programming is used Meeting practices are based on extreme programming technology with.
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
© 2003 Six Sigma Academy0 The Roles of Six Sigma Champion Workshop.
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
Managing Agile Software Development Teams Using Scrum AKA: Wrangling Developers for Fun and Profit!
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Scuola Politecnica Dipartimento DITEN Università degli Studi di Genova An Introduction to Scrum and XP Prof. Riccardo Berta.
A Scientific Approach to Improving VUI Design Peter U. Leppik, CEO Rick Rappe, VP of Business Development Vocal Laboratories Inc.
Barnes & Noble Alonda Morgan. Agile UX Agile.
Process 4 Hours.
Agile Scrum Management
Johanna Rothman Create Technical Excellence Chapter 9
Introducing ISTQB Agile Foundation Extending the ISTQB Program’s Support Further Presented by Rex Black, CTAL Copyright © 2014 ASTQB 1.
Extreme Programming.
Software Development In Agile
Presentation transcript:

Agile Development from a Product Management Perspective Scott Cressman Technical Product Manager, Sophos

Agenda How Sophos Vancouver works The Retrospective Conclusion Q & A

How Sophos Vancouver Works

History Converted to eXtreme Programming in 2005 Senior-level champion was important Disruptive, but turned things around Continuously evolving processes

Today Relatively mature processes Still different among teams Affected by project & program management requirements Still evolving…

XP Processes Release planning Iterations Stand-ups Pair programming Retrospectives Test driven development Story test driven development

Dividing up the Product Management duties

Project Framework Translation layer High-level Project Management XP happens underneath on the day-to-day level

The Retrospective

[ Release Planning ] Iterations Acceptance Testing Communicating Externally Estimation Releasing Retrospectives Loose Ends

Release Planning Get everyone on board PRD & Project framework Frequent updates

Release Planning Management tests Not “SMART” enough Business-related goals often out of team’s control

Release Planning Release planning without the entire team Everyone not on board Different levels of understanding

Release Planning Customer doing QA’s job Overloads the customer Turns QA into robots Behaviour driven development

Release Planning Thorough story preparation Spirit of a story Mockups Consideration of a story in the context of the release

Release Planning Internal releases Communicates progress Communicates quality Gather feedback with time to react

Release Planning Re-release planning Use yesterday’s weather Do at least once in a project Do when the landscape changes

The Retrospective Release Planning [ Iterations ] Acceptance Testing Communicating Externally Estimation Releasing Retrospectives Loose Ends

Iterations “Linear” Development Ideal, but not realistic You can’t know what you don’t know Communicate well instead

Iterations Micro-managing Require accountability Provide direction Be reasonable

Iterations Communicating business events Gets team emotionally invested Subconscious prioritization, sense of urgency

Iterations Fixed-length iterations Base on story size Don’t be afraid to mix it up

The Retrospective Release Planning Iterations [ Acceptance ] Testing Communicating Externally Estimation Releasing Retrospectives Loose Ends

Acceptance Strict acceptance expectations Collective agreement on requirements Be consistent Be firm!

Acceptance Spend time accepting test cases Story expectation transfer Test brainstorming Decreases subsequent “thrash”

The Retrospective Release Planning Iterations Acceptance [ Testing ] Communicating Externally Estimation Releasing Retrospectives Loose Ends

Testing Dev & QA Pairing Breaks down the fence Decreases “thrash” Whole greater than the sum of its parts

Testing Keeping nightly “A8N” green Infrastructure is fragile Sloppy check-ins Changed the definition of “green” to be 95% passing

Testing Automating tests Over 60% of tests are automated Makes releasing easier & faster

The Retrospective Release Planning Iterations Acceptance Testing [ Communicating Externally ] Estimation Releasing Retrospectives Loose Ends

Communicating externally Translating to the rest of the organization Completely agile organizations do not exist Translate to non-agile departments

Communicating externally Constant & honest communication Frequent updates Honesty – they will find out the truth eventually!

The Retrospective Release Planning Iterations Acceptance Testing Communicating Externally [ Estimation ] Releasing Retrospectives Loose Ends

Estimation Estimation improvement Requires deliberate effort Accountability is key

Estimation “NUTs” (AKA story points) Standardize definition of a story point Decrease chance of misunderstandings

The Retrospective Release Planning Iterations Acceptance Testing Communicating Externally Estimation [ Releasing ] Retrospectives Loose Ends

Releasing Release criteria Know when you’re done Gut feel is still a valid metric!

The Retrospective Release Planning Iterations Acceptance Testing Communicating Externally Estimation Releasing [ Retrospectives ] Loose Ends

Retrospectives Weigh the importance of results Avoid navel gazing

The Retrospective Release Planning Iterations Acceptance Testing Communicating Externally Estimation Releasing Retrospectives [ Loose Ends ]

Loose ends Standardization across teams Teams naturally tend to grow apart Deliberate communication can offset this

Loose ends Lack of domain knowledge on team Ignorance not OK just because you have a domain expert Should keep up on industry Team needs to take an interest!

Loose ends Implementing strong process Agile ≠ no process! Promote positive behaviours Change when appropriate

Loose ends Poster A.D.D Less is more! Make content useful and relevant Regular audits are necessary

Loose ends Addressing tech debt Happens, but isn’t generally planned Continue to build up tech debt Hasn’t hurt us…yet

Loose ends Managing by metrics Ensure metrics will promote desired behaviours Ensure they are actionable

Loose ends Tools to support agile process No tools have done exactly what we wanted Should provide complete visibility Any suggestions?

Loose ends Remove disruptive team members Get the wrong people off the bus Tough, but necessary Don’t be afraid!

Conclusion

Q & A