|
Are Agile Testers Different? On an agile team everyone tests, blurring the lines between the roles of professional developers and testers. What's so special about becoming an agile test professional? Do you need different skills than testers on traditional projects? What guides you in your daily activities? Lisa Crispin presents her "Top Ten" list of principles that define an agile tester. She explains that when it comes to agile testers, skills are important but attitude is everything. Learn how agile testers acquire the results-oriented, customer-focused, collaborative, and creative mindset that makes them successful in an agile development environment. Agile testers apply different values and principles-feedback, communication, simplicity, continuous improvement, and responsiveness-to add value in a unique way. If you're a tester looking for your place in the agile world or a manager looking for agile testers, Lisa can help.
|
Lisa Crispin, ePlan Services, Inc.
|
|
Driving Development with Tests: ATDD and TDD A perennial wish of testers is to participate early in the projects we test-as early as when the requirements are being developed. We also often wish for developers to do a better job unit testing their programs. Now with agile development practices, both of these wishes can come true. Development teams practicing acceptance test-driven development (ATDD) define system-level tests during requirements elicitation. These tests clarify requirements, uncover hidden assumptions, and confirm that everyone has the same understanding of what "done" means. ATDD tests become executable requirements that provide ongoing feedback about how well the emerging system meets expectations. Agile developers who also are practicing test-driven development (TDD) design methods create automated unit tests before writing component code.
|
Elisabeth Hendrickson, Quality Tree Software, Inc.
|
|
Test-Driven Analysis: Focus on the User, Not the Code Test-driven analysis (TDA) focuses on the system at the user interface level. By concentrating on scenarios from the users' point of view, TDA examines the inputs and outputs of a system and how the state of that system changes as a result of actions performed on the system. Further, TDA concentrates on creating tests that help developers and business analysts understand the problem domain and the system requirements. Ken Pugh explores how tests created during TDA efforts relate to user acceptance tests and how the TDA tests can propagate to those created in a test-driven development framework. Together with Ken, you’ll create analysis tests for a sample system and differentiate between various types of tests-acceptance, analysis, and design. This class is about the process of inquiry we need during analysis to answer the question "I know you're ready for testing, but what are you testing for?"
|
Ken Pugh, Net Objectives
|
|
The Impact of Poor Estimating and How to Fix It Running Scrum by-the-book for three months, the team was continually failing to meet its delivery commitments. As a result, trust between the business managers and the team degraded almost to a point-of-no-return. Even holding bi-weekly retrospectives, the team could not pinpoint the problems causing their inability to release iterations on time. Mitch Lacey was asked to assist the team in finding the root causes of the problems. He analyzed multiple aspects of the project-from individual work items to planning meetings. Multiple issues were identified, but one thing stood out above all others-the estimation process they used had caused the team to miss its deadlines again and again. Mitch discusses the estimation problems the team was having, how they were fixed, and the resulting improvements in customer satisfaction value delivered.
|
Mitch Lacey, Ascentium
|
|
Continuous Integration: The Cornerstone of a Great Shop Jared Richardson believes that of all the development practices being promoted today the best single practice is continuous integration. It's a simple concept-you run a software program that monitors your source code in an automated version control system. When anything changes, your code is automatically checked out, re-built, and all the automated tests are re-run. Continuous integration gives you an early warning if anything in the most recent changes broke the software. Continuous integration forces you to use 100 percent source code management and demands a solid, automated build script. It provides a framework for your automated tests to grow, live, and thrive. Continuous integration becomes a new "team member" who keeps a constant eye on your code and provides the reminders you need to keep the product solid and your team on track.
|
Jared Richardson, 6th Sense Analytics
|
|
Better Software Conference 2008: Agile Software Testing Strategies Test automation is like exercise. We know both are great ideas, but most of us don’t do enough of either. Although we know that creating a solid automated test suite is critical to any agile testing strategy, we are often just told to "Do it" without much support-money or people. Jared Richardson examines the infrastructure and tools needed for your automated testing to succeed and prosper. Jared examines three strategies-test-driven development, defect-driven testing, and blitzkrieg testing-you can use to ensure great test coverage on your projects. You'll gain an understanding of how to leverage your testing investments by employing continuous integration practices in your development projects. With real-life scenarios as a backdrop, Jared discusses appropriate testing strategies for your current project or the next one down the road.
|
Jared Richardson, 6th Sense Analytics
|
|
Agile Leadership: Coaching Great Teams When adopting agile methods, many project managers find it difficult to move from a traditional, control-based model to a servant-leader based model. This paradigm challenges managers to their core because agility demands a coaching-driven mindset rather than the classic "I'm-in-charge" view. Explore the core aspects of agile leadership and team coaching with Bob Galen as you look at leadership from an agile perspective. Bob discusses "coaching up" the team as part of an agile adoption strategy and offers a conversation framework you can immediately use at work-and at home. Learn the fundamental coaching patterns and anti-patterns as you find out when to step in to help and when to be patient. You'll have the opportunity to practice a conversation or two and hone your new coaching skills.
|
Robert Galen, RGCG, LLC
|
|
A Kanban System for Software Engineering Ideas from Lean Thinking have been growing in popularity with the Agile software development community. Over the past year, the use of kanban (literally signal cards) popular in manufacturing has been seen as the significant innovation in managing agile work and is growing in adoption at firms such as Yahoo! David Anderson introduced the first electronic kanban system at Microsoft in 2004 and has since extended the technique through his work at Corbis. Kanban acts to limit work-in-progress and focus the team on achieving a continuous flow of value to the customer. Kanban innovates on accepted agile management practice by providing an iteration-less process with a regular release cadence. It helps achieve a balance of demand against capacity on the team and eliminate multi-tasking. David will present a brief history of the technique through case study reports from teams at Microsoft and Corbis.
|
David Anderson, Modus Cooperandi
|
|
Better Software Conference & EXPO 2008: Pragmatic Agility - Principles, Not Dogma You've got questions. Andy Hunt has answers. What is agile software development all about? Why the sudden popularity of agile? Why is it fundamentally different from other approaches? Will it work for my organization and me? Join Andy, one of the seventeen original signatories of the Agile Manifesto and a founder of the Agile Alliance, for his pragmatic take on the answers to these and your other questions. Look at the foundations of agile software development and see what problems agility seeks to address. Don’t be distracted by dogma as you take some time to explore the core aspects of agile development. Andy presents a brief overview of the major agile methodologies and walks you through a typical day in the life of an agile developer. Find out what's really important about the agile approach and take back new ideas to help you transition to agile while avoiding common stumbling blocks.
|
Andrew Hunt, Pragmatic Programmers
|
|
More than the Process Police: CMMI® Process and Product Quality Assurance For organizations to succeed in process improvement efforts, they must determine whether newly introduced processes are, in fact, being adopted by managers and practitioners. The Capability Maturity Model Integrated (CMMI®) identifies this verification activity as Process and Product Quality Assurance (PPQA). If you think PPQA is simply "process police," you're not getting all that you should out of your CMMI® practices. Done right, PPQA can be a driving agent for change in your organization. Unfortunately, all too often PPQA ends up little more than a post-mortem review of what was done wrong. That approach, which offers little opportunity to change behavior, not only lowers the value of the process, but also hampers change management efforts. Will McKnight demonstrates the potential of an efficient PPQA process.
|
Will McKnight, Next Level Consultants
|