8/01/2006

Agile Methods and Firmware Development

I made my paper "Agile Methods and Firmware Development" available. You can find a link to the paper from the sidebar, under "My Papers". This is my initial review and analysis of different software lifecycle models and their applicability to firmware development as part of Ph.D. studies. Paper is dated a few years back. One might say that the current journey started upon writing this paper.

Abstract— The size and complexity of software continues to grow
at a steady pace. This is also true for software embedded in our
everyday electronics, which we have called simple devices. The
term firmware is used to describe the low-level software in
embedded systems. It may even be hard to divide firmware and
actual hardware. Software development for such a target has
special characteristics such as a culture of hacking, small teams
and multiple hats, co-design issues, one-time designs, correctness
and robustness requirements, lack of tools and unconventional
customers. Software process models have been studied also in
this environment to ease the pain of developing more complex
systems. I introduce four currently used methods to develop
firmware; build-and-fix, waterfall, ROPES and RUP SE.


Agile methods are getting a lot of attention in the software
development community at the moment. I review the agile
methods which are most documented. The suitability of these to
firmware development is evaluated. It is also analyzed whether
firmware development could benefit from agile methods.


It is shown that agile methods are not the new cure-all solution
to firmware development, but they are applicable. Their full use
needs modification and innovative thinking. It is, however, shown
that firmware development can surely benefit from the usage of
agile methods.

4 comments:

Ole Jepsen said...

Hi Timo

You say, that your journey may started with your paper.

Interesting...

In Denmark I started the Danish Agile User Group some five years ago - and ever since, I have tried to get as many people as possible to start writing "stuff".

The format is not important - because when people start writing about what they do, they also start reflecting on what they have done in the past. They think about what they learned - and maybe even what they would have done, if they had a chance to re-do it...

Yesterday we certitied the first Agile Project Leader. It was Jette - who you know well from Schneider and from your common projects. On her way to certification, I asked Jette to write a report about one or more of her projects. As the polite person that Jette is - she wrote up her story, and I was stunned!!!

A lot of reflection and thinking must have gone through Jettes mind when she wrote...

What more cold you want...?

Cheers, Ole Jepsen

Timo said...

Hi Ole,

I most certainly agree with what you are saying. I have always believed that teaching others is the best way of learning yourself. It makes you think things again, and from another perspective. Just like you said. Writing for others may be concidered to be a way of teaching. Furthermore story telling is the original, and still extremely effective, way of transferring knowledge by humans.

Congratulations to Jette. Even though I have to admit that I do not exactly know what a "Certified Agile Project Leader" is. For a known reason I was not quite able to follow your blog post about it:-)

Keep in Touch, Timo

Firmware Development said...

SpSoftindia is a leading software development and firmware development company that provides a wide range of offshore IT outsourcing services and innovative solutions.

Lester Bentley said...

The structure is not essential because when individuals begin composing about what they do, they also begin showing on what they have done in the last.