CCMS LLD V1.1
CCMS LLD V1.1
Version 1.0
1
CCMS Low-Level Design
0.1 11th Nov, 2020 CCMS Team Documented the low-level design for CCMS Portal.
2
CCMS Low-Level Design
Contents
1 Introduction......................................................................................................................................................6
1.1 Purpose.....................................................................................................................................................6
1.2 Scope........................................................................................................................................................6
1.3 Not in Scope.............................................................................................................................................6
1.4 Intended Audience...................................................................................................................................6
1.5 Overview..................................................................................................................................................6
2 Application Landscape......................................................................................................................................7
2.1 System Architecture.................................................................................................................................9
2.2 Solution Architecture..............................................................................................................................10
3 To-Be Business Process...................................................................................................................................10
3.1 Main Process................................................................................................................................................10
4 Data Model:.......................................................................................................................................................11
4.1 Business Object Model.................................................................................................................................11
4.2 Entity Relationship Model............................................................................................................................13
4.3 Teams...........................................................................................................................................................14
5 Service Interface Definition............................................................................................................................14
5.1 Internal Services.....................................................................................................................................14
5.1.1 BPM Services..................................................................................................................................14
5.2 External Services.....................................................................................................................................15
5.3 Services exposed in CCMS......................................................................................................................16
5.4 Sending, receiving and processing emails...............................................................................................16
5.5 Home Page.............................................................................................................................................16
5.6 Maker Process........................................................................................................................................17
5.7 Checker Process......................................................................................................................................19
5.8 Dubai Portal Email Notification...............................................................................................................20
5.9 RM Email Notification.............................................................................................................................20
5.10 TMS Queue Email Notification................................................................................................................20
5.11 Exception Email Notification...................................................................................................................20
5.12 Deployment Plan....................................................................................................................................20
3
CCMS Low-Level Design
4
CCMS Low-Level Design
Glossary:
Acronym/Term Description
5
CCMS Low-Level Design
1 Introduction
1.1 Purpose
This document provides a comprehensive architectural overview of the Court Letter system, using number
of different architectural views to depict different aspects of the system. It is intended to capture and
convey the significant architectural decisions, which have been made on the system. This also captures the
Low-Level Design which is common across the project.
1.2 Scope
This design document is intended to articulate the Solution design of the Court Letter Application. The
solution architecture will evolve through multiple iterations within the System Development Lifecycle
(SDLC).
Handling of Arabic character based Case-Reference Numbers : Any case which has a case
reference number in non-Latin characters will not be processed through this solution.
1.5 Overview
The Court Letter Solution will be implemented using the IBM BAW Platform. The diagram below depicts
the conceptual Solution Architecture leveraging IBM BAW platform.
6
CCMS Low-Level Design
2 CCMS Checker
2 Application Landscape
The Court Letter Generation Process follows a layered architecture to provide separation of responsibilities
among pieces of the architecture. The important components are:
BAW
BAW functions as the workflow engine to facilitate the maker-checker process; which in turn produces
the final response to be provided for a given court case. The BAW workflow is defined using IBM BAW
product. IBM BAW integrates with Java, Application Database and OMW-Flex to facilitate the
completion of the maker-checker process.
Snapshot for the Court Case Management System (CCMS) Process Application
Dependent Toolkits:
Java – (Microservice)
Java/J2EE is deployed on IBM Websphere Application Server and serves as the main processing engine
for communication between RPA, EDMS, Email Server and BPM. It also handles computing intensive
jobs like generation of PDF files, processing of the incoming on-demand requests from RPA and
supporting RPA daily batches.
7
CCMS Low-Level Design
RPA
RPA aims at simulating the lookup of new cases on the CCMS portal and responding back to the same
when the appropriate response has been decided through the BPM maker-checker workflow. RPA
operates 3 stages namely;
1. Stage 1: Pull data and documents from the CCMS portal for cases that has not been processed
yet. Use the “maker” credentials for the same.
2. Stage 2: Push data and documents back to the CCMS portal after a response has been finalized.
Use the “maker” credentials for the same.
3. Stage 3: Approve the case for which the Stage 2 has been completed. Use the “checker”
credentials for the same.
1. CCMS_Stage1.bprelease
2. CCMS_Stage2.bprelease
3. CCMS_Stage3.bprelease
Atomic
Atomic is used to facilitate file transfer between the RPA and Java NFS. This consists of a series of shell
scripts that can be invoked on demand requesting for the files/folders to be transferred from the
source to the destination NFS.
8
CCMS Low-Level Design
RPA uploads the documents and necessary metadata to CCMS portal and updates the status back
to Java layer, which relays the same to the BPM environment.
9
CCMS Low-Level Design
10
CCMS Low-Level Design
4 Data Model:
4.1 Business Object Model:
Instances created in CCMS utilize the following major business objects.
1. CCMS_Account_SummaryDetails_BO
2. CCMS_AccountBlockDetailsBO
3. CCMS_AccountBLockSummaryDetails_BO
4. CCMS_AccountDetails
5. CCMS_AccountStatementDetails_BO
6. CCMS_AuditTrials
7. CCMS_BISPortalDataBO
8. CCMS_BISPortalRequestParam
9. CCMS_CancellationOfStandingInstruction
10. CCMS_CaseDetails
11. CCMS_CertificateDetails_BO
12. CCMS_CifBo
13. CCMS_Comments
14. CCMS_Correspondense_Details
15. CCMS_Court_Comp_Req_ReqTypeBO
16. CCMS_Court_Comp_Req_ReqTypeBO2
17. CCMS_CourtComplaintDetails
18. CCMS_CourtLetterResponseDetailsBO
19. CCMS_CourtRequestDetails
20. CCMS_CourtRequestTypeDetails
21. CCMS_CourtResponseDetails
22. CCMS_CourtsTemplateBO
23. CCMS_CourtTemplateTabBO
24. CCMS_CreditCardSummary_BO
25. CCMS_CreditCradStatementDetails_BO
26. CCMS_CustomerDetailsResponse_BO
27. CCMS_CustomerSearchDetails
28. CCMS_CustomerSearchRequest
29. CCMS_DocTagg
30. CCMS_DueDateBO
31. CCMS_EdmsDocDownloadBO
32. CCMS_ExceptionDetails_BO
33. CCMS_InwardRemittance_Bo
34. CCMS_InwardRemittanceTabBO
35. CCMS_IslamicAccountDetails_BO
36. CCMS_LetterData
37. CCMS_Loan_Details_BO
38. CCMS_LoanDetails
39. CCMS_MMCDetails_BO
11
CCMS Low-Level Design
40. CCMS_OutStandingAmount_BO
41. CCMS_OutwardRemittance_BO
42. CCMS_PayorderCancelation_Reissue
43. CCMS_POCancellationFormBO
44. CCMS_POCancellationTabBO
45. CCMS_QueryloanDetails_BO
46. CCMS_ReassignSearchBO
47. CCMS_Response_BO
48. CCMS_ResponseDocs
49. CCMS_ScreenParamBO
50. CCMS_SearchCriteriaBO
51. CCMS_SearchDetails
52. CCMS_SearchParameters
53. CCMS_SearchResult
54. CCMS_ServiceLog
55. CCMS_StandingInstructionBo
56. CCMS_TaskDetailsBO
57. CCMS_TaskReassignmentAuditBO
58. CCMS_TemplateAccountDetails
59. CCMS_TransactionDetails
60. CCMSCourtTemplateVisibilityBO
61. CCMSInwardRemittanceMMCPayOrderDetails_BO
62. CustomerSearchBO
12
CCMS Low-Level Design
Besides the 6 core tables shown above, the following common (shared framework) tables are used by
the application:
1. CCMS_ACCOUNT_BLOCK_DETAILS
2. CCMS_ACCOUNT_DETAILS
3. CCMS_ACCOUNT_STATEMENT
4. CCMS_ACCOUNT_SUMMARY
5. CCMS_APP_DATA
6. CCMS_AUDIT_TRIALS
7. CCMS_BIS_PORTAL_DATA
8. CCMS_CASE_DETAILS
9. CCMS_COMMENTS
10. CCMS_CONFIG_DATA
11. CCMS_CORRESPONDENCE
12. CCMS_COURT_BENEFICIARY
13. CCMS_COURT_COMPLAINT_DETAILS
14. CCMS_COURT_REQUEST_DETAILS
15. CCMS_COURT_REQUESTTYPE_DETAILS
16. CCMS_COURT_RESPONSE_DETAILS
17. CCMS_CREDIT_CARD_SUMMARY
13
CCMS Low-Level Design
18. CCMS_CUSTOMER_DETAILS
19. CCMS_CUSTOMER_SEARCH_DETAILS
20. CCMS_DOC_MIME_TYPES
21. CCMS_DOCTAGG
22. CCMS_DUBAIPORTAL_EMAILCONTENT
23. CCMS_EDMS_DETAILS
24. CCMS_EDMS_DOC_DOWNLOAD
25. CCMS_JAVA_HTML_TEMPLATE
26. CCMS_JAVA_RPA_DATA
27. CCMS_JAVA_SERVICE_AUDIT
28. CCMS_LETTER_DATA
29. CCMS_LOAN_DETAILS
30. CCMS_LOAN_DETAILS_NEW
31. CCMS_LOAN_OUTSTANDING_DETAILS
32. CCMS_MMC_DETAILS
33. CCMS_PRIME_TRANSACTION
34. CCMS_REPLY_ATTACHMENT
35. CCMS_SCREEN_PARAM
36. CCMS_SERVICE_LOG
37. CCMS_TASK_REASSIGNMENT_AUDIT
38. CCMS_TEMPLATE_CONFIGURATION
4.3 Teams
Following actors will be working on case based on role.
Teams
CCMSCamMaker
CCMSCamChecker
CCMSAssigner
14
CCMS Low-Level Design
15
CCMS Low-Level Design
16
CCMS Low-Level Design
Note:
The highlighted sections in the home page called tabs. Based on user privileges, the tab will be
varied.
My Queue:
Once cases are created, users can able to see both the CCMS Portal and Dubai Portal Email cases in
My Queue Section.
Re Sub Queue:
Whenever checker refer the cases back to maker, then checker referred cases are will be available
in Re Sub Queue.
Search:
Based on different search criteria users can able search and check the status of the cases.
Task Reassignment:
Whenever “CCMS Assigner” users want to assign cases back to other users, then users can re-assign
the single or multiple cases to others by clicking re-assign button under Task Reassignment section.
17
CCMS Low-Level Design
Court letter application only deals with Mashreq Customer Accounts (Non-customers are not
fetched from any system).
Court Letter response documents to CCMS portal contains only the account, block-summary and
MMC Details explicitly selected by the “Maker”.
Response document generated by BPM, using Java, must have a name same as the unique case-
reference number provided by Java.
18
CCMS Low-Level Design
When maker submit the case, cases will be landing in checker queue. Once checker claim the case,
checker can able to see information as Read Screen mode along with documents.
Checker will verify information with documents, if checker required any more information
regarding customer, cases will be referring back to Maker for getting additional information.
After verifying customer information, checker will approve the cases.
19
CCMS Low-Level Design
20
CCMS Low-Level Design
6.2 Coaches
Coach Description Actors
CCMS Maker will check & enters the
customer’s data and upload documents.
Maker Screen CCMS Maker
Finally, Case submitted to CCMS Checker for
further process.
CCMS Checker Can receive data from CCMS
Maker for quality checking. CCMS Checker can
Checker Screen send the case to CCMS Maker. if customer’s CCMS Checker
data is incomplete. Otherwise, CCMS Checker
will approve the case.
Verify EDMS Status Documents will be uploaded and deleted from
CCMS Maker
Maker Local File System after completion of cases
CCMS View Screen To displays customer’s data in read only mode All users
21
CCMS Low-Level Design
2.Dubai Email Case: For Dubai Portal Email case, user should enter all the data before
submitting to Checker.
Note:
For Dubai Portal Email cases, User will enter the data manually and they have option to save the
“Court Request” and “Reply and Attachment” information by clicking “Save” button in CCMS_Maker screen.
Flex Call: Except name, when search parameter contains other fields like License number,
Emirates ID, Passport, Nationality and DOB then it will go for Flex call.
22
CCMS Low-Level Design
23
CCMS Low-Level Design
By Clicking “Eye Icon” will get more information about customer details.
24
CCMS Low-Level Design
Note:
By Default, will get span of 6-month Account Statement and maximum span of 1-year account
statement will get.
BPM having the functionality to generate statements in different formats such as:
PDF
Excel Sheet
25
CCMS Low-Level Design
26
CCMS Low-Level Design
Court Letter Maker Screen: Customer MMC and Credit Card Details
User can able to select multiple MMC details of customer.
Credit card details of customer for purpose of viewing card statement.
27
CCMS Low-Level Design
28
CCMS Low-Level Design
29
CCMS Low-Level Design
Court Letter Maker Screen: Selected Account Details under Reply and Attachment Section
The account details that are selected in the “Account Details Section” will be available under
“Selected Account Details Section”.
Court Letter Maker Screen: Need Info under Reply and Attachment Section
BPM having a separate “Button” called Need Info under Reply and attachments tab. The main purpose
of this is to obtain the missing information from court.
Below are few fields need to be incorporated in BPM.
Subject:
Please select the following which is missing
o EID/ passport required
o Trade license required
o Court order/letter/final judgement required
o Wrong attachments
o Attachments not clear
o Other issue in the request
Request :
Once user select any one of the items with the respected subjected and then Request the details to
court provide the necessary details. User should be able to add comments in comments box in ARABIC.
Note:
30
CCMS Low-Level Design
31
CCMS Low-Level Design
On selection of Account number, currency and amount will be auto-populated and can add
multiple account details.
Court Letter Maker Screen: Final Court Templates (Arabic Template) in Template Section
The user can select required template and generate pdf from Final Court Templates based
on request action.
The Account numbers will be auto-populated in the dropdown that the user selected
account from “Account Details section”.
On selection of Account number, currency and amount will be auto-populated and can add
multiple account details.
32
CCMS Low-Level Design
33
CCMS Low-Level Design
34
CCMS Low-Level Design
CCMS Checker Can receive data from CCMS Maker for quality checking. CCMS Checker can send the
case to CCMS Maker. if customer’s data is incomplete. Otherwise, CCMS Checker will approve the
case.
In CCMS Checker, customer details are displayed as “Read Only Mode”.
35
CCMS Low-Level Design
Whenever submitting case to EDMS, BPM generate Auto emails to RMs signed by the user
name.
Only for corporate customer’s notification/intimation will be received to RM as auto email.
RM details to be fetched from CIF in flex.
Auto email templates for RM based on the request raised from court.
Based on account action type, sending EDMS request to CCMS Freeze and Un Freeze Matrix Services.
CIBG Freeze/ block amount in the account BPM Needs to send it to TMS Application
SME/RBG Freeze/ block amount in the account BPM Needs to Send it to Retails maintenance Queue
CIBG /SME/RBG accounts Total freeze / account flagging BPM Needs to send it to CAM maintenance Queue
CIBG /SME/RBG accounts Inward remittance BPM Needs to send it to CPC_FTO queue
CIBG /SME/RBG accounts Outward remittance BPM Needs to send it to CPC_FTO queue
In CCMS View Screen, the users can check and view the customer related information as “Read
Only Mode”.
36
CCMS Low-Level Design
7. Exception Handling
BPM Level Exceptions
Process exception: This occurs when there is a problem with one of the components used by a process or
service. Process exceptions are often caused due to temporary errors such as connectivity failure, timeouts,
or design time code errors.
Business exception: This is an exception that occurs due to the outcome of a decision in the process. The
actual process internally triggers this type of fault. A business exception is designed as part of a business
process and is raised by the business process if the process cannot proceed due to:
37
CCMS Low-Level Design
2 Cases not in E6: Case not found/ not Action Timeout Exception
Report Bounced accessible Exception
Update the status in the excel and proceed the
Screen
next data
3 Export Cases to E3: Action Timeout
Excel Exception
E4: Session Timeout Session Timeout Exception
Exception Click ok and continue process again
4 Fetch details E3: Action Timeout
from screen Exception
File not found / file not accessible exception
E7: Fetch Details Exception
38
CCMS Low-Level Design
Exception Update the excel with the reason and send to BPM
8. Auditing
Currently Auditing is performed in two ways. One is at Action level and second one will be in Field level.
Case level Audit is captured in the following tables.
9. Logging
By default, log, error, and trace information for all processes and applications on a process server is written
to the application specific log files. We have implemented the logging through:
Java used JDBC to connect to the Application database and carry out the CRUD operations.
BPM uses the IBM BPM Database connectors to connect to the Application database.
Instance Purge Timeline
Instances created in IBM BPM Platform will be available for processing for 90 days. Post 90 days the
instances will be purged from the system.
39
CCMS Low-Level Design
Solution Option 1: Login through BOT. Option 2: Login using command center
Options personnel.
Pros: Pros:
Seamless Design. Can Login to the CCMS Portal by
No human Intervention to entering CAPTCHA Code.
enter Captcha.
Cons: Cons:
Accuracy of reading captcha is BOT timing need to be tightly
very low. coordinated with the Command Center
team.
Not a seamless design.
Recommended Option-2
Option
Justification BluePrism’s inbuilt OCR for captcha recognition was not deemed up-to-the-mark (about
50% accuracy).
DD – 002
Problem Instantiation of cases on BPM and transmission of data captured by RPA into BPM
Statement
Solution Option 1: Call BPM REST service with Option 2: Use Java as a mediator.
Options data
Pros: Pros:
Direct communication avoiding Higher volume can be handled.
an intermediary. Immediate response, as won’t have to
Save on development time wait for actual instance creation.
required to build mediation Better retry opportunity in case of
services. BPM being unavailable during BOT
running hours.
Image standardization could be
40
CCMS Low-Level Design
Cons: Cons:
Lower throughput because of Additional layer requires additional
wait for actual instance development effort
creation.
Retry because of the non-
availability of BPM system
during BOT runs becomes a
challenge.
Synchronization between Java
(Image Server) and BPM need
to be carried out, so that
images/documents are
available before task is
exposed to the user.
Recommended Option-2
Option
Justification Image/document standardization can only be carried out through Java layer. Better
scalability and offloading of heavy database operations on to the Java layer.
DD – 003
Solution Option 1: Use BPM Services pre-built Option 2: Develop OMW-Flex interface in the
Options for OMW-Flex interaction Java layer.
Pros: Pros:
Connectors and Service Better capacity and capability of
contract already available. handling SOAP-XML request and
Business objects need not be response.
modeled from scratch. Better scalability.
Cons: Cons:
41
CCMS Low-Level Design
Recommended Option-1
Option
Justification Pre-built connectors available that can be leveraged, thereby lowering the time-to-
market.
12. Reusability
Below are the list of reusable components (internal and external) that are part of the overall solution.
Sl No. Component New/Existing Business Functionality Description
Note:
1. Lifespan of CCMS process is identified as maximum of 30 days from the time the instance is
created.
42
CCMS Low-Level Design
2. As of now archival of completed instance data (post retention period) is yet to be finalized with
business.
3. IBM Techline sizing needs to be initiated to arrive at recommended hardware configuration
required to host this application.
1: Maximum 5 active users at any given point of time. Expected memory usage is around 300 MB.
2: Avg. cases 125 per day * 20 MB Document Per Case * (30 day lifespan + 30 day retention post
completion)
3: Staging/Reporting schema (1 table with 18 columns) capacity is calculated for all cases processed
over a period of 2 years.
Java
Java will keep the documents in its NFS for the whole duration of case being active in BPM
system. Hence the maximum retention period is 30 days post completion of instances in BPM.
43
CCMS Low-Level Design
44