Software Craftsmanship

Software Craftsmanship
Software Craftsmanship

Software Craftsmanship – Agile methodologies have become the most popular approach around the world. These methodologies increasingly emphasize technical excellence, with the Software Craftsmanship manifesto setting the standards.

Software Craftsmanship: Rooted in the Agile Manifesto

Written in 2001, the Agile Manifesto was crafted by 17 recognized specialists in the world of software development. Its purpose was to define what constitutes an agile methodology. The manifesto outlines four fundamental values along with 12 underlying principles:

Here are the four values of the Agile Manifesto:

  1. Individuals and interactions over processes and tools
  2. Working software over comprehensive documentation
  3. Customer collaboration over contract negotiation
  4. Responding to change over following a plan (Note: We value the items on the right, but prioritize the items on the left.)

The Software Craftsmanship manifesto builds upon these four agile values to further reinforce the technical excellence advocated by the Agile Manifesto itself.

What Is Software Craftsmanship?

Craftsmanship is an agile approach that places a strong emphasis on the technical quality of software development. This approach emerged in response to a period where cost reduction and accelerated Time-to-Market were prioritized at the expense of quality.

The craftsmanship movement was born to recenter developers’ concerns on technical quality. In fact, it goes even further by drawing parallels with the quality of artisanal products.

A book titled “Software Craftsmanship” was published in 2001 to differentiate between developers confined to an industrial mindset and agile developers. It was in 2008 that the movement truly gained momentum with Uncle Bob’s proposal of a fifth value for the Agile Manifesto: “Craftsmanship over Execution.”

Sandro Mancuso’s book, “The Software Craftsman: Professionalism, Pragmatism, Pride,” has become a reference in the world of development.

Today, the craftsmanship movement is gaining more recognition, and craftsmanship coaches are emerging in large organizations to guide technical teams back to well-designed products.

The Software Craftsmanship Manifesto

Here are the four values of the Software Craftsmanship manifesto as articulated by the craftsmen who are part of this agile movement:

  1. Not only working software but also well-crafted software.
  2. Not only responding to change but also steadily adding value.
  3. Not only individuals and interactions but also a community of professionals.
  4. Not only customer collaboration but also productive partnerships.
    “In other words, while the items on the left are important, we have found the items on the right to be indispensable.”

By examining these values of Software Craftsmanship, we can see a strong emphasis on technical excellence, such as the mention of “well-crafted software.” Over the past decade, many companies had shifted away from technical excellence in favor of faster production cycles. Today, numerous enterprises still grapple with the consequences of that not-so-distant era.

In the Software Craftsmanship movement, one can indirectly trace a resurgence of the Extreme Programming (XP) approach, which also aimed to highlight technical excellence.

Original Manifesto: Manifesto for Software Craftsmanship

Conclusion

Our applications, services, and tools undeniably need to be well-crafted to avoid creating future legacies that can result in significant financial losses for the company.

Having well-crafted tools allows for enduring innovation capabilities and the ability to stay competitive. While companies may view it as an initial cost, it should primarily be seen as a future gain. Technical excellence will prevent companies from going through survival phases.

Is the Software Craftsmanship movement of interest to you?

 

Common mistake: Software Craftmanship (missing “s”)

(Visited 40 times, 1 visits today)
About Judicaël Paquet 368 Articles
Judicaël Paquet (agile coach and senior devops) My Engagements in France and Switzerland: - Crafting Agile Transformation Strategies - Tailored Agile Training Programs - Raising Awareness and Coaching for Managers - Assessing Agile Maturity and Situational Analysis - Agile Coaching for Teams, Organizations, Product Owners, Scrum Masters, and Agile Coaches Areas of Expertise: Scrum, Kanban, Management 3.0, Scalability, Lean Startup, Agile Methodology.

Be the first to comment

Leave a Reply

Your email address will not be published.


*