Applying Agile with Firmware Development?
Posted on January 3, 2008
Filed Under Rambling | 1 Comment
As I close the door on one long term rewarding and environmentally worthy agile contract and open the door to a new agile product owner opportunity, I am faced with a new challenge of integrating a firmware device into an agile process. Let me share my ideas, and I’ll later check back with you and report on how these ideas pan out in real life.
First, agile is not a process. Agile is a set of principles and ideas that are combined to deliver software in a swifter, more customer and people-focused manner. One of the things that I like about it is that it is not overly prescriptive, rather, it allows for individual business tailoring. In other words, it uses people to respond to change, and adapt to a particular challenge.
So, as I’m faced with the integration of firmware into a newly formed agile software development environment, my thoughts on how to apply agile ideas with our firmware development are as follows:
- Integrate the firmware deliverable timeframe as a benchmark into the release roadmap
- Monitor the deliverable, and report status to the team in daily standups and meetafters
- Create simulation scripts or mockups of firmware functions to simulate the firmware’s behavior. While we cannot test the actual device, we can certainly test the defined logic and flows.
- Set an objective to “integrate and test” as soon as the real firmware is available. This may be a moving target, but it still sets the expectation to be ready and adapt.
While we cannot apply continuous integration and test to what we don’t have, we can certainly create mockups of behavior, plan to adapt the iteration cycle for this deliverable, and fully integrate and test as soon as it is available.
Give me a release cycle or so and I’ll report back! Of course, please comment if you have some good advice. I can use it!
Comments
One Response to “Applying Agile with Firmware Development?”
Leave a Reply
Very cool post Jennifer. It’s actually very interesting topic because what people mostly talk about is how they develop web projects in agile environment and now you offer some new interesting takeaways of agile in firmware engineering.
That’s funny because as we all know scrum originates from some kind of firmware (but not software).
Bullet #3 is really interesting.