FULL ENJOY Call Girls In Majnu Ka Tilla, Delhi Contact Us 8377877756
Implementing Behavior Driven Development in an Open Source ERP
1. Rogerio Carvalho, Fernando Carvalho e
Silva, Rodrigo Manhães, Gabriel Oliveira
Instituto Federal Fluminense
Implementing Behavior Driven
Development in an Open Source
ERP
2. Introduction
●
Requirements tracing is a typical problem –
through all lifecycle
●
Using artefacts such as the Requirements
Tracing Matrix is error prone and time
comsuming
●
Behavior Driven Development is an specification
technique that aims at keeping requirements
and source code synchronous through the use
of executable documentation
3. Behavior Driven Development
●
Requirements are written as a set of Given-
When-Then statements:
Given a Context (Current State)
When an Event happens (User Action)
Then an Action is taken (New State)
●
Clearly, it defines a state machine that
describes the behavior of the system
●
A Story Runner maps the textual statements to
the underlying programming language
equivalent skeleton calls
4. Behavior Driven Development
●
BDD provides an automated and cost effective
way of keeping requirements traceability:
●
Cost: requirements are tied to tests, so that
if tests return non-expected values or simply
are not implemented, the story runner will
automatically point out the problem
●
Change Management: whenever a
requirement changes, the tests will not run
until the code is also changed accordingly
– Effort estimation: by changing a requirement and
immediately running a build, errors will pop-up in
specific places where the system must be
changed
5. Behavior Driven Development
●
BDD provides an automated and cost effective
way of keeping requirements traceability:
●
Different stakeholder viewpoints: it is
possible for any stakeholder to check system
consistency, since it is based on executable
documentation
●
Organizational problems: it provides a proper
policy for traceability, enforcing the
connection between code and requirements
●
Shortcoming for EIS: use of text, instead of
business process models
6. BDD in ERP5
●
ERP5 is an Open Source ERP:
●
Object oriented Zope platform - Python
language
●
State-based workflow engine
●
Document oriented
●
ERP5 is in the market for 10 years: Aparell,
Banks, Aeroespace, Automotive, Government,
Academy...
12. Conclusions
●
ERP5 BDD Module is a proof of concept!
●
Automated testing is at the core of any BDD
related solution
●
Business Language Driven Development
(BLDD):
●
Seeks to use business process models
directly, instead of only textual information
●
Interactive testing by the user
●
Proof of concept using the Yankidu platform