1. This forum section is a read-only archive which contains old newsgroup posts. If you wish to post a query, please do so in one of our main forum sections (here). This way you will get a faster, better response from the members on Motherboard Point.

Test Driven Development in Embedded Software

Discussion in 'Embedded' started by mkarlesky, Jan 5, 2007.

  1. mkarlesky

    mkarlesky Guest

    We (my company - Atomic Object) got challenged by a customer a while
    back that Agile Methodologies can't possibly work in embedded software.
    At first we agreed. Then we took it as a challenge as we're very big
    into Agile methods. We started by concentrating just on Test Driven
    Development and how to make it work well in tiny systems using C or
    even assembly.

    Embedded projects seem less volatile in terms of requirements and
    feature changes - especially if there's little or no user interface.
    Thus, that of Agile that helps the customer manage changing needs seems
    to be less important in embedded software than in other systems. Now,
    of course, we've only been working in pretty small systems; something
    like consumer electronics or home theater components might be an
    entirely different story. So while we're still getting our arms wrapped
    around Agile in embedded software in a broad sense, we have been making
    good strides in TDD.

    We feel like we're starting to make headway with some very interesting
    work so we want to share. Links to what we've developed and learned are
    below. We see ourselves doing more embedded work in the future because
    it's the wild frontier for developing good process. We're certainly
    curious to hear the thoughts of hard core embedded system developers.
    We haven't been finding a lot of movement in the Agile + embedded space
    though that seems to be changing. We think there's gains to be had.
    Though our work below might seem to carry with it lots of overhead,
    we're finding that's actually not the case. Process and convention are
    proving fruitful for us and really increasing quality for our
    customers.

    Mike Karlesky
    Atomic Object

    TDD in Embedded Software using Model-Conductor-Hardware design pattern:
    an IEEE paper
    <http://atomicobject.com/pages/Embedded+Software>

    CMock - (Ruby based) mock tools for C
    <http://spin.atomicobject.com/2006/12/29/cmock-ruby-based-mock-tools-for-c/>

    A small collection of embedded software posts and resources on our blog
    <http://spin.atomicobject.com/embedded-corner/>

    Our Agile Software Development/Testing Custom Search Engine
    (just launched)
    <http://atomicobject.com/pages/Flux+Search+Engine>
     
    mkarlesky, Jan 5, 2007
    #1
    1. Advertisements

  2. mkarlesky

    larwe Guest

    ROFL! What do you feed your marketing guys, and where can I buy some of
    it? I've seen a sensor project with no user interface, as such, get
    delayed by more than four years by changing marketing requirements.
     
    larwe, Jan 5, 2007
    #2
    1. Advertisements

  3. mkarlesky

    Tim Wescott Guest

    Ditto.

    Karl, you have a disciplined team.

    --

    Tim Wescott
    Wescott Design Services
    http://www.wescottdesign.com

    Posting from Google? See http://cfaj.freeshell.org/google/

    "Applied Control Theory for Embedded Systems" came out in April.
    See details at http://www.wescottdesign.com/actfes/actfes.html
     
    Tim Wescott, Jan 6, 2007
    #3
  4. mkarlesky

    John Larkin Guest



    Thanks! All that was hilarious.

    John
     
    John Larkin, Jan 6, 2007
    #4
  5. mkarlesky

    Marco Guest

    Where is the Unity test framework mentioned in the paper "Effective
    Test Driven Development for Embedded Software"?
     
    Marco, Jan 6, 2007
    #5
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.