Improving usability with modernization. Legacy Garage 2

00:00 → 00:03

Can product improvements actually make your software worse?

00:03 → 00:07

It's more possible than you'd think if they are not planned,

00:07 → 00:09

designed, and implemented wisely.

00:09 → 00:12

I'm Maria, Senior UX Designer at Merixstudio.

00:12 → 00:15

In this episode of Legacy Garage,

00:15 → 00:18

I'm going to show you how software modernization can

00:18 → 00:23

improve usability and fix mistakes assembled over the years.

00:36 → 00:39

In this series, we present different ways of

00:39 → 00:42

dealing with the most common challenges of software

00:42 → 00:44

modernization.

00:44 → 00:48

We draw on our past experience and present solutions based on

00:48 → 00:50

the example of one product.

00:50 → 00:53

Today, we are going to talk about the case of a US based

00:53 → 00:55

insurance agency.

00:55 → 00:58

You won't be surprised if I tell you that the US insurance

00:58 → 01:02

industry is the biggest one in the world.

01:02 → 01:06

It owns almost forty percent of global insurance premiums.

01:06 → 01:10

There are over six thousand companies operating across the

01:10 → 01:13

country, and three million people work in the industry.

01:13 → 01:19

Unfortunately, the US insurance market has been highly regulated since its beginnings.

01:19 → 01:23

Moreover, regulations vary in different states and across

01:23 → 01:27

types whether they apply to health, life, or property.

01:27 → 01:31

The US insurance industry is also considered to be outdated.

01:31 → 01:36

Companies decide to implement innovations at a very slow pace.

01:36 → 01:39

Agencies needs to deal with a high sensitive data.

01:39 → 01:43

It probably contributes to the slow innovation pace

01:43 → 01:47

as it's almost impossible for third party developers to

01:47 → 01:51

retrieve this data and create a modern Insurtech solution.

01:51 → 01:54

This relates to another insurance market challenge,

01:54 → 01:59

the growing average age of agents working in the business.

01:59 → 02:02

Different sources mention numbers as high as sixty

02:02 → 02:03

years old.

02:03 → 02:07

Complicated and highly regulated work in the insurance

02:07 → 02:11

industry is not appealing to young employees.

02:11 → 02:14

Working with software that makes daily tasks even

02:14 → 02:19

more difficult and looks like it's older than them doesn't help at all.

02:19 → 02:22

The agency is facing all these problems.

02:22 → 02:26

The company focuses on cooperation with a few specific

02:26 → 02:28

industries, for example, tracking.

02:28 → 02:31

It provides high quality business products to a narrow

02:31 → 02:34

and sometimes niche group of enterprises.

02:34 → 02:38

It prompted them to adjust their internal processes and

02:38 → 02:42

look for a tool that could help manage daily tasks.

02:42 → 02:46

Solutions available on the market proved to be too general

02:46 → 02:47

and rigid to use.

02:47 → 02:51

So several years ago, the agency decided to create their

02:51 → 02:55

own tool and hired a freelancer for that.

02:55 → 02:59

Although the product was meant to improve their daily work,

02:59 → 03:02

it quickly became a blocker for the company's growth.

03:02 → 03:04

But what causes all these problems?

03:04 → 03:07

Let's look under the hood and find out.

03:07 → 03:11

First of all, the current app is overloaded with information and

03:11 → 03:12

functionalities.

03:12 → 03:15

The product is slow and too complicated.

03:15 → 03:18

Many operations have to be done manually and the

03:18 → 03:20

technologies used are outdated.

03:20 → 03:25

On top of it, the overall user experience is extremely poor.

03:25 → 03:27

Over the last few years,

03:27 → 03:31

maintaining the application was only about adding new features.

03:31 → 03:35

It has a very negative impact on its performance.

03:35 → 03:38

What's more, all new functionalities are hidden

03:38 → 03:39

under one tab.

03:39 → 03:43

Trust me, expanding this tab is like opening a

03:43 → 03:48

Pandora's box, and it's not the only place that causes problems.

03:48 → 03:53

This data overload causes the problem of managing insurance information.

03:53 → 03:57

Freelancers and past development agencies were

03:57 → 04:00

not able to develop one consistent way of

04:00 → 04:02

managing the client's policies.

04:02 → 04:04

When dealing with legacy systems,

04:04 → 04:07

one problem often causes another.

04:07 → 04:11

In this case, we also have to face this snowball effect.

04:11 → 04:14

Poor usability translates into a steep learning curve

04:14 → 04:17

for both new employees and users.

04:17 → 04:19

The onboarding takes ages,

04:19 → 04:22

which was also one of the main reasons for the

04:22 → 04:25

agency's problems with hiring new people.

04:25 → 04:28

To find solutions for these problems,

04:28 → 04:31

we need to take a few steps.

04:31 → 04:33

We start with the scoping session.

04:33 → 04:36

It's always a good way of starting a project because it

04:36 → 04:40

gives a chance to gain a better understanding of the product

04:40 → 04:42

and sees the big picture.

04:42 → 04:46

And, of course, if you cooperate with an external IT

04:46 → 04:49

partner, it can be an opportunity to acquaint

04:49 → 04:52

yourself with the company's processes.

04:52 → 04:56

On the other hand, your tech partner will be able to dive

04:56 → 05:00

deeper into your business needs and get to know your

05:00 → 05:01

company better.

05:01 → 05:06

The original application doesn't represent the desired workflow.

05:06 → 05:10

One of our main goals is to give users better control over

05:10 → 05:12

processes, shorten the onboarding time,

05:12 → 05:14

and improve daily work.

05:14 → 05:19

That's why at this step, we conduct an in-depth analysis.

05:19 → 05:22

In this case, the agency employees are app users,

05:22 → 05:26

so the close cooperation between the agency and a tech

05:26 → 05:27

partner is crucial.

05:27 → 05:31

The analysis shows that our work on modernizing the

05:31 → 05:34

legacy system should start with a total

05:34 → 05:37

redesign of information architecture.

05:37 → 05:41

At this step, our product team creates wireframes.

05:41 → 05:45

We propose a new approach to displaying and managing the

05:45 → 05:47

client's policies.

05:47 → 05:50

We clean all the mess in the information display.

05:50 → 05:54

The important data is now logically linked and displayed

05:54 → 05:55

in one place.

05:55 → 05:59

We remove unnecessary information and introduce

05:59 → 06:01

consistency in labeling.

06:01 → 06:05

All these improvements provide the company with easier access

06:05 → 06:08

to the most frequently used tools.

06:08 → 06:11

They also ensure better visibility of the current

06:11 → 06:14

status in policy related processes.

06:14 → 06:18

We also simplify the process of policy management.

06:18 → 06:22

Now it's easier for users to add new clients without the

06:22 → 06:26

necessity of introducing the same data in different places.

06:26 → 06:29

We also enable users with full control over

06:29 → 06:33

processes like policy renewals and provide them with

06:33 → 06:36

easy access to the history of changes.

06:37 → 06:40

These improvements allow app users to shorten the time

06:40 → 06:43

of adding a new business partner by up to

06:43 → 06:45

thirty percent.

06:45 → 06:49

Speaking of renewals, another important change we

06:49 → 06:51

implement are notifications.

06:51 → 06:53

As I've mentioned before,

06:53 → 06:57

the insurance regulations in the United States are very strict.

06:57 → 07:00

It is very important that the relevant insurance certificates

07:00 → 07:03

are issued on time.

07:03 → 07:07

From now on, notifications will remind users to do this.

07:07 → 07:10

To simplify daily operations and improve communication,

07:10 → 07:14

we provide integration with Gmail API.

07:14 → 07:17

Now users can easily communicate with clients

07:17 → 07:22

directly from the system and import their messages from the

07:22 → 07:23

email box.

07:23 → 07:25

When dealing with such sensitive data,

07:25 → 07:28

we need to make sure it's well protected.

07:28 → 07:31

That's why we implement a system of roles and permissions

07:31 → 07:36

here so that only authorized people have access to the data.

07:36 → 07:39

To provide successful usability improvement,

07:39 → 07:43

we also need to implement important technical solutions.

07:43 → 07:47

So without further ado, I turn you over to Tomek,

07:47 → 07:50

Back end Engineering Manager at Merixstudio.

07:50 → 07:54

We verify whether users should be able to view or modify some data.

07:54 → 07:58

We also develop a mechanism for generating validation errors.

07:58 → 08:01

It will allow end users to diagnose the cause of a given

08:01 → 08:03

error immediately.

08:03 → 08:05

We use universally unique identifiers instead of

08:05 → 08:08

sequential ones for a couple of reasons,

08:08 → 08:10

and one of the aspects is security.

08:10 → 08:13

It is also impossible to guess the previous and next

08:13 → 08:15

UUID knowing the current one,

08:15 → 08:19

unlike the sequential IDs where you can easily do that and try

08:19 → 08:22

to access a resource that does not belong to you.

08:22 → 08:25

Also, we enforce a secured encrypted connection to the

08:25 → 08:29

application to protect users against man in the middle attacks.

08:29 → 08:33

We use Google as a third party identity provider for

08:33 → 08:35

authenticating users.

08:35 → 08:38

Then we use JSON web tokens with a short lifetime of an

08:38 → 08:41

access token for further communication between front end

08:41 → 08:43

and backend.

08:43 → 08:46

We also introduced some changes in the data architecture to

08:46 → 08:49

boost the application's performance.

08:49 → 08:53

There is a huge amount of data to be migrated to the new solution.

08:53 → 08:55

As we add new functionalities to the system,

08:55 → 08:59

we also need to write migration script to adjust the existing

08:59 → 09:01

data structure to the new format.

09:01 → 09:05

Then we will use the script to automatically move the data

09:05 → 09:09

from the original solution to the new one, chunk by chunk.

09:09 → 09:13

An interesting solution is also securing the file upload by customers.

09:13 → 09:16

Client wanted to ensure that the uploaded files are safe,

09:16 → 09:19

so we introduced a virus scanner that lives inside

09:19 → 09:23

infrastructure and checks for potentially dangerous files.

09:23 → 09:24

Thanks for watching.

09:24 → 09:28

If you like this video and want to know more about software

09:28 → 09:31

modernization, visit our insights.

09:31 → 09:34

You will find the link in the description below.

Let's connect and build together