Course code: WEB-1
  • Years with company: 5
  • Years programming: 5
  • Primary programming language: C
  • Other programming languages: C#, assembly
  • Unit test harnesses: NUnit (C#), home grown test framework
  • Something else: I am my team's Scrum Master
  • Test practice now: DO-178B's Requirements Based Tests. A lot of manual test procedures. Automated tests are generally not 'for credit' tests. Trying to enforce Vertical Slice user story "requirements -> code -> test" in a sprint. Traditionally, we have followed the "V" method, where test procedures come long after 'design and code' are done. Little to no automated test procedures.
  • Target system: PowerPC based embedded computing system.
  • Dev tools: Eclipse as an IDE. PCLint for static code analysis.
  • Build time: 30-60 minutes
  • Coding standard: MISRA-C 2004
  • Function too long: No standards defined for size of function. Usually a 'does this function do too much?' gut feeling.
  • Code reviews: Informal every sprint (static code analysis, Subject Matter Expert review). Formal review (Safety , Certification, Software Quality, etc... every release)
  • Code time: 20
  • Test time: 70
  • Debug time: 10
  • Favorite thing about dev: I love solving the puzzle. This often includes architecture, ability to test, and the actual implementation.
  • Least favorite thing about dev: DO-178B flight certification requirements for following a more Waterfall flow. Resistance to testing first because it hasn't always been done that way. I don't like that DO-178B requires independence (code developer can't be the test developer).
  • Tdd knowledge: I've read Kent Beck's TDD book, and I'm 70% through TDD for Embedded C.
  • Why are you attending: I want to try and convince my organization that TDD increases quality, decreases rework, and can be used in a certified software environment.