Print

Manifesto for software craftsmanship, and four dimensions of quality



Raja Bavani
Email
June 5, 2011 —  _Robert “Uncle Bob” Martin, one of the 17 original signatories of the Agile Manifesto, is also among the leaders who initiated the Software Craftsmanship movement back in 2009. He was concerned that agile practitioners were focusing more on iteration management activities and less on engineering best practices, hence the motivation of Software Craftsmanship manifesto to kindle the enthusiasm in software engineers to create high-quality products.

The Manifesto for Software Craftsmanship says:

As aspiring Software Craftsmen, we are raising the bar of professional software development by practicing it and helping others learn the craft. Through this work, we have come to value:

Not only working software,
    but also well-crafted software
Not only responding to change,
    but also steadily adding value
Not only individuals and interactions,
    but also a community of professionals
Not only customer collaboration,
    but also productive partnerships


That is, in pursuit of the items on the left, we have found the items on the right to be indispensable.

Whenever I read the Manifesto for Software Craftsmanship, I see a focus on quality along four critical dimensions:

Product Quality: "Not only working software, but also well-crafted software" provides a clear-cut direction on product quality in terms of design and code quality. It goes beyond that to cover several aspects of product quality that are necessary for any product to be valued as well-crafted by end users as well as maintainers.

Business Quality: "Not only responding to change, but also steadily adding value" is all about delivering business value. The quality of how a project team steadily adds value by delivering the most valuable features on time is more important than responding to change and establishing a comfort factor. This approach values the budget approved by project sponsors. This is what I refer to as delivering business quality.

Professional Quality:
"Not only individuals and interactions, but also community of professionals" summons the need to build the culture of knowledge communities or communities of professionals. When we limit ourselves to "individuals and interactions," we tend to limit our contributions as well as learning opportunities. When we become part of knowledge communities, we open up immense opportunities for sharing as well as learning. Sharing and learning are very critical to improve professional quality.

Engagement Quality: "Not only customer collaboration, but also productive partnerships" enables us to think in terms of engagement or relational quality. Customer collaboration cannot be confined to ensuring success at the project level. It has to be extended further to cultivate productive partnerships. That is the way to ensure engagement quality.

Undoubtedly, the Manifesto for Software Craftsmanship is here to stay, and will propel the agile movement for years to come.

Raja Bavani is technical director of MindTree’s software product engineering group in Pune, India.




Related Search Term(s): agile, Software Craftsmanship


Share this link: http://sdt.bz/35666
 

close
NEXT ARTICLE
Agile: The team game
Experts explain how organizations can transition development teams to agile, best practices to follow, and what to watch for Read More...
 
 
 




News on Monday  more>>
Android Developer News  more>>
SharePoint Tech Report  more>>
Big Data TechReport  more>>

   
 
 

 


Download Current Issue
APRIL 2014 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?