In real world scenario, a BPM Application packages multiple business process and toolkits. In case anyone requires to know which version of specified toolkit is being used by its corresponding version of BPM application, it becomes hard to track it. hard to track it due to one or more of the following reasons which contributes to the difficulty of this task.:
Â -User may not have access to BPM tool to find out the relationship.
– User may not be familiar with the BPM tool to identify the relationship.
– Business user or management team may not have a complete access and only wants to have a consolidated view of all the processes which are being deployed across all the environments.
Â To overcome above concerns, a dependency dashboard can be created, which will:
-Build a dependency map between toolkits and BPM â€˜s process applications.
-Give a consolidated App, to collate dependency information from multiple environments.
– List processes and services packaged in a BPM application.
-Be hosted a standalone web-application.
Dependency dashboard will give a flexibility to the user to customize the information in the dashboard. User can select environment, process name, snapshot depending on his needs.
Upon selection of a specific process name, user can see snapshot details of the selected process application.
Upon selection of a snapshot, user can see the BPD or process names, service names, toolkit dependencies in the snapshot.
Sample process Dashboard is shown in the diagram (Fig1) :
User can also track the dependency in reverse order by selecting toolkit dashboard, as shown in Fig-2 :
In Eclipse, create a Dynamic Web Project. Sample Project shown here :
1.Â Â Â Â Â The web project will have files to connect to BPM Process Database.
2.Â Â Â Â Â There will be files, which will have queries to fetch process and toolkit relations from BPM Database (Process Database).
3.Â Â Â Â Â There will be individual servlet files, one servlet for Process and another for toolkit.
4.Â Â Â Â Â The servlet files will be getting data from the Query files.
5.Â Â Â Â Â There can be Java script or JQuery files, which will parse data from the servlets into respective html files to populate on user Interface, as shown in Fig 1 and Fig 2.
Tables used to fetch the data
BPM Process Database contains multiple tables. However you need some of them to get the details for dependancies :
1. Project ID, Name and Short name comes from LSW_PROJECT table.
2. Based on the Project ID received, another query will fetch Snapshot name and Snapshot ID from LSW_SNAPSHOT table.
3. Using the snapshot name and ID from LSW_SNAPSHOT table, you can get BPDs, Process, services, toolkits which are getting used in the snapshot. You need to have joins with some tables to be able to get the data for correct branch and version:
4. The same set of tables will also give reverse dependency as shown in Fig-2