From the Developer Essentials Newsletter: The intersection of Agile methods and technical software development.
An editor of Dr. Dobbs magazine once wrote to me—replying to my response to an article—“All the benefits [of Test-Driven Development] could be attained equally by writing tests after the code, rather than before.”
Tests exercise software to be sure it’s doing what was intended. So, whether you use Test-Driven Development (TDD) or write unit-tests
Next year I’ll likely be teaching Essential Test-Driven Development to a team that includes about 50% COBOL programmers. I told the client I’d look for a good object-oriented (OO) primer for those developers to read in advance. As you can imagine, it’s tough to “unit-test” software that doesn’t have clear “unit” boundaries. COBOL relies on
Occasionally, I’ve been asked to help design team rooms for a client. They may have been planning to hire an ergonomic architect/designer in addition to an Agile Coach. Great, but before they got that far, I had two suggestions for them:
- Involve your existing Agile team members in discussions in order to uncover their
You’ve heard the old adage about the lumberjack who—in order to cut a tree in an hour—will take 45 minutes to sharpen the saw? This old analogy really needs updating: Not many of us are all that familiar with the logging industry.
I like to instead use the metaphor of the chef who sharpens her
In our BDD course, we use a real example of an online library patron portal. Course participants are provided with a number of (often vague) business rules regarding whether or not a book loan can be renewed. Some have to do with the state of the book (e.g., has another patron requested a “hold” on
I often get questions about testing “the user interface” or “the front end.” This comes up in all our technical Agile classes (Behavior Driven Development, Essential Test-Driven Development, Certified Scrum Developer), or most frequently during
We’ve seen how refactoring becomes the primary design activity on an Agile team. Diligent, confident refactoring is possible to the degree that the code is tested through an automated test suite. If the tests don’t cover a portion of the code, a defect may be introduced when that code is altered. If the tests are