Test Driven Development in embedded java projects – an unusual insight in usage scenarios and budgets

Session Type: 
Standard [25 minutes]

Schedule info

Presenter: 

Could you imagine that your marketing and training divisions ask your software development department to install test driven development (TDD)? And that they’re willing to spend money of their own budgets to support the IT department in consequently using this methodology? No? If it’s hard for you to imagine that this is really happening or if you’re struggling with reservations concerning TDD in your company, then it’s time to listen to this talk.

In short
MicroDoc has enhanced the TDD approach by extending the testing framework to allow reuse of automated test cases for other purposes than software testing such as self running demos, live marketing presentations, trainings and user certification.

TDD – Expensive?
TDD methodology demands the existence of automated unit and acceptance tests within software projects. These tests are intended to run on all defined target platforms and also in simulated environments. But writing these tests leads to (initially) higher demand of resources and has negative impacts on implementation costs and amount of features in first project milestones. Positive effects of this approach are often not visible until later in the project – and savings in later phases are mostly not credited to the development budget.

And now?
Having a software architecture with embedded Java, OSGi and Eclipse in place, which supports pluggable software running mainly unchanged on different hardware platforms and operating systems allowed MicroDoc to realize additional potentials for the investment of customers in automated test environments. Minor enhancements in the MicroDoc FitNesse Toolings for TDD showed amazing possibilities for the usage of artifacts generated within TDD, i.e.

  • Marketing: live presentation of complex usage scenarios
  • Customer Training: Easy way to setup reproducible application states
  • Sales: Up-to-date reality-like presentation of all variants of the current software portfolio without the need of specific target hardware – but with live usage and behavior
  • Maintenance: Tools to analyze internal system states

More savings
All artifacts are created during software development – often long time before the appropriate hardware is available. The possibility to show and use the product as a virtual device independent of the hardware leads to dramatic advantages not only regarding time lines for marketing and training but also regarding cost reduction in the area of purchase, installation and maintenance of real hardware for marketing stuff and training centers.

Outlook
This talk will convince you that a consequent and sophisticated adoption of TDD will offer new chances for your company outreaching software quality and influencing customer acquisition, satisfaction and also customer care.