Accenture Beyond Software Applying Agile Principles To Connected Product Development PoV New

Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

BEYOND SOFTWARE:

Applying Agile Principles


to Connected Product
Development

1 | Beyond Software: Applying Agile Principles to Connected Product Development


By 2020, there could be more than 75 billion
devices connected to the internet.1 What’s
driving their proliferation? A combination of
pervasive wireless connectivity and low-cost
hardware platforms. The good news? Plenty
of opportunities for product developers with
great device ideas.
The bad news? Many product developers’ projects will fail to meet
expected financial goals. Declining R&D ROI over the past five years
provides ample evidence.2 Our experience suggests that products
frequently fail for the simple reason that they don’t impress customers.
The principal reason for that is incorrect assumptions about customer
requirements are often discovered far too late in the product
development project cycle.

Agile development methods can help with this. But many product
developers dismiss the incremental approach Agile requires. They
assume, incorrectly, that Agile is only useful for software teams.

Product developers do face challenges when they try to adopt


Agile methods. But with the right help and by following some key
steps, it is possible to introduce Agile methods to product
development and gain some significant rewards.

Properly wielded, Agile can be used to handle


even the largest programs with complete
visibility and a sense of “what are we going
to make happen today.”
Chris Eidler
VP Solutions Engineering, HPE

2 | Beyond Software: Applying Agile Principles to Connected Product Development


Lessons Learned: Outcomes of Traditional Hardware Development

12-18 months
Poor product

Product never ships

Missed market window

A typical product development project employing a phase-gated model will make


early and extensive assumptions about customer needs and technical feasibility. These
assumptions are made during expensive, upfront definition and design phases. They
represent significant project risks as they are effectively only hypotheses about what will
delight the customer and the feasibility of the enabling technologies.

And all too often, those assumptions are only discovered to be incorrect when it’s too late
to change course. That leaves project leaders with a dilemma: do they add a new feature
and accept a major delay, hold the schedule but release a poor product or cancel the
project completely?

Software developers, in contrast, know a better way to develop the right product, faster:
Agile techniques. By constantly prioritizing the most important features and limiting
the amount of work under development, Agile software teams quickly learn what their
customers really care about and can easily change direction knowing that they have not
wasted significant time or money.

Product development teams typically comprise software engineers working closely with
various types of hardware engineers. Leaders of these inter-disciplinary teams are keen
to emulate the Agile approach and capture its benefits. But they’re often discouraged by
misunderstandings about how they might apply Agile to product development.

Everyone has yet another PowerPoint deck but


decks don’t get you funded. To stand out and win
funding, you need the ability to show something
quickly, real hardware or the application.”
Christopher Marsh,
VP Engineering, Comcast TPX Advanced Products Group

3 | Beyond Software: Applying Agile Principles to Connected Product Development


FOUR STEPS TO AGILE
To help product developers overcome those misunderstandings and
move towards Agile approaches to delivery, we believe there are four
key dimensions that they need to consider.

01
Empower the user voice
Product development has traditionally been ‘requirement driven’. An extensive
document such as the Product Requirement Specification includes definitive
statements outlining what the product ‘must do’. Requirements Engineers are there
to understand the product intent and describe functionality to groups of developers
who may never meet nor understand the needs of the product’s end user. A lengthy
and expensive process, requirements solicitation and analysis consumes a significant
amount of total project time, particularly as given the separation between developer
and user, the specification must be complete and exacting.

An electronics manufacturer dedicated a significant percentage of total project


time to product definition and planning. Given that both of these tasks are non-value
add (but admittedly essential) the impact on Process Cycle efficiency was profound.
Accenture’s value stream analysis of the product development process suggested
that Process Cycle efficiency for this manufacturer was well below 10%. In simpler
terms, viewed through a Lean lens, less than a tenth of all development work was
actually considered value-add.

4 | Beyond Software: Applying Agile Principles to Connected Product Development


Accenture’s analysis of the product development cycle in the hardware storage
industry revealed that most product bugs were discovered 6 to 9 months after
they were introduced during the definition and planning phases. Such a long
‘time to discovery’ represents a huge cost saving opportunity if risks could be
evaluated and retired sooner.

So how can the product specification process be improved? A critical step is to


replace the document-heavy approach of traditional requirements management
with lightweight statements voiced from the perspective of the end-user. These
are then verified with valuable feedback captured from frequent product demos.
This approach has the following benefits:

The definition phase is significantly reduced, enabling the team to


start on valuable development tasks much sooner.

Development teams have the space to interpret the feature request


and apply their own local context making it easier to understand the
cost-benefit of tradeoffs.

Teams can make changes more readily because they’re not subject to
significant ‘sunk’ costs.

Developers and users are encouraged to engage regularly, which


further enhances product relevance and development efficiency.

This approach is best exemplified by the ‘user story’ concept Agile software
teams employ. But product development teams have largely not adopted it.
That’s mostly because they have concerns about requirements traceability or
the perceived incomplete nature of specifications. But these objections are
easy to address. Careful process and collaboration tool design can help
maintain traceability. What’s more, the benefits of a shorter specification phase
far outweigh the lack of fidelity some product developers fear.

5 | Beyond Software: Applying Agile Principles to Connected Product Development


02
Prioritize the minimal set of
differentiating product features
and demonstrate early and often
What makes a great product experience? It’s usually the result of just a few critical features
perfectly executed. Those features are the very essence of a product. So it follows that when
they’re inadequately realized they can jeopardize the success of an entire project. An Agile
mindset dictates that modern product development teams should start work on just those key
features and nothing more. Prioritizing a small subset of product functionality means teams can
quickly demonstrate functionality, seek feedback from users and validate early assumptions of
user preferences and technical feasibility.

This approach is the foundation for software development methodologies such as SCRUM. But
product development teams are typically reluctant to work on a small subset of features, often
citing interdependence concerns and the risks of over-prioritizing. And while those concerns are
understandable, our experience suggests that if the risks associated with critical features are not
explored and retired early, the consequences simply accumulate over the project cycle. The results
of that are potentially disastrous.

Building and testing the most important product features first


sounds easy, but in reality is hard. The most important aspects
of a product are often at odds with what an engineering or
executive team is most excited about building. If you take a
hard, honest look at what actually matters to end users and
what differentiates your product, you can get much earlier
feedback that you’re on the right track or not—even with
hardware—to get a successful product out faster.”
Jesse Dorogusker,
Hardware Lead, Square

For example, a recent Mindtribe3 client sought help developing a stylus for use with
a tablet computing device. Initial consultations with potential product users revealed
that the drawing experience for users was the single most important feature.

6 | Beyond Software: Applying Agile Principles to Connected Product Development


If that could not be adequately realized, then there was no value in investing in other
product features such as small form factor or long battery life. The Mindtribe team
quickly prototyped several early models and thanks to frequent feedback from users,
were able to rapidly evolve their original ideas on customer preference and technical
feasibility. Once the core feature of a great drawing experience was confirmed, the
team then moved to the next most important feature of the design and the project
progressed in this way through to completion.

At Mindtribe, the tool we use to establish product


priorities is the Product Nucleus.
To create a Product Nucleus, you start by establishing
the user needs your product should address, in order
of importance. Prioritization is key—without it, slight
differences in the envisioned product embodiment are
uncovered deep into development when change is costly.
The product definition then becomes the minimal set of
features required to meet each need and the engineering
team starts developing the most important features first.”
Steve Myers
CEO & Founder

03
Adopt fixed development
cadences to align planning and
integration across all teams
One of the best known aspects of Agile methods is the fixed development timebox or ‘sprint’.
Software teams work in fixed-duration increments ranging from one to four weeks. During
that time, developers will plan, develop, test and deliver a complete software feature (or
story). Short increment working facilitates rapid feedback because Agile teams will always
seek to deliver something demonstrable to end users rather than partially complete
software components.

7 | Beyond Software: Applying Agile Principles to Connected Product Development


Product development teams, typically comprising both software and hardware engineers,
find this approach challenging owing to the high cost of change for hardware. A software
engineer can change a product with just a few source code edits. Hardware engineers might
need to wait for lengthy updates to mechanical tooling and slow printed circuit board (PCB)
fabrication cycles.

Rapid prototyping technologies can significantly reduce the cost and time of hardware
updates. However, in our view a longer, fixed development timebox should be put in
place in order to accommodate hardware teams. A field-proven solution for multi-
disciplinary engineering teams is the dual timebox approach advocated by the Scaled
Agile Framework (SAFeTM). SAFe describes a short sprint ideal for software teams but aligns
planning and integration with hardware teams through a longer timebox known as the
Program Increment. The duration of the Program Increment is constant and a fixed integer
multiple of the sprint duration, typically ranging from eight to twelve weeks. The benefits
of such a synchronized, dual-speed approach are:

Significantly lower project management overhead, as the classic project


constraints of time and cost are made constant, meaning only scope needs
to be actively managed.

The longer time-box is ideal for hardware teams to develop prototypes for
customer demonstration and feedback.

The fixed relationship between sprint and Program Increment durations


provides natural alignment points between teams running at different speeds.

Accenture helped an electronics manufacturer introduce the Scaled Agile


Framework to their product development teams. Initially the engagement was
directed at the software teams but as the benefits became more apparent, the
method was rolled out to all engineering disciplines. Software teams sprinted
on a two-week cadence while acoustics, electrical hardware and mechanical
teams worked at the slower rate afforded by the program increment. Full
system integrations were made no less frequently than every twelve weeks,
so systems issues were surfaced early. A year after the engagement was
complete, client leadership reported that the number of issues found
during the pre-launch test phase had reduced by over two thirds with
a corresponding reduction in project duration and cost.

8 | Beyond Software: Applying Agile Principles to Connected Product Development


04
Invest in complex product models to accelerate
issue discovery and decouple teams
To take the next step and become truly Agile, product developers need to decouple
hardware and software teams so that they can execute concurrently but be confident
that their integrated solutions will meet system-level specifications. There are many
possible solutions to this challenge, but all feature simulation of hardware that, in effect,
transforms rigid hardware into easy-to-change software. Four examples illustrate this:

01 At a global data storage technology company, highly specialized simulation


engineers write C code to emulate the functionality of hard drive controller ASICS.
The simulation code allows the firmware team to write and test code realizing
the majority of the drive’s functionality long before the ASIC is delivered.

02 A common practice at many of our semiconductor clients is to make an extensive


investment to emulate semiconductor functionality before tape-out using Field
Programmable Gate Arrays devices. The resulting hardware emulators are used
to confirm design assumptions and as an early test bed for device software.

03 As part of Accenture’s Industry X.0 practice, Pillar Technology has had over
twenty years developing software for a wide range of industries. Pillar’s work
in the automotive industry has resulted in an emulation solution called LOOP.
LOOP allows software developers to replace, or mock, hardware with software
versions that are consistent and manageable. This replacement allows for
test scenarios specific to the client’s exact requirements to be developed in a
controlled environment, allowing the software developer to progress without the
need of a physical product—decreasing development time and increasing value.

04 The emergence of inexpensive development platforms such as Raspberry


PI, enables product developers to quickly demonstrate system behaviors
without investment in custom hardware.

Each of these examples shows a long-term view of product development efficiency


as well as a significant investment in technology that enables faster, more flexible
execution. While building the emulated environment will require significant investment,
the rewards from early system issue discovery, high system confidence and reduced
project management overhead will justify the expense.

9 | Beyond Software: Applying Agile Principles to Connected Product Development


MAKING AGILE
WORK IN PRACTICE
Of course, to benefit from Agile principles, Product Development
teams need to go beyond theory and put the principles into action.
Below we show how we’ve helped clients make the move to Agile.

s
stem Agile Product Development
e r a Sy l o g Qualit
i d ack teams should be cross
Cons t as b criter
y Gate
i te c g i l e functional including SW, HW, ia can
Arch an A be re-
r for men
t purpo
owne eve l o p Mechanical where necessary sed to
create
u c t D Backlog a Def
Prod Tea
m Owner Done
inition
of
Backlog In Progress Done for Pr
oduct
Develo
pment
Storie
s
Serv
ant L Servant
the p eade
roces rs ar Leader
s e
of the autho
rity Kanban works well
team
Engin . Sen for managing the
eers ior
or Pr
Coor
dinat oject work of HW teams
ors c
an fil
this r l
ole

rapid
Fix the HW Cycle to a
multiple of the SW vest in
o n t in ually in irtualization
C dv
ng and integration ping an cycle Repeat cycle
cycle to simplify planni prototy to shorten HW
s indefinitely
method

SYSTEM SYSTEM
DEVELOPMENT CYCLE DEVELOPMENT CYCLE
SYSTEM SYSTEM
DEMO DEMO
HW DEVELOPMENT CYCLE HW DEVELOPMENT CYCLE

SW SW SW SW SW SW SW SW
SPRINT SPRINT SPRINT SPRINT SPRINT SPRINT SPRINT SPRINT

Manage product
features in a
prioritized, itemized Demonstrate
Re-order the the
backlog rather Invite all
backlog after system or sy
stakeholders to stem
than a requirements each system models ever
regular demos y system
document demo development
cycle
Scaled Agile Framework and Accenture’s AutoScrum are both great examples of multi-speed development models.4

10 | Beyond Software: Applying Agile Principles to Connected Product Development


With careful process and organizational
design, Agile methods can work for
hardware product development teams.
Agile methods are well established for software teams but
application is much rarer at the hardware product level. In many
cases, the overall product development project will run with a
waterfall process, limiting Agile to the software developers. But
this hybrid approach is a missed opportunity. Worse still, mixing
waterfall and Agile methods burdens the software team with big
upfront planning and requirements phases. These completely
negate the primary benefits of the Agile method.

There is a better way. By following the four guiding principles


we’ve set out, organizations can maximize the return from their
development investments through improved product relevance,
reduced project risk, shorter feedback loops and reduced time
to issue discovery.

11 | Beyond Software: Applying Agile Principles to Connected Product Development


Author About Accenture
Allen East Accenture is a leading global professional
services company, providing a broad range of
[email protected]
services and solutions in strategy, consulting,
digital, technology and operations. Combining

Contributors unmatched experience and specialized skills


across more than 40 industries and all business
functions—underpinned by the world’s largest
Steve Roberts delivery network—Accenture works at the
[email protected] intersection of business and technology to
help clients improve their performance and
Steve Myers create sustainable value for their stakeholders.
[email protected] With 477,000 people serving clients in
more than 120 countries, Accenture drives
Mitch Beaumont innovation to improve the way the world works
[email protected] and lives. Visit us at www.accenture.com.

Kimberly Clavin
[email protected]

References
1
https://www.businessinsider.com/75-billion-devices-
will-be-connected-to-the-internet-by-2020-2013-10

2
https://newsroom.accenture.com/news/high-growth-
companies-buck-trend-of-declining-returns-on-
innovation-accenture-report-finds.htm

3
Mindtribe, part of Accenture Industry X.0, is an
engineering team that helps companies build
innovative, connected hardware faster. https://
mindtribe.com/

4
Scaled Agile, https://www.scaledagileframework.com/
AutoScrum, https://www.accenture.com/us-en/service-
autoscrum

This document makes descriptive reference to


Copyright © 2019 Accenture. trademarks that may be owned by others.
The use of such trademarks herein is not an assertion
All rights reserved. of ownership of such trademarks by Accenture and
is not intended to represent or imply the existence
Accenture and its logo are of an association between Accenture and the lawful
trademarks of Accenture. owners of such trademarks.

You might also like