The Underwriters Workbench is a basic underwriting and application system created using Mendix. Designed as both a B2B and a B2C web app it shows how to create a dynamic form and use generalization to cater for multiple insurance types (vehicles and valuables are included in this project). It also shows the application process and the management of a conversational approach to workflow allowing underwriters and actuaries to discuss the application.
Included in this project is an example of workflow, used in a repeating pattern, and an example of the implementation of dark mode.
For those familiar with the old ratings engine’s excel functionality this is still included within the Admin section but will not be updated going forwards.
How to setup
The application is available both as a demo environment and as a starter app. You can find the demo environment here: https://mendixinsurancerat.mendixcloud.com
To create your own version, the Underwriters Workbench application is available via Starter Apps. The application is built using Mendix 9 and we will try to ensure it's on the latest version of the product.
Upon first running the application you’ll be prompted to log in as an Administrator to complete the onboarding process. This process will create sample users, import some default engines and policies, and create some sample companies, customers, and applications.
The application has seven roles:
The anonymous role is only used for displaying the log in screen.
Underwriters are responsible for creating companies, customers, and applications. They can also create policies. Sample accounts are created in the form “underwriter_1” with a default password of “Pass01”
- Senior Underwriter
The Senior Underwriter (username “seniorunderwriter”, password “Pass01”) is responsible for creating engines and maintaining lookup lists. They are also able to confirm applications requiring senior approval and reassign tasks and applications.
Actuaries can review enquiries raised by the underwriter during the applications process. Sample accounts are created in the form “actuary_1” with a default password of “Pass01”.
- Senior Actuary
A Senior Actuary (username “senioractuary”, password “Pass01”) can deal with enquiries which have been escalated by an actuary and to reassign actuary tasks.
The administrator role is used for onboarding and for accessing the legacy Excel form rating engine system.
The customer journey for this system can be built to cater for various scenarios. With the default setup provided you can create insurance applications for customers for their valuables and for companies for both valuables and vehicles. The foundations for building and personal insurance have been started but will need building out to be fully utilised.
Once started an application will ask pre-configured questions to establish a risk factor and then will require information on the assets being insured. Combined this will create a premium and show the calculations which established the value.
At this point the application can be approved or referred to an actuary for further analysis. A conversation can take place, within the system, between the actuary and the underwriter and can be referred and forth as necessary. At any point the application is with the underwriter they can either approve or abandon an application.
Actuaries can also refer applications to senior actuaries for special cases.
Applications can be supported with case notes and attachments which may relate to the application, a specific question, or a specific asset.
Each user role has their own personalised dashboard showing information pertinent to their role. Typically this means easy access to the applications they are currently working on. In the case of the senior roles, they are also empowered to monitor potential blockers when people are off work and to reassign those tasks or applications as well as have an overview of overall team performance.
As soon as a new application is created the workflow commences. This enables it to be tracked through every stage of the process.
The application begins the process with the underwriter and from their can either be approved up front, thus completing the process, or be referred to an actuary for further assessment. Once with the actuary the application can then be passed back and forth from the actuary to the underwriter or escalated to a senior actuary.
Whenever the application is with the underwriter they will always have the option to approve or abandon the application.
The domain model
The first key part of the domain model, the Engine Builder, contains the entities required to build the base forms for insurance types. There is no generalization in this module it’s a generic set of data for all types. However, there are related entities that support the various types and will be reused across policies such as item categories and vehicle information.
Next is the Policy Builder which includes a base policy entity and then generalizations to support different types of insurance. The current version of the project contains generalizations for items, vehicles, buildings and people but only items and vehicles have been fully implemented. This is the section in which you can tailor the insurance forms to be more specific for the type of policy you are selling.
The final key area is the Applications module which contains all the information pertaining to an application. This includes:
- Companies and customers
- Base application information
- Answers to dynamic questions
- Asset information
- At this level there is further generalization to support assets for different types of insurance; once again only items and vehicles have been fully implemented.
- Policy information
- Case notes
All the non-persistent helper entities can also be found here which support dashboard creation and some data input forms.