Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Service List Get Service Instance Monitoring
    • Capabilities
      • Select a row and click the Monitor button. Then, it will open the Service instance (maps into process instance in Camunda) monitoring widget for the selected Service instance on the secondary/pop-up browser page.
    • Design
      • when a user clicks on a row, highlight the selected row and enable the Monitor button.
      • Once the Monitor button is clicked, go to the Service Instance Rendering and Deail widget, passing key fields such as service instance id, which will be mapped into the process instance id to find a matched process instance id in Camunda database in the Service Instnce Rendering and Detail widget.



    • Service Statistic Widget (stretch goal)
      • When, the static button is clicked, the Service Statistic dashboard will be shown. 
      • Collect and display Service Instance statistic per filtered service list, for the filtered service range.
      • Design
        • Query for service list data for a given search criteria. 
          • Use a REST API, getServiceList with search criteria parameters based on a new getInfraRequest(...)
        • Count the total number per status (Finished, Processing, Error)
        • Status Total / total number

...

  • REST APIs for providing data to UIs
    • Capabilities
      • Provides REST services, by utilzing 1) Camunda REST APIs, such as BPMN XML string, process activity data, process variable, statistic, and 2) SO Request DB APIs for a service list.
      • Consolidate data responses from multple Camunda calls (both from process and history database) and feed them to UIs.
      • Use of HistoryService APIs, example, processEngine.getHistoryService().createHistoricProcessVariableQuery().xyz
      • Set a History level to ACTIVITY as a minimum; AUDIT (default) level for process variable tracing
      • Provides workflow tracing (between parent-child workflows, interaction with other services; service task in and out); example,
        • processEngine.getRuntimeService().createExecutionQuery().processVariableValueEquals("serviceInstanceId", serviceInstanceId).singleResult();
      • Custom Query
        • Custom Query against History ACT_HI_DETAIL database table, as needed
      • Create a REST API, getServiceList with search criteria
        • Enhance MsoRequestsDbAdapter and MsoRequestsDbAdapterImpl to implement getInfraRequest(...) with additional parameters
        • invoke getInfraRequest(...) to collect service list data based on search criteria.
    • Design
      • Write REST APIs 
        • getServiceList(...) invokes new getInfraRequest(...)
        • getProcessInstanceId(String serviceInstanceId);
        • getprocessDiagram(String processInstanceId); getProcessDiagram(String serviceInstanceId);
        • getprocessInstanceDetail(String processInstanceId); getProcessInstanceDetail(String serviceInstanceId);
        • getProcessInstanceActivity(String processInstanceId); getProcessInstanceActivity(String serviceInstanceId);
        • getProcessTaskDetail(String taskId);
        • getProcessTaskType(String taskid);


  • Custom History Event ProducerProducer  (strech goal)
    • Populate additional data in history with extensibility
    • It is an optional component. We plan to use it when the default Camunda process and history data is not sufficient.

...

  • Estimates

    • Note: 
      • It is a rough estimate - to be refined
      • Estimate includes development and unit testing time
      • As mentioned above section, the components can be built in parallel. 
      • 5 hours / day
SO Service List widget UI 40 Displays statistic for the selected service scope
PriorityComponentDevelopment EstimateComments
1REST APIs for providing data to UIs80 hours / Java developer
    • REST facade for
      • collecting and conslidating various Camunda process instance and history data to simplify GUI data collection interaction.
      • collecting SO Request DB data
2SO Service List widget80
    • populate serach filter criteria
    • Displays a service list panel
    • control action buttons
Statistic Dashboard hours / UI developer
    • populate serach filter criteria
    • Displays a service list panel
    • control action buttons
3

Service Instance Rendering

and Detail Panel

120 hours / UI developer
    • Renders service instance workflow graphically
    • provides the service instance details and selected task details
    • Provides drill-down and drill-up capabilities
Rest APIs for supplying data80 hours / Java developer
    • REST facade for
      • collecting and conslidating various Camunda process instance and history data to simplify GUI data collection interaction.
      • collecting SO Request DB data
4Statistic Dashboard (stretch goal)40 hours / UI developer
    • Displays statistic for the selected service scope
5Custom History Producer (stretch goal)Custom History Producer40 hours / Java developer
    • Produce history with additional data population
    • This is an option, and is used only if the Camunda history data is not sufficient.

...