Challenge
Large Data Processing
Used to track tasks for tracking funds unclaimed and ready to be transferred over the state as part of the Electronic Survey Administration Process. The request can be ad-hoc or part of the annual process. The tasks are created and then claimed by a user to complete the planning and preparations tasks.
Users can submit the task for review where the reviewers either return/rejects the task to the preparer to have additional information added or approves the tasks as ready to be filled. Once the review has been approved the task it can be filled with the appropriate agency.
func startWorker(client zbc.Client) worker.JobWorker {
w := client.NewJobWorker().
JobType(lJobType).
Handler(HandleJob).
Open()
return w
}
func HandleJob(client worker.JobClient, job entities.Job) {
vars, err:=job.GetVariablesAsMap()
log.Printf("Sending email with message content %s", vars[kMessageVariable])
_, err=client.NewCompleteJobCommand().JobKey(job.Key).Send(ctx)
if err!= nil {
log.Pringf("failed to complete job with key %d: [%s]", job.Key, err)
}
log.Prinff("completed job %d successfully", job.Key)
}
class Program {
static void Main(string[] _) {
using (var zeebeClient = CreateZeebeClient())
{
using zeebeClient.NewWorker()
.JobType("email")
.Handler(JobHandler)
.Open())
{
AwaitExitUserCmd();
}
}
}
private static void JobHanlder(IJobClient jobClient, IJob activatedJob)
{
var variables = JsonConvert.DeserializeObject>(activatedJob.Variables);
Log.LogInformation($"Sending email with message content: {variables["message_content"]}");
jobClient.NewCompleteJobCommand(activatedJob).Send();
}
Approach
Opportunity - Increasing Customer Satisfaction
Refactored PRocess, added RPA support, reduced costs by utilizing an Open Source BPM, and increased customer satisfaction by using a modern UI framework that can microfocus on custom user needs.
Migration
Automated BPM, Rules, Integration and UI Migration
Security
Working directly with the customer to incorporate a custom security layer
Fixed Cost
Designed a fixed cost approach within an agreed upon timeline
Product used
Genesis
Genesis is a dehydrated, production ready Camunda environment. It's a collection of expertise, auxiliary delegates and listeners.
Result
Cost reduction & Accelerated migration time
A process designed to maintain a 360 view of the distribution partners’ information that can be leveraged to service and support our distribution partners.
Developed to bring together the details from multiple producer information systems into groups. Added support from document management and batch-based processing.