Great art and the craft of software development
According to Pete McBreen's book 'Software Craftsmanship - The New Imperative', the most successful project using a complete and robust software engineering approach was the space shuttle software.
Space shuttle software was 420000 lines long with 1 error. It lasted 11 versions with a total of 17 errors. Commercial programs of equivalent complexity would have 5000 errors.
This is a proof that using a rigid and structured approach is very effective at developing safety critical systems. However the costs are usually exorbitant and mostly software development with this approach does not work very well. It is in this context that the term Craftsmanship was introduced and compared or contrasted with the term Software Engineering.
One of the classical problems in Software Engineering is getting engineers to consistently use effective methods to code. For smaller teams, Craftsmanship is a more appropriate metaphor than Engineering for getting developers to work more effectively. Craftsmanship has been a model that has been used throughout history to effectively develop and disseminate arts, crafts and technology. By taking a sideways step towards craftsmanship the software community can advance the state of the art so that we can truly talk about Software Engineering.
What is Software Craftsmanship?
Software Craftsmanship is a metaphor that can radically transform the way we create and deliver software systems, with implications for the way we develop software, manage teams and deliver value to the users.
It is an approach to software development that restores a developer to a central role in large-scale projects, and shows developers how to master the skills they need to succeed in that role. It is a response by software developers to the perceived ills of the mainstream software industry, including the prioritization of financial concerns over developer accountability.
It also transcends "software engineering," demonstrating that quality software can't simply be "manufactured": it must be built by craftspeople with pride in their work, and a personal commitment to excellence. Just as the modern carpenter benefits from better tools, materials, and understanding, the modern programmer can benefit from better computers, reusable components, and more robust languages -- but only if he or she is prepared to treat the software profession as a true "craft."
History of Software Craftsmanship
Software Craftmanship was first addressed way back in 1992 and is not a new strategy. It picked up momentum after Pete McBreen's book 'Software Craftsmanship - The New Imperative' was published in 2001. In his book, Pete presents an effective method to nurture mastery in the programmer, develop creative collaboration in small developer teams, and enhance communications with the customer. The end result-skilled developers who can create, extend, and enhance robust applications. The book also won the Productivity Award at the 12th annual Jolt Product Excellence and Productivity Awards.
Source : CIOL
Date : 2013-05-10