Agile and the Theory of Constraints – Part 3: The Development Team (1)

(Note: The first version of this was a very random draft rather than the first part that I wrote. I blame computer elves. This should be a bit more coherant) This episode of the series will focus on the development team – how a feature idea becomes a shippable feature. A few notes before we…

0

Trip Report: Agile Open Northwest 2017

Agile Open Northwest uses a different approach for running a conference. It is obviously around agile, and there is a theme – this year’s was “Why?” – but there is no defined agenda and no speakers lined up ahead of time. The attendees – about 350 this year – all show up, propose talks, and…

0

Stop writing bad tests. Write only the tests that you can do great.

I’ve been working on a talk on ways to make unit testing easier. I has not been going well; I’d come up with an approach I liked, do most of the slides for it, come back to it, and be unhappy with what I had written. This happened – and I am not exaggerating –…

3

You Suck at TDD #8 – Doing fewer things

Welcome back to You Suck at TDD. Today’s code will show up in the Improvements-Phase-3 branch if you would like to follow along. In our last episode, we concentrated mostly on the Employee fetching and filtering. Things are better, but we still have a problem… Well, actually, we have a number of problems, but we’ll start…

1

Agile and the Theory of Constraints – Part 2: The development cycle

In the last post, I talked about some of the analysis used in lean. Now, let’s see how we can apply the same principles to the software world. I will start by trying to create a value-stream map. But where to start? There are three levels at which we can do the mapping: The entire organization,…

0

Agile and the Theory of Constraints – Part 1

I’ve been spending some time over the past few months exploring the lean side of the house and looking for things I can adapt into the agile side of the house. The most interesting thing I found was the theory of constraints. After spending some time writing this, I realized that I need to split…

2

Doesn’t pairing cost twice as much?

(I was recently involved in a discussion about pairing, and I think what I wrote will be of more general interest.) Many teams evaluate pairing from a simple mathematical perspective. Total work done = # of team members * amount of time spent working If you want to increase the amount of total work done, then…

3

You Suck at TDD #7 – Improvements Phase 2

All changes from this post are in the Improvements Phase 2 repo… Commits that start with “R:” are done through Reshaper. I’ll cluster them together this time. R: Start of Phase 2 Last time, I created the EmployeeFilter abstraction and populated it with code from the GetEmployees() method. That was a pretty typical refactoring to…

1

You Suck at TDD #6 – Improvements Phase 1

Welcome to the first post on improving the yucky code. I have a few points I’d like to cover briefly, and then we’ll dive into the code. First off, I’m going to end up refactoring to a specific endpoint, but that is not necessarily the only endpoint or even the best endpoint. Not only are…

0

You Suck at TDD #5 – Homework

It is now time for me to turn the tables on you, to present you with some homework. If you take a trip to my Github account, you will find the following lovingly crafted repo. In it, you will find some yucky code. It’s not terrible code – in fact, it’s pretty average code from my…

0