Channels ▼
RSS

Design

The Discipline of Agile


Discipline at Scale

There are several "Agile at Scale" practices that require a level of discipline rarely seen on traditional teams. First, Agile teams not only do a bit of initial architecture modeling at the beginning of a project, they also do the work necessary to prove that the architecture works early in the lifecycle. This practice, common in the Unified Process, reduces technical risk because it doesn't assume that the architecture works simply because the architects say that it will. It requires greater discipline than the traditional approach of detailed up front modeling because it becomes very clear very quickly whether the team actually has what it takes to deliver a working system.

Second, identifying quality of service (QoS) requirements, such as security and usability issues, and then convincing business stakeholders to weave them into their prioritized work item stack requires significant skill and discipline. It would be undisciplined not to address these requirements at all, but almost as bad would be to invest months at the beginning of a project to address them before delivering anything of business value. Yes, it's a lot of fun to work on cool technical frameworks, but that isn't what our business stakeholders are actually paying us for.

The third scalability issue surrounds software process improvement (SPI). The Agile approach is to regularly, at least once an iteration, take the time to consider how effectively the team is working together and whether something can be done to improve things. This continuous SPI approach enables Agile teams to take advantage of their insights right away, improving their productivity throughout the project. It would be undisciplined not to attempt SPI at all or to wait until the end of a project to identify "lessons learned" in project postmortems that do little more than give people a sense of closure after their traditional death march.


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.
 

Video