An Open Letter to Donald Trump

My name is Dianni Flores and I am a student attending Summit Shasta in Daly City. In my English class, we have been in the process of completing a project about how America should or should not be…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




Taking the stairs is agile

There was a fire drill at work this week. I work on a middle floor of a mid-rise building, so I had to walk down some stairs on the way out. (The building has elevators, but of course we couldn’t use those during the drill.) We all assembled in the park and waited for the “all-clear” before we returned to the building.

There was a long line to get back into the building, and a long line through the lobby. Then, a decision point: the elevators or the stairs. I usually take the elevator when I get to work in the morning, but the lobby was very chaotic at this time. I decided to follow the line of people moving slowly into the stairwell; it seemed more appealing than standing around waiting.

I remarked to my co-worker as we walked together that our choice to take the stairs exemplified one our agile software development values: we were preferring to take small, demonstrable steps towards our goal over attempting a plan to get there in one big push.

The elevator seems easier because there are fewer steps to take. And in perfect conditions, taking the elevator is faster, too. The potential efficiency is alluring. But there is hidden risk. If the power goes out or there is a mechanical failure I may be stuck in that elevator for a long while. If other people get on the elevator with me, or other people on other floors request the elevator, they may cause the elevator to stop repeatedly on the way to my floor. And if I’m not paying attention I could even miss my floor and have to wait for the elevator to go back down again.

It is like that with software, too. Making a big plan for how you are going to build software that assumes perfect conditions is tempting, but risky. If your plan is based on faulty assumptions, but you don’t learn that until you think you’re almost done, you may have wasted a lot of time. Stakeholders may change their minds and force you to re-work things again and again. And if you aren’t paying attention, you’ll find you have nothing to ship when your deadline rolls around.

Sometimes the elevator is the right choice. But when you’re working in an uncertain environment, or an environment in which the cost of failure is high, well… maybe you should take the stairs, and consider an agile approach to software development.

Add a comment

Related posts:

Mystic Sea

Not tagging writers here to avoid bulking their incoming messages but feel free please to use Mystic Sea as a prompt or a theme for any of your submissions to Soul & Sea. No deadlines. Thanks ❤

What is a Neural Network?

A neural network is a network of neurons inside animal as well as human brains which helps in communicating. This article is about artificial neural networks which are computing systems inspired by…

The Changing Design Process

The shape of the design development process has changed over the last few years with the emergence and growth of a very large ‘front end’ also known as ‘fuzzy front end’. The front end is made of the…