playbookLogoNew
Lean Agile Assessment
Watch the Demo

Eric Graves

Aerospace and mechanical engineer turned NPD systems engineer, Eric spends his time engineering better product develop systems, using Playbook as his tool of choice!

Search Result

Posts containing:

Applying Agile to Hardware Development (part 1)

Eric Graves- 11/8/16 06:30 PM

 

Agile development

Yes, Agile can be applied to hardware development! Learn which Agile principles apply to hardware, which don't and a hybrid approach that works for the unique needs of hardware development. In this post we look at Agile and the differences between hardware and software development -- sharing the top-3 reasons why hardware is different from software product development. 

Our conclusion, although Agile principles can be applied with benefit in hardware product development (Agile hardware development), it misses the mark in terms of a complete solution for hardware product development. Let me explain.

Agile Manifesto

The Agile Manifesto, first developed in 2001, has revolutionized software development. The principles, tools, and practices which have stemmed from it have been refined and spread through many software development companies. In the world of software, Agile consultants and development tools are multiplying like rabbits.

Hardware vs. software development

The rapid growth of Agile development is understandable because there are huge financial and cultural improvements realized by implementing Agile in software development. Yet, in hardware product development, Agile principles, tools, and practices have been slow to take hold.

Why is that?

Software product development and hardware product development are different. 

That is not to say that there are not similarities. Just as Lean Manufacturing has some commonalities with Lean product development, Agile software development has some commonalities with Lean hardware product development.

Some examples include the value of faster feedback and earlier learning enabled by smaller batches (see the posts in the Lean Startup series), test driven development, d

aily stand-up meetings, and visual work management. In many cases, a hardware team striving to be more Agile is moving in the right direction -- Agile hardware development.

However, just as there are critical differences between Lean manufacturing and Lean product development, there are critical differences between Lean software development and Lean hardware development.

Lean manufacturing practices can do more harm than good if blindly applied to new product development. The same is true of applying Agile to hardware.

It is time we saw the differences clearly and built our software and development systems to operate Leanly under these different conditions.

Top 3 differences in hardware vs. software development

Just to get us started, I will mention what I see as the ‘top 3’ differences. These have huge impacts on how we plan, manage, and execute our product development projects.

  1.  Procurement Lead Time

    Where software teams have a relatively short ‘compile’ step which resides within the Design-Build-Test cycle, hardware teams have a relatively long ‘procure’ step. Driving down the length of the procure steps is a key initiative in Lean NPD today, but we are not, nor will we be anytime soon, anywhere close to procuring parts and building assemblies in the few minutes it takes to compile software. From the first day of a new project through its last minute changes, lead time is ever present and highly impactful. This simple fact changes a lot about what we do and how we do it.

  2. Component Cost

    Software development is almost all labor cost. It isn’t difficult or expensive to give everyone full access to the latest and greatest version of the software for them to test. However, in hardware development, it costs a lot to give everyone who needs it access to the latest and greatest hardware, and it takes longer to deliver those units. Like lead time, component cost changes what we should do for maximum profit.

  3. Non-homogenous Work

    Where software teams are comprised of several different skill sets such as marketing, design, a few different fields of development, and quality, hardware teams are typically comprised of these and a great many more. In addition to the software increasingly present in new hardware products, there are often molded components, optics, sheet metal, castings, cabling, piping, circuitry, assembly, and packaging skills needed by different people who must stay in sync during product development. There are other additional skills needed in hardware development such as the research scientists, supply chain, manufacturing, receiving/inspection, and field service not typically involved in a software project. The list goes on and on.

The complexity of the communication channels and keeping everyone in sync on such a necessarily large team, like component lead time and cost, changes what we do in hardware product development.

Applying Agile to Hardware Development

This blog series explores many differences between hardware and software development. We will not only cover what is different but, more importantly, the implications of these differences and how we must modify the principles, practices and tools to meet the challenges of hardware Lean New Product Development. Stay tuned for Part 2…

----

Free ebook - Applying Agile to Hardware Product Development eBook (pdf)

Want to share the complete series on Applying Agile to hardware development? Download the Applying Agile to Hardware Product Development eBook (pdf).

Download my eBook

Watch this short video to find out the number one cause of project delays. It's not what you think. 

Show me the video

Related articles

Agile Development
Applying Agile Values to Hardware Development
Agile Principle 1: Early and Continuous Delivery of Value
Agile Principle 2: Welcoming changing requirements
Making Hardware Development More Agile 
Early Learning in Hardware Development
Agile Principles 4 - 12 to Hardware Development
Guide to Kanban
Guide to Applying Agile to Hardware Development