Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼


The Discipline of Agile

The Discipline of Teamwork

Agilists, when given the opportunity, will rarely work alone because they know it is too risky to do so. It requires discipline to follow non-solo practices such as pair programming and modeling with others because it's too easy to assume that you're smart enough to get the job done quickly by yourself. It also requires discipline to be responsible for the entire system, not just your little part of it, motivating you to work closely with and thereby learn from people with different backgrounds than your own.

It requires discipline on the part of management to stay out of people's way and allow them to self organize, even when it's clear that the team is likely making a mistake, and not try to plan everything in detail for the team. Providing people with learning opportunities such as this can be frustrating at times but is absolutely critical for growing your staff. Another aspect of agile project management discipline is the act of holding a daily stand up meeting to promote communication within the team about issues that really matter, such as what everyone is doing and what problems they're running into. This forces you to confront and deal with problems as they arise, instead of papering them over with overly optimistic status reports.

Agile software development, when done properly, is highly disciplined. Agile is much more highly disciplined than traditional development, which in turn is more disciplined than code-and-fix development. If anyone tells you that Agile isn't disciplined, then ask if they have ever been involved with an Agile project, and if so, whether it met the criteria defined earlier. I have yet to meet someone with both real-world Agile and traditional experience who claims that traditional is more disciplined, and it appears to me that traditionalists are clearly throwing stones in their glass house by claiming otherwise.

I'd like to thank Ted Rivera of IBM for his detailed feedback regarding the initial draft of this column and Bill Krebs, also of IBM, for the various insights that I gleaned from him in the conversations that we've had around this topic.

How to Tell the Agilists from the Code-and-Fixers

Sadly, there is no official definition for "Agile Software Development" against which you can determine whether a team is agile. However, I've found true Agile teams:

• Take a test-driven approach to development.

• Work very closely with their stakeholders on a daily basis, and the stakeholders have active roles on the team.

• Produce working software on a regular basis and can show a clear track record of doing so throughout the project.

• Work in an open, collaborative, and self-organizing manner.


Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.