How to start the development
Glossary Item Box
Development of custom solutions in bpm’online is a complex and laborious process. Keep the following sequence of action to avoid difficulties.
1. Set up the development process.
Organization of development process depends on the volume and complexity of planned custom modifications of bpm’online. To add small and simple modifications to the bpm’online functions you do not need to set up specific processes. Implement these modifications in the application used for development and transfer them to the working version of bpm’online after preliminary testing.
To add complex and extensive custom functionality you need to set up the development process. For this, you need to set up three working environments (development, test and production environments). Developed functionality can be transferred between these working environments only if it fits specific criteria. For more information on development of complex functionality, see "Development process organization" article.
The sequence of development and transfer of the developed solution to the working application depends on the organization of the development process. For more information about development sequence, see the “Recommended development sequence” article.
To develop complex project solutions, use the recommendations provided in the "Terrasoft Project Life Cycle” documentation.
2. Select and configure development environment
Selection and configuration of development environment depends on complexity of the developed solution.
To develop simple functionality that requires small modifications, you can use free trial version of bpm’online deployed on cloud. For more information on bpm'online deployment on cloud, please see the "Deploying the bpm'online "cloud" application" article.
To use specific development tools (for example, Visual Studio), you will need to deploy application on-site. Please refer to “How to deploy bpm'online on-site” for any details.
To add complex custom functionality that requires work of a group of developers, you will need to use specifically configured development environment. For more information refer to the “Organizing a development environment” article.
The development in the bpm’online production environment is forbidden. In most cases the development is connected with errors and their tracking, debugging and compiling the application, etc. Usually this has a negative impact on bpm’online performance or can make the work of other users difficult or impossible.
3. Configure SVN storage (optional)
Version control system (SVN) is an optional component for development. If an active development of the application is expected, the version control system will facilitate the management of the development process.
More information about the version control system can b e found in the “Create repository in SVN server article.
4. Create a custom package for developing new functionality
The bpm'online functionality is implemented in configuration elements – schemas. A set of schemas that implement some functionality is combined in a package. More information about purpose and structure of bpm’online packages can be found in the “Package structure and contents” and “Package dependencies. Basic application packages” and “Package [Custom]” articles.
Create a new custom package to develop new functionality. Please refer to the “Creating and installing a package for development” article for any details.
To use the version control system, the package must be connected to the SVN storage at the time of creation. Working with packages in SVN described in the "Creating and installing a package for development", "Committing a package to repository", "Installing packages from repository" and "Updating package from repository” articles.
For more information about creating a package in the development in file system mode, refer to the “Creating a package in the file system development mode” article.
5. Create schemas that implement the functionality
To implement the functionality, it is required to create various types of schemas in user packages. Creating of schemas is described in the “Creating a custom client module schema”,”Creating the entity schema” and “Creating the [Source code] schema” articles.
Templates of development of new functionality are described in the “Bpm’online development cases” article.
6. Transfer modifications to test and production environments
After the development is completed, the modifications must be transferred to the test environment. If the testing was successful, transfer the modifications to the production environment. For more information refer to the “Transferring changes between the working environments” article.
- Development process organization
- Organizing a development environment
- Recommended development sequence
- Development rules
- How to deploy bpm'online on-site
- Deploying the bpm'online "cloud" application
- Create user and setup workspaces
- Create repository in SVN server
- Working with packages
- Transferring changes between the working environments
- Creating a custom client module schema
- Creating the entity schema
- Creating the [Source code] schema