Vaadin 24.4 integrates with React, unifies Flow and Hilla development, and more!

Seamless Swing to Web migration: Empowering Procountor with Vaadin's efficiency and code reusability

Maxime Rauturier
On Mar 24, 2020 11:15:00 AM
Vaadin empowered Procountor Oy to seamlessly migrate from desktop to web in a mere 2 years by efficiently replacing Swing implementations and reusing 100% of their existing back-end code. Read on to learn more!

Procountor Oy is a leading Finnish provider of electronic financial management software and services. They provide their customers with financial management software and comprehensive additional services over the Internet through a single contract. Procountor software is already used by more than 10 000 SMEs and more than 400 accounting offices.

A friendly accounting software

Procountor is a user-friendly financial management software. The cloud-based software has been developed to meet the financial management needs of SMEs, covering tasks from the preparation and dispatch of sales invoices to ledger management, as well as handling the receipt, recycling, and payment of purchased invoices. It also includes payroll management, travel and expense claims, reporting, accounting, and much more. Procountor is the leading Finnish financial management software.


Migration from Swing to the Web with Vaadin

Procountor's migration started in 2013 from a Java Applet version of the application built in 2003. In the project, it was decided early on to re-use as much as possible of the existing code-base and maintain interoperability between the Swing implementation (earlier AWT) by hiding the components themselves from the development team under an abstraction layer of generic UI components. The current Vaadin-based solution then wrote implementations for the components that replaced the Swing implementations and by reusing 100% of the existing back-end.

When Apple dropped support for their own JVM, we had to start supporting a Swing version of our app as well. The abstraction layer made it a natural choice for us to do the same with Vaadin, knowing that the API was so similar to both Swing and AWT. And that's what we did. Quite successfully I might add.

- Lauri Lehtonen, CTO, Procountor

new-procountor-0Procountor decided on June 2018 to invest in building a new UI, due to the findings of their UX designers. The designers had noticed that it would be time to make some changes to stay up to date with the latest requirements and a slick UI and UX. Their main goal was to make it as user-centric as possible with a great design. After the summer vacations, the real work began.

In October the backlog was set up, and one of Vaadin's experts joined the team. Another Vaadin Expert did join the team at the beginning of 2019. In total the team was built of two Vaadin experts, two developers from Procountor, one QA person, one part-time UX designer, and Salli, who functioned as a UX designer and the product owner. The result was an up-to-date modern financial application with a great UI and UX.

I've been asked numerous times how did we succeed in a design-driven project this ambitious. And every time I answer I emphasize the importance of the professional Vaadin experts and Vaadin framework.

- Salli Tilkanen, Lead UX Designer


Why Vaadin?

Procountor evaluated a few different frameworks and approaches before going with Vaadin. Their main criteria were that they wanted a full Java solution, for which reason the main competitor ZK lost. Vaadin also offered hands-on help with a proof of concept and later on on-demand help.

Reusing a lot of the existing code also played a large role in going with Vaadin. The solution also leverages Vaadin Charts and TestBench for testing the application. Taking into account the vastness of the application and developing an existing version in parallel, going from desktop to web in 2 years is a large accomplishment!

You can take a look at the new Procountor and the latest features in a short intro video.