Northern Virginia Software Symposium
November 6 - 8, 2009 - Reston, VA
View the event details here ».
David teaches and coaches the adoption and improvement of agility as a delivery tool. His work includes helping companies of all sizes all over the world. Sometimes he is pairing with developers and testers, while other times he is helping to invent, evolve and plan the delivery of all types of products and projects. David also spends a great deal of time helping leaders at all levels find ways to pragmatically use agility to foster innovation.
Prior to working as a full time coach, David spent years building software in a variety of domains: digital audio, digital biometrics, medical, financial, retail, and education to name a few. David now leads DevJam, a company composed of agile collaborators. As mentors and practitioners, DevJam focuses on agility as a tool to help people and companies improve their software production skills. DevJam provides seasoned leaders that strive to pragmatically match technology, people, and processes to create better and cooler products in competitive cycles.
Along with teaching and coaching, David participates in conferences around the world. He is the recipient of the Agile Alliance, 2009 Gordon Pask Award. David continuously contributes to books and various publications.
For coaching information, presentations, and more, visit www.devjam.com
Many people simplistically apply agile recipes, assuming a one size fits all approach. This may lead to naive use beliefs like collocation breeds instant success. While sitting together always helps, it does not mean that people spontaneously collaborate to create sustainable value.
Instead of approaching agile methods like a recipe, this session will teach you to design agility that is a useful tool for your project community. We will cover practice selection ideas, tools for creating healthy development eco-systems and product discover tools. If you would like to improve the stickiness of your agility, stop in learn a pile of techniques to use before holding your first planning session.
Imagine you want to use agile methods and you’re looking for ideas from introduction to iteration, this is the path we will take. We start by will examining ideas for selecting which practices will improve your existing strengths and address your existing issues. From there, we will walk through growing product and customer knowledge, creating a collaborative work area and two levels of planning: planning to discover and planning to deliver.
While actors and use cases often left users behind, personas and story maps bring the users to life and help mine real value. This session will teach you how to craft personas and use them to drive value into your development stream. The tools presented will help you better understand your buyers and users and build strong product backlogs and product road maps.
The session starts with an overview of what personas are and why people use them. From there, we will start from the beginning: who do you use to pattern your personas and who has the best skills to create them. Once we have created a few personas, we will explore how they can be used to craft story maps, create acceptance tests and help keep the user's experience, and their needs in the minds of the development community.
Being agile does not mean living life one iteration at a time. Agile projects without a long view can run into the common design problems of the past. Planning iteration by iteration is often foolish and feeds the myth that agile projects do not think beyond a few weeks. Successful agile projects plan within iterations and across iterations. The later planning is called release planning and it is the forum where agility first engages architecture and other cross cutting concerns.
Architects who think that agile projects evolve code one test at a time are only partially correct. Agile projects review and evolve architecture with unit tests, acceptance tests, architectural spikes, and continuous review of the system's ability to adapt and respond.
There is a home for architects and architecture on agile projects, and other traditional roles, but the there are some new variations. This session will talk about the relationship of agile methods and architecture and design and how they can work together to make stronger products and systems. The session will draw on information and anecdotes will come from projects of all sizes within companies of all sizes, including some large and complex systems.
How testable are your requirements? If they are user stories, you have better odds than others, but you may still struggling to increase your automated feature testing. Acceptance test driven (ATD) means understanding the needs or the value before you start coding, and it is often hard to make ATD sticky in organizations.
While tools and geekology are needed, the upstream flow with the larger project community must exist to be successful. The session will teach you how to spark ATD from idea to code, connecting the dots and the players along the way. From product concept to automated tests, we will discuss and practice various ways to connect business, development and testing around the creating and getting value from ATD.
After a short introduction, we will practice to tasks need to take an idea to a set of testable statements. We will touch on tools, but not over focus on tools. Tools come and go and being stuck on a tool is often the failing of making ATD sticky.
The larger focus, and the deeper value, will be the importance of gathering the core players needed to create well formed acceptance tests that clarify value and promote collaboration within project communities.
Whether it was intentional or not, the agile community has been borrowing successful ideas from the lean manufacturing for years. Lean practices, like finding and removing wasteful work, can be applied without needing special permission or certification. Ideas like kanban (visual planning aids) and kaizen (continuous learning) are simple, helpful tools that are easily applied and produce great results.
This session will discuss how lean thinking has influenced agile methods and how you can use simple lean ideas to produce better software more often. We will not get stuck on wasteful discussions about "what is Scrum?" or "what is agile?" Instead we will talk about (and try - time permitting) a collection of useful lean practices and tools.