| AGILEAN | TM |
|
|
|
|
||||||||||
| Information Driven | |||||||||||||||
![]() |
|||||||||||||||
|
Lean Software Development Design for Productivity There is a wide gap between the top and the “average” software developer. Is this an inherent problem that can only be solved once the “software wizard gene” is isolated? Or is there a way to modify the software development approach that increases everyone’s productivity? As performed today software development is a daunting task. A vast multitude of commands, methods, structures, interfaces, routines, expressions, data logic and loops must be kept sorted in one’s head while typically working long hours, with lots of interruptions, under pressure situations. No wonder software development requires an incredibly diverse set of skills. It’s not a coincidence that the approach and tools for developing software were designed and built by the same people that today are so powerful at constructing software… built by wizards for wizards. But because certain individuals are capable of managing complex tasks, this doesn’t mean that it’s the best way for those tasks to be designed. Anyone can create more and higher quality code if those tasks were designed for productivity. Design for Automation The number and variety of tasks that people can perform are virtually limitless. That is part of the problem. Our work is too complicated because we can do it, not because we have to. IBM discovered this during the design of the Proprinter. They used an approach called design for automation to simplify the manufacturing tasks so they could be done by robots instead of people. They believed robots could build it cheaper. What IBM discovered was that what worked for robots, worked even better for people. The Proprinter was a dot matrix printer designed and produced by IBM in the 1980’s. At that time a low cost printer was needed to match the increasing demand and dropping price of the IBM PC. Previous printers were manufactured by people in an assembly line. To reduce costs IBM, decided to design the Proprinter for automation; meaning to design it so that costly human labor could be replaced by robots. IBM understood that robots are not capable of performing the same complex tasks as people. They could not simply add robots to the existing assembly line. People can easily recognize and locate hundreds of parts, apply forces in a wide range of magnitudes and direction, and effectively manage constant variation. Robots are much more limited. For robots to be able to manufacture the Proprinter, IBM used design for automation to:
Mistake proof the process so parts only fit one way and that the next part could not be inserted unless the previous part was correctly installed Design for Productivity Once implemented, the robotic assembly of the Proprinter was an incredible success by any measure. The Proprinter had a mean time to failure of 20 years; it made IBM the low cost producer of PC printers; and it became the best selling personal printer in the U.S. But the real lesson was about designing for productivity. After designing for automation IBM discovered that most of the assembly time of the Proprinter was removed. With the new process a person could assemble the Proprinter in less than 3 minutes. Design for automation enabled both robots and people to perform the work much better. In fact it turned out that the people were more productive than the robots and IBM eventually decided to eliminate all robots from the assembly line of the Proprinter. By starting out designing for automation IBM ended up designing for productivity. Prior to the Proprinter there was no concern that the assembly tasks performed by the workers were too complex and full of variety. No one thought it important to design for personal productivity. But when it became necessary to modify the manufacturing process so robots could perform the tasks, IBM discovered that their workers also became more productive, much more so than the robots. The same concept holds true for software development. Software assembly tasks are complex and full of variety, not necessarily because they have to be, but because they can be. Design for productivity takes a people centric approach that:
Adopting design for productivity takes the primary focus off of development tasks and places it on the people that perform them. The result is a dramatic increase in software development productivity by everyone, but with the greater percentage increase coming from the average developer. AGILEAN Corporation shows organizations how to use Agile Program Management and Lean Office Implementation to produce greater customer value in less time with fewer errors. For additional information, please contact us or visit www.agilean.com.
|
|||||||||||||||
|
|||||||||||||||
| Copyright 2008 © AGILEAN Corporation. All rights reserved. | |||||||||||||||