Skip to main content

Design and Architecture

Tutorials

MO Essential Test-Driven Development
Rob Myers, Agile Institute
Mon, 06/02/2014 - 1:00pm

Test-driven development (TDD) is a powerful technique for combining software design, unit testing, and coding in a continuous process to increase reliability and produce better code design. Using the TDD approach, developers write programs in very short development cycles. The developer first writes a failing automated test case that defines a new function or improvement, then produces code to pass that test, and finally refactors the new code to acceptable standards. The developer repeats this process many times until the behavior is complete and fully tested.

Read more
TF Software Design for Testability
Keith Stobie, Salesforce.com
Tue, 06/03/2014 - 8:30am

Testability is the degree to which a system can be effectively and efficiently tested. This key software attribute indicates whether testing (and subsequent maintenance) will be easy and cheap—or difficult and expensive. In the worst case, a lack of testability means that some components of the system cannot be tested at all.

Read more

Keynotes

K2 For Maximum Awesome
Joe Justice, Scrum, Inc
Wed, 06/04/2014 - 10:15am

An agile hardware and engineering company of 500 collaborators in twenty countries, Team WIKISPEED uses test-first development practices, is run by Scrum teams, and produces road legal cars, micro-houses, and social-good projects. Joe Justice shares how their 100-MPG road car was created in just three months through object-oriented design, iterative development, and agile project management.

Read more
K3 An Agile Throwdown: Munich Takes on the Columbus Agile Benchmark Study
Michael Mah, QSM Associates, Inc.
Thu, 06/05/2014 - 8:30am

Agile has not only gone mainstream, it’s gone global. Data on agile team performance, time-to-market, and quality have emerged in the past decade. In 2012, a group of Columbus, Ohio, companies—business, IT, and financial services firms—participated in the first ever “Columbus Agile vs. the World” study. They collected velocity, schedule, effort, staffing, and quality data which were compared against QSM’s Software Lifecycle Management (SLIM) database. Analysis revealed delivery was 31 percent faster with 75 percent fewer defects than industry norms. Enter Munich, Germany.

Read more
K4 Producing Product Developers
David Hussman, DevJam
Thu, 06/05/2014 - 3:45pm

Many teams and organizations have found agile methods help them produce more. Where critical thinking is alive, a more important question arises: Are we producing the right thing? Even though agile tools and processes have helped produce more, they often fail to help us produce the right product, change our focus to product over process, or improve product learning.

Read more

Concurrent Sessions

AW2 Story Maps, Customer Journeys, and Other Product Design Tools
David Hussman, DevJam
Wed, 06/04/2014 - 12:45pm

Are you sure you are building the right product? Although agile methods help teams build products faster, many teams struggle to validate customer direction or product features. Some teams talk about “grooming the backlog” but still find their stories are not strong. If you’re struggling with bad backlogs or weak stories, this session is for you.

Read more
AT10 Test-Driven Development Illustrated
Carsten Czeczine, binaris informatik GmbH
Thorsten Werle, binaris informatik GmbH
Thu, 06/05/2014 - 2:15pm

Agile methods help development teams create good quality code and ensure this with early testing. Test-driven development (TDD) is the preferred approach to accomplish this. First, you write the tests; then, you write the code so the tests pass. Sound simple? It is—when done correctly. And this is often where the trouble starts. Thorsten Werle and Carsten Czeczine explain the basic steps of TDD. You’ll see how to write tests for non-existing code using the compiler as your first testing tool. You’ll learn that TDD does not start with unit testing but with an integration test.

Read more