Channels ▼
RSS

Design

SCRUM Meets CMMi


Pablo is a software engineer at Codice Software. He can be reached at psantosl@codicesoftware.com.


About 80 percent of software houses around the world are small companies. Compared to the large companies, small shops typically have advantages in terms of agility, performance, motivation, and focus. What they don't often have is validation that the processes they use to deliver software also focuses on quality—the type of validation usually reserved for large organizations that have adopted capability models like CMMi.

However, Codice Software (www.codicesoftware .com) is a small company that adheres to both Agile methodologies (SCRUM) and process improvement (CMMi). In this article, I explain why we pursued CMMi evaluation during the development of Plastic SCM (a configuration-management and version-control tool), what went smoothly, and what difficulties we had in making our SCRUM process fit within CMMi rules.

Why CMMi?

While companies usually adopt CMMi (www.sei.cmu.edu/cmmi/cmmi.html) to improve their software production methods, they recognize that the quality status is also worth the effort. Fewer than 2000 companies worldwide have reached one of the four CMMi official levels, so joining this exclusive club looks appealing to many companies.

Our motivations to achieve CMMi were:

  • We expected rapid personnel growth, so having well-defined procedures would help us grow.
  • As a small company entering a competitive market, a CMMi level would give us a competitive edge.
  • We didn't want our Agile processes to degrade into code-and-fix cycles.

But we also had concerns. For instance, we didn't have previous full CMMi experience, we were worried about CMMi introducing unnecessary bureaucracy, and we were totally committed to SCRUM, even though from what we could tell, it wasn't fully compatible with CMMi.


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