How does a codebot work?
Codebots follows the model-driven software development process in a special way by creating a tight coupling between code and documentation.
This tight coupling allows the evolution of your documentation to drive the evolution of your code; facilitating agility within a development team.
While some significant decisions still need to be made up front before development begins, the impact of changes are reduced by the inclusion of a codebot in the development team.
The documentation that is provided to a codebot comes in the form of three diagrams:
- UI, and
The entity diagram is where we define the data within our application (as business objects or entities), and the relationships between different entities. The entity diagram relates to the architecture of the application and, as such, many related extensions can be applied here. More details on the Entity diagram can be found in this article.
The User Interface diagram is where we define our user interface pages and their contents. Extensions which relate to UI elements can be applied here through the adding of Extension items to a page.
Finally, the Using the Security diagram is where we define our groups and permissions, giving us full control over what groups can access what business objects.
These three diagrams combine and are provided as input into our codebot which then provides the code as output.
As the output code has a direct relationship with the input diagrams, we can continually change these diagrams to keep updating our code. This can be done many times within a few minutes if required.