Deep Agile 2009: Agile for Embedded Systems

Deep Agile 2009: Agile for Embedded Systems

Sponsored by Agile Bazaar, New England's agile community hub

Join us for a two day deep dive into Agile practices for
embedded systems. We'll get beyond superficial prescriptions
and cookbook advice to understand how a methodology that
demands extreme flexibility can work in an environment known
for its rigidity. Jack Ganssle has the deep experience to
pose the kinds of challenging questions all embedded folk
want to ask, and James Grenning and Russel Hill have been
practicing embedded agile programming long enough to give us
answers grounded in experience, that is, *embedded*

Don't miss this first-ever single track, deep dive into Agile
for Embedded Systems. This event is all volunteer run so the
price will be affordable.

A Note regarding hardship discounts:
Agile Bazaar is committed to providing access to Deep Agile 2009
to as many people as possible. In light of the current economic
situation, a limited number of discounted hardship tickets are
available, priced at $75.00. These admissions include all event
activities. We make these available to those who are unemployed,
about to become unemployed, or who have some similarly difficult
circumstance. We will endeavor to increase this number as the
finances of the event allow, and we keep a waiting list of
those who inquire.

To inquire about the hardship discount please, use the Contact
link at the upper right of the page. We will respond by email as
quickly as possible. If we have an available slot, we'll provide
you with a discount code you can use for registration.


April 25 - 26, 2009 (Saturday & Sunday)
Maxwell-Dworkin Building, Harvard University
Cambridge, Mass
Preferred accommodations are available at the 
Sheraton Commander Hotel, Cambridge, Mass.
Special event rate of $169 per night (normally $250)
available through 4/18/2009
Information and reservations
Nancy Van Schooenderwoert, founder, Lean-Agile Partners

View the registration and event policies


Jack Gannsle
Jack Ganssle
- One of the best-known authorities in the embedded world; veteran of over 100 embedded projects, author of six books, and hundreds of articles, Jack consults to NASA and to industry leading companies worldwide.
Jack's site:

James GrenningJames Grenning - An original author of the Manifesto for Agile Software Development, James is a seasoned extreme programming coach and trainer, coaching his first XP team in 1999. James was trained by the guys that started it all. He's written many articles and speaks regularly at the Embedded Systems Conference and Agile conferences.
James' site:

Russell HillRussel Hill - currently a senior software engineer who has been using agile methods, especially test driven development (TDD) for the past ten years on his projects. He's a veteran of many years building complex aerospace systems for the US defense industry. Russel now develops embedded software for Key Technology, a world leader in automated inspection systems for the food processing industry.

Nancy Van SchooenderwoertHost: Nancy Van Schooenderwoert - Agile coach to embedded teams since 1998 and to financial services teams since 2005; founder of Lean-Agile Partners

Sessions - Day 1

Overcoming Embedded Challenges with Agile
Agile methods encounter extra challenges in the embedded world: Hardware development cycles are longer; test depends on hardware availability; applications have hard deadlines; many are safety-critical and highly regulated; customers are typically separated from development teams by distance or company boundaries. Our panel will field the tough questions - from our moderator and from attendees.

Agile Design and Test
Embedded systems are notoriously hard to test - and we don't test nearly enough. Agile teams use an array of test types, TDD being only one of them - we'll show others. These test efforts can appear to add a lot of extra overhead but when done well, they speed the work along more than enough to pay for the labor of creating the tests. We'll show you when to automate tests and when you shouldn't bother. Object oriented design is key, even for languages like C and assembler, which offer little support for it. Agile embedded testing has to cover hardware as well as software - we'll demonstrate it with real hardware.

Continuous Integration as Foundation for Speed
Integrating new code into the full code base at frequent intervals - usually many times per day - is the antidote to integration hell. It is also critical for keeping the code bug-free because bugs cannot gang up on you. We'll explore what continuous integration means for embedded software, and show you examples of it using live code.

Jack's Practical Tips for Building Real Time Embedded Systems
Most smaller embedded systems meet their real time requirements only by luck. We have few techniques that help us design a system that will be timely and predictable. This talk will show you practical ways to include time in your design, to help you produce a system that meets its deadlines, rather than beating a slow system into submission late in the debug stage. We'll examine the real speeds of common C constructs on various 8 and 16 bit CPUs, as well as faster alternatives to some compiler-supplied library routines. We'll examine some of the hype around multicore processors as well.

TDD in C: Doing It!
Watch as James and Russel start up a TDD session coding first on the PC and then on real hardware. Jack will rotate in as a newbie team member and pick up the technique. Attendees will join in offering suggestions, and all will gain new insights. To the extent practical we'll open it up to everyone with a laptop - and go for the world record for the most people in one room doing TDD in C! We'll wrap up with a summary and Q&A time.

Test Driving Next to the Hardware
Code that interacts with hardware can't be tested except in the target. Or can it? In this session we'll see how to test hardware dependent code, independent of the hardware!

Sessions - Day 2

Design by Contract
Design by Contract (DbC) is a well-known approach to building correct software by specifying functions' goes-intas, goes-outas, and invariants, in the code itself, so that errors get detected automatically at runtime. Yet it's almost unheard-of in the embedded industry. Worse, procedural languages like C offer none of the built-in DbC support given by Eiffel and similar languages. Yet the notion of automatic error checking, of guaranteeing that functions fulfill their promises, is so powerful that we firmware folks must find ways to use DbC in our code. This class shows how to use DbC and similar ideas in embedded applications, in particular in C.

Teamwork: the Prerequisite to Team Autonomy
Agile teams are self-organizing. They make the technical decisions and carry them out. But what happens when people cannot agree? And how can a group really be accountable? Where are the limits of the team's authority? This session gives you stories of how real teams resolved (and failed to resolve) teamwork issues.

Incremental Delivery: Impossibility or Opportunity?
Agile methods demand collaboration between supplier and customer through incremental delivery of features, but what if your customer won't play? What if your product is 'all or nothing' in nature? This session will help you understand the place incremental delivery and fine grained scope control (stories) in an embedded environment.

Case Study: Keys to Agile Success at Key
This presentation will describe how an agile team at Key Technologies planned and executed their embedded project, including
- The relationship between this project and the larger system
- Notable choices made early in the project
- Interactions between EEs and Software Developers
- A history of the project: Important events and milestones
- Bug reports
The project preceded a split in the work where the team operated across two locations for some time. We'll explore the problems this created and the surprising changes it prompted the team to make. You'll find out what it's like day-to-day being part of an agile embedded team.

The big Hairy Monster: Legacy Code
Few have the luxury of a "green field" project, free to use modern methods for all the code from day one. A mass of buggy, poorly documented existing code is a millstone around your neck that cannot be ignored. This plagues every type of software project. We'll examine the extra headaches it gives embedded systems and how real teams have successfully conquered this beast. We will demonstrate techniques for adding tests and improving the design of existing software.

Things That Count Can't be Counted - or Can They?
What metrics are needed to support embedded systems development? What metrics are needed in an agile context to support embedded devlopment? Metrics are a slippery slope, no matter what software development technique is used. But defect density can be measured. So can complexity, and other things. Get practical advice on what to measure, and what numbers to aim for.

Agile Do or Don't
Role play session: Jack is a CEO who has just attended this seminar but still has his doubts. James is a consultant Jack hired to answer questions about applying Agile to his organization. We'll collect questions from the participants for Jack to express, in addition those he already has after participating in the seminar.

Symphony Services logo   Rally Software logo
Silver Level Sponsors
ConstantContact logo  VersionOne logo  Smart Bear logo
Branze level sponsors

On the Web

DeepObjectKnowledge - Object/Agile/C# Expertise

DeepObjectKnowledge, DOK, Object/Agile C# ... Be Sharp About Embedded, Building Object/Agile Expertise That Matters, today's embedded systems developer ...

Agile Embedded Software Development, what's wrong with …

18.02.2014 · Transcript 1. Agile Embedded Software, what's wrong with it? We are in 2014 and still someone is challenging the fact that ...

Agile Entwicklung von Embedded …

Die Umstellung des kompletten Entwicklungsprozesses inklusive des Systemtests auf agile Methoden und eine enge Kopplung mit der Hardwareentwicklung führen zum ...

Visualize this! Agile tools in game development - a …

Embedded Systems; IoT; Server, ... Agile tools in game development - a talk with Hansoft. ... ...

Agile Advocate: Seven tips for distributed agile teams

19.08.2009 · ... 2009. Seven tips for ... wikis and source control systems allow easy information ... He has deep experience with agile software development, starting ...

Westboro Systems

... Toronto, Calgary, Halifax -- Providing Scrum, Lean, Kanban, and XP agile training and ... telecommunications, embedded, ... © Westboro Systems 2009 ...

Agile Software Development in Large-Scale New Product ...

Agile Software Development in Large-Scale New Product Development Organization: Team-Level Perspective Petri Kettunen. Dissertation for the degree of Doctor of ...

Title page for ETD etd-03282009-235934 - Vanderbilt …

Title page for ETD etd-03282009-235934. Type ... 2009 -03-23: Availability ... based distributed real-time and embedded (DRE) systems. Conventional agile techniques ...

Original Article - European Journal of Information Systems …

Original Article. European Journal of ... published online 18 August 2009. A framework for adapting agile development ... and traceability in systems development ...

Agile Product Development Life Cycle - VRPHOTOS …

AGILE PRODUCT DEVELOPMENT LIFE CYCLE ... frameworks movement has deep expertise across An agile vs ... Embedded systems are part of agile system ...

A Gentle Introduction To Agile - Upload, Share, and ...

25.10.2009 · Agile Introduction for newbies by A ... A Gentle Introduction to Agile Michael Sahota October, 2009 2 ... Embedded systems ;

What has happened and is happening in Japan’s Agile …

15.07.2011 · ... What has happened and is happening in Japan’s Agile movement. What has happened and is happening in Japan’s Agile ... embedded systems ...

Evolutionary System Development | The Agile Executive

Evolutionary System Development. ... There are many ways to dig deeper into Agile leadership and successfully delivering software the Agile way. ... January 2009; M T ...

Agile Softwareentwicklung für Embedded …

Agile Softwareentwicklung für Embedded Real-Time Systems mit der UML 4.2 von 5 Sternen (11) Rezensionen. Zurück Zum Zoomen doppeltippen. Format: Taschenbuch

Book - Scaling Lean and Agile - Thinking and ...

Scaling Lean & Agile Development: ... has worked in large embedded systems. ... (corrected in 2nd printing, Oct 2009) Page 34.

Download MSF for Agile Software Development Process ...

MSF for Agile Software ... This download contains an update to the agile process guidance that ships with Visual Studio 2005 Team System. MSF for Agile Software ...

Agile Product Manager in the Enterprise (2): A ...

Posted on May 19, 2009 by Dean Leffingwell in Agile Product Manager. ... Embedded Systems: Product Manager, Project or Program Manager: Independent Software Vendor:

Agile requirements prioritization in large-scale ...

... The use of agile prioritization practices ... prioritization process. We assume that a deep ... agile practices to large systems. AGILE (2009), ...

2009 Summer Academy » W3 – Agile Software Engineering

... Agile Software Engineering ... Having a deep passion for communication and teaching, ... approach for developing embedded systems.

Approach to Embedded System Development

eralizing other agile concepts into a full embedded system approach assist during medical embedded instrument development? ... IEEE SOFTWAREMay/June 2009 51

Related Events