Development process organization
Glossary Item Box
Overview
When adding a new complex custom functionality to bpm'online, be sure to follow the proper development process. We recommend deploying three separate environments: development, testing and operational.
The Development Environment is a separate application (or a number of applications) where a new functionality is developed. These applications must be deployed on local computers (on-site), which gives the ability to export schemas to the file system and create a new program code using different IDE. SVN version control is also highly recommended. Use a separate application and database for developing new functions. For more information about the Development Environment, please refer to the "Organizing a development environment" article.
The testing (Pre-Production) environment can be a separate application where the new functions are installed and tested. Usually, the testing is done by a system analyst from the development team or the customer who ordered the development of the new functionality. If needed, the application can be deployed in the cloud or on-site.
The production environment is a separate bpm'online application, in which all current user business processes are executed. If needed, the application can be deployed in the cloud or on-site mode, on customer servers.
For more information about deployment options, please refer to the "How to deploy bpm'online on-site" and "Deploying the bpm'online "cloud" application".
ATTENTION The production database must never be used in development or pre-production environments. Development activities cannot be performed in the production environment. |
The general development process is shown in Fig. 1.
- All development activities are performed in a specially prepared environment.
- After development is complete, the developers prepare packages with the new functions and install them in the pre-production environment.
- The new functions are then tested in a pre-production application.
- Any errors found during testing are corrected in the development environment (stage 1). When the testing is complete and all errors are corrected, the packages with the new functionality are installed in the production environment.
Fig. 1. General workflow of the development process
It is recommended to use the WorkspaceConsole utility to transfer packages between applications. For more information on the WorkspaceConsole, please refer to a separate article . For more information about transferring changes between applications, please refer to the "Transferring changes on the configuration, database and package levels" article.
If you need to transfer packages with schemas that between different development environments, it is recommended to use SVN version control. For more information on working with SVN version control, please refer to the "Create repository in SVN server" article.