Test Driven Development: Writing Clean Code

Imagine shipping software with no bugs! Imagine adding new features at any time without breaking existing code. Imagine no more long, late night debugging sessions. It turns out there are teams delivering on these dreams. Test Driven Development (TDD), a key practice of Agile methods, is critical to their success.

Agile methods insist on a high quality code base at all times. Clean tested code lowers the cost of iterative feature development. A comprehensive suite of continuously running unit and acceptance tests provides scaffolding for safe, frequent changes and feature addition. Testing as you go eliminates costly, unpredictable test and fix cycles.

As a developer or tester participating in this seminar you'll learn the rhythm of test-code-improve-integrate. You'll see how unit tests support easy, safe design improvement, or refactoring. You'll gain skill by practicing TDD techniques in hands-on exercises throughout the course. You'll integrate your working code into a code base and see how continuous integration software runs regression tests on the entire code base providing immediate feedback on your check-in. You'll see how that suite of tests helps you quickly identify and correct bugs that creep in.

Test Driven Development is a skill that takes time and practice to learn and perfect. In this two-day seminar you'll learn from experienced coaches with many years experience using tests to drive effective designs and coding practices. You'll receive individual time from the instructors, allowing you to leave with a strong foundational understanding as well as the tools needed for further improvement. At this course you will:

Intended Audience

This seminar is ideal for developers, testers, architects and other IT professionals who are interested in creating clean, well crafted code.

Outline

Instructors

As a Senior Software Engineer, Zhon Johansen is responsible for building software products for customers. For the past 8 years, all of Zhon's code has been written using TDD. In addition to delivering well tested code, he has studied, practiced, taught, and influenced companies to adopt Extreme Programming since early 1999.

He helped coach "XP for a Day" at the first XP/Agile Universe. He presented "Extreme Fishbowl" at several conferences including XP/Agile Universe 2002. He presented "Making money with (or without) software" at Agile 2004, "Stop Interacting with the Customer!" at Agile 2005. In 2006, he presented "Agile before they know it" and "Humans: Designed for Interaction" at Agile 2007. He is an active participant (and often facilitator) at the Salt Lake Agile Round Table. Zhon co-founded XP Utah in December of 2001 and has run it continuously since then.

Participants will learn

What You will Cover

Who Should Attend

Developers, Testers, Architects, anyone who builds software product.

Random Thoughts

clean code allowing for simple emergent design changeable, modifiable

Why do I want to teach this class (My Objective)?

Are these the right people? What do they want from me?

Topics to cover

Things to do

Schedule 1

Schedule 2

TestDrivenDevelopmentSeminar (last edited 2009-04-30 23:15:39 by localhost)