Course code: CISCO-19
  • Years with company: 14
  • Years programming: 28
  • Primary programming language: C
  • Other programming languages: Python
  • Unit test harnesses: CUnit
  • Something else: I've moved into a Scrum Master role and so I'm becoming more interested in seeing how my team can work more effectively and deliver more quickly with quality code.
  • Test practice now: Our code is componentised and each component consists of a number of modules, so we test at module level (white box), component level (black box, exercising at API level) and at integration level (the complete collection of components that constitute our middleware).
  • Target system: Set Top Box
  • Dev tools: GNU toolchain, DDD, Source Insight, Klocwork, GIT, GCOV,CUNIT
  • Build time: 1-5 minutes
  • Coding standard: MISRA based
  • Function too long: If it's not doing one logical thing, if you can't see the whole function so that you forget what the first part of it was when you reach the end!
  • Code reviews: All code is peer reviewed via Gerrit before delivery
  • Code time: 50
  • Test time: 30
  • Debug time: 20
  • Favorite thing about dev: Solving problems. Being creative. Continually learning new things.
  • Least favorite thing about dev: Can't think of anything except for providing time estimates ;-)
  • Tdd knowledge: Write the test for a new bit of functionality first so that it fails, then implement the minimum amount of code to get it to pass. Once you have a passing test you can then safely refactor your code.
  • Why are you attending: I'm interested in finding out what are the benefits of completely embracing the TDD philosophy. My company is also very keen on increasing development velocity so I'm interested to see how TDD affects this.