banner.jpg

EMail Print

The Agile Bazaar

Event 

Deep Agile 2009: Agile for Embedded Systems
Title:
Deep Agile 2009: Agile for Embedded Systems
When:
Apr 25 - Apr 26 
Where:
Harvard University, Cambridge, MA - Cambridge
Category:
Professional Development Seminar

Description

Deep Agile 2009:

Agile for Embedded Systems

Sponsored by Agile Bazaar, New England's Agile Community Hub

Click here for Map to location at Harvard

Listen to a Podcast with: Nancy Van Schooenderwoert & James Grenning

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* experience!

  • Registration/Check-in opens at 8:00 am on Saturday, event will start at 9:00 am.

  • Saturday Dinner will be held from 6:15 to 8:30 pm.

  • Sunday Doors will open at 8:30 am and the event will start at 9:00 am.

Sessions - Day 1
(4/25/09, 9:00 am - 5:30 pm)

Sessions - Day 2
(4/26/09, 9:00 am - 5:30 pm)

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 Test Technique

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 I

The only way to get the feel for TDD is to pair with an experienced test driven developer.  In this session attendees all get a change to pair with James.  He writes the test, you make it pass.  How can he be in more than one place?  Come and find out.  You will also have Jack and Russel to work with you too. We’ll 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!

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.
 

Presenters:

 
 

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: http://www.ganssle.com/

 

James 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: http://www.renaissancesoftware.net/

 Russel Hill is 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.
 Host: Nancy Van Schooenderwoert, Agile coach to embedded teams since 1998 and to financial services teams since 2005; founder of Lean-Agile Partners http://www.leanagilepartners.com/

All attendees receive a copy of "Best Kept Secrets of Code Review", a collection of practical essays from industry experts giving specific techniques for effective peer code review. Jack Ganssle describes it as: "A very well written 164 page book that's a fascinating read. The benefits of inspections are so profound that even the smallest outfit must take advantage of this technique."

 

Price: $395.00 (Early bird discount ends March 28th)

View the registration and event policies

Gold Sponsors:

Jerry SmithDr. Jerry Smith - CTO for Symphony Services.  With more than 25 years of experience as a technology innovator and IT strategist, Dr. Jerry Smith helps Symphony Services and its clients derive business benefit from the successful adoption and use of critical technologies.  He actively helps clients assess their readiness for new technologies and maps a route for successful product evolution and technology deployments.

Barry Mullan is a computer science graduate from Trinity College Dublin and has worked in the software industry for 14 years. Prior to joining Rally Software Development as a technical account manager, he promoted distributed object and service oriented architecture at IONA technologies before joining Agitar Software to evangelize automated unit test and continuous integration practices.

Silver Sponsors

 

 

Bronze Sponsors

 

 

Venue

Venue:
Harvard University, Cambridge, MA   -   Website
Street:
33 Oxford Street
ZIP:
02138
City:
Cambridge
State:
MA
Country:
Country: us

Description

We will be adding more information about the venue once we get the wording polished and correct!

Accommodations:
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

 

Member Login

Our Sponsors

A big thanks to our sponsors

 

 AccurRev

Avid 

Big Visible 

Constant Contact

IBM 

Lean Agile Partners 

Rally Software

VersionOne