Implementing Behavior Driven Development in an Open Source ERP

  • Rogerio Atem de Carvalho
  • Fernando Luiz de Carvalho e Silva
  • Rodrigo Soares Manhães
  • Gabriel Lima de Oliveira
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 139)


A typical problem in Software Engineering is how to guarantee that all system’s requirements are correctly implemented through source code. Traditionally, requirement tracing is a manual task comprised of keeping links from requirements to source code, going through different modeling artifacts, including models. However, these techniques cannot guarantee that requirements are always correctly implemented by source code. Aiming at solving this problem, Behavior-Driven Development (BDD) is a specification technique that automatically checks if all functional requirements are treated properly by source code through the connection of the textual description of requirements to automated tests. Given that for Enterprise Information Systems, requirements are usually identified by analyzing business process models, and these processes are implemented through workflows, connecting workflows to automated tests through BDD specifications can provide automated requirements traceability. The aim of this paper is to briefly present this proposal and show how it was implemented for the open source ERP5 system.


Behavior Driven Development Automated Tests ERP 


  1. 1.
    Carlos, T.: Requirements Traceability Matrix - RTM,
  2. 2.
    North, D.: Introducing Behavior-Driven Development,
  3. 3.
    Beck, K.: Test-Driven Development by Example. Addison-Wesley (2003)Google Scholar
  4. 4.
    Koskela, L.: Test-Driven: TDD and Acceptance TDD for Java Developers. Manning (2007)Google Scholar
  5. 5.
    Heinecke, A., Bruckmann, T., Griebe, T., Gruhn, V.: Generating Test Plans for Acceptance Tests from UML Activity Diagrams. In: 17th IEEE International Conference and Workshops on Engineering of Computer-Based Systems, pp. 57–66 (2010)Google Scholar
  6. 6.
    Smets-Solanes, J., Carvalho, R.A.: ERP5: A Next-Generation, Open-Source ERP Architecture. IEEE IT Professional 5(4), 38–44 (2003)CrossRefGoogle Scholar
  7. 7.
    Carvalho, R.A., Carvalho e Silva, F.L., Manhaes, R.S.: Business Language Driven Development: Joining Business Process Models to Automated Tests. In: V IFIP International Conference on Research and Practical Issues of Enterprise Information Systems. LNBIP (2011)Google Scholar
  8. 8.
    Evans, E.: Domain-Driven Design - Tackling Complexity in the Heart of Software. Addison-Wesley (2004)Google Scholar
  9. 9.
    Behavior Driven Behavior Driven Development,
  10. 10.
    Carvalho, R.A., Johansson, B., Manhaes, R.S.: Agile Software Development for Customizing ERPs. In: Parthasarathy, S. (Org.) Enterprise Information Systems and Implementing IT Infrastructures: Challenges and Issues, pp. 20–39. Information Science Reference, IGI Global, Hershey, USA (2010)Google Scholar
  11. 11.
    Kannenberg, A., Saiedian, H.: Why Software Requirements Traceability Remains a Challenge. CrossTalk 22(5), 14–21 (2009)Google Scholar
  12. 12.
    Heindl, M., Stefan, B.: A Case Study on Value-Based Requirements Tracing. In: Proc. of the 10th European Software Engineering Conference, Lisbon, Portugal, pp. 60–69 (2005)Google Scholar
  13. 13.
  14. 14.
    Carvalho, R.A., Silva, F.L.C., Manhaes, R.S.: Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language, arXiv: 1006.4892v1 (cs.SE) (2010)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2013

Authors and Affiliations

  • Rogerio Atem de Carvalho
    • 1
  • Fernando Luiz de Carvalho e Silva
    • 1
  • Rodrigo Soares Manhães
    • 1
  • Gabriel Lima de Oliveira
    • 1
  1. 1.Federal Fluminense Institute, NSICamposBrazil

Personalised recommendations