Industrial Logic -> Catalogs -> Workshop Catalog -> The Testing & Refactoring Workshop - TRW450

The Testing & Refactoring Workshop

Duration: 4.5 days
ID: TRW450

This workshop provides developers with numerous hands-on challenges in Testing, Refactoring and Evolutionary Design. It also includes a code review that gives a team a chance to learn how to improve their production and test code.

Show Condensed View

ID Activity Flavor Duration
2B Test-Driven Development
Test-Driven Development (TDD) is a practice for efficiently evolving useful code. While its name implies that it's mostly about testing, test-driven development is primarily about design: it keeps programmers focused on exactly what they need to build and helps them avoid over-engineering. Using this technique, programmers write a failing test, write code to pass the test, refactor the code and... Read more
interactive
Participants will get their hands dirty by using TDD to extend the demonstration code in our... Read more
45 mins
2C Test-Driven Development
Test-Driven Development (TDD) is a practice for efficiently evolving useful code. While its name implies that it's mostly about testing, test-driven development is primarily about design: it keeps programmers focused on exactly what they need to build and helps them avoid over-engineering. Using this technique, programmers write a failing test, write code to pass the test, refactor the code and... Read more
challenge
In this challenge, participants will be given the task of writing a program to solve a specific... Read more
3 hours
16C Mock Objects
When writing test and production code, it's useful to know when to introduce Mock Objects. This activity will help you understand what Mock Objects are, how they function at runtime, common implementation variations and usage patterns.
challenge
To fully understand mock objects, you need to get your hands dirty. In this challenge, you'll be... Read more
90 mins
16A Mock Objects
When writing test and production code, it's useful to know when to introduce Mock Objects. This activity will help you understand what Mock Objects are, how they function at runtime, common implementation variations and usage patterns.
simulation
The best way we know how to introduce people to Mock Objects is to have them experience a... Read more
25 mins
6D The Refactoring Challenge
The best way to improve your refactoring skills is to practice cleaning up poorly designed code. And we've got just the thing: code we custom-designed to reek of over 90% of the code smells identified in the refactoring literature. This poorly designed code functions correctly, which you can verify by running a full suite of tests against it. Your challenge is to identify the smells in this code,... Read more
large
The large version of our Refactoring Challenge gives participants ample time to discover many of... Read more
350 mins
7C Evolutionary Design
How does nature evolve organisms and what does that have to do with software development? If you study nature's approach to engineering, you often find that highly sophisticated organisms evolve from simple beginnings. For example, during the earliest growth stages, internal organs are basic but functional and will mature over time.
walkthrough
We will review ten practices of evolutionary design that complement Test-Driven Development and... Read more
3 hours
7A Evolutionary Design
How does nature evolve organisms and what does that have to do with software development? If you study nature's approach to engineering, you often find that highly sophisticated organisms evolve from simple beginnings. For example, during the earliest growth stages, internal organs are basic but functional and will mature over time.
challenge
After reviewing a description of a sophisticated software system, participants must decide what... Read more
30 mins
7B Evolutionary Design
How does nature evolve organisms and what does that have to do with software development? If you study nature's approach to engineering, you often find that highly sophisticated organisms evolve from simple beginnings. For example, during the earliest growth stages, internal organs are basic but functional and will mature over time.
coding
In a fishbowl, the workshop coaches and participants will begin the implementation of the embryonic ... Read more
45 mins
17B Storytest-Driven Development
Storytest-Driven Development involves determining if features of a system work according to a customer's expectations. There are many ways to implement Storytest-Driven Development, including using XML, Excel or simple languages. A typical challenge is to empower customers with tools that let them define Storytests (a.k.a. Acceptance Tests) without working with programmers. Another challenge is ... Read more
demonstration
We'll demonstrate FIT (http://fit.c2.com), Ward Cunningham's excellent open-source testing tool... Read more
20 mins
17A Storytest-Driven Development
Storytest-Driven Development involves determining if features of a system work according to a customer's expectations. There are many ways to implement Storytest-Driven Development, including using XML, Excel or simple languages. A typical challenge is to empower customers with tools that let them define Storytests (a.k.a. Acceptance Tests) without working with programmers. Another challenge is ... Read more
dialogue
The workshop coaches will lead a discussion about Storytest-Driven Development, sharing their... Read more
1 hour
17C Storytest-Driven Development
Storytest-Driven Development involves determining if features of a system work according to a customer's expectations. There are many ways to implement Storytest-Driven Development, including using XML, Excel or simple languages. A typical challenge is to empower customers with tools that let them define Storytests (a.k.a. Acceptance Tests) without working with programmers. Another challenge is ... Read more
challenge
Participants will be given the challenge of writing FIT tests for a sample program, using the... Read more
6 hours
19A Code Review
Our coaches give feedback on specific code they've been asked to study. They discuss the code with the programmers, highlight code smells, suggest specific refactorings and review testing strategies.
on-site
The coach(es) will meet developers face to face and analyze their code.
4 hours
19A Code Review
Our coaches give feedback on specific code they've been asked to study. They discuss the code with the programmers, highlight code smells, suggest specific refactorings and review testing strategies.
on-site
The coach(es) will meet developers face to face and analyze their code.
4 hours
5A Refactoring War
What's the fastest way to learn Martin Fowler's classic catalog of 74 foundational refactorings? It's called "Refactoring War," an educational game we invented to help groups rapidly learn a large number of refactorings. The game is played in teams and involves viewing refactoring cards, comparing the usefulness of the cards and deciding on which card is most useful. The team with the most... Read more
standard
A workshop coach will lead this activity.
1 hour

 
Industrial Logic, Inc.

Catalogs
· Workshop Catalog
· Experience Catalog
· Activity Catalog

Workshops
· The Extreme Programming
Workshop
· The Testing & Refactoring
Workshop
· The Design Patterns
Workshop

         			Send mail to webmaster[at]industriallogic.com with questions or comments about this web site.
Copyright © 1995-2006 Industrial Logic, Inc. All Rights Reserved.