Migration from a CRM desktop application to a Java web application

OData support
Imre Gábor
Department of Automation and Applied Informatics

Small firms often develop internal software when the existing commercial and open source solutions do not always correspond to their ideas, their needs.

However, such a system - due to the change of the company and / or the passage of time - needs continuous development; it may even need to be redesigned, especially if the initial technology was not carefully selected.

My task is such a partial transformation of an old legacy CRM system to a modern web application based on the Java platform.

Generally, a full software rewrite is to be avoided, but in this case it is justified for several reasons: on the one hand the product support life cycle of the frontend runtime has come to an end, on the other hand in case of company growth, it is useful for staff on location, if they can gain access to the system from a distance, and thirdly, due to a company profile change, the importance and relevance of some parts of the application has changed.

My task is to identify and assess the important, currently used modules of the application and to design and implement a web application that allows employees to remotely access the new system and make it easier for future developments.

For my thesis, I analyzed the CRM System of a small Hungarian company, based on this, I chose, which modules are required for a web version, I designed and implemented the server and client side, I analyzed the existing user and authorization management, which I used to create it for the web version. I wrote unit tests and I wrote a testing framework with Selenium along with smoke tests, which allows the entire web application can be tested, once it is competed for all the modules.

The thesis describes the current CRM application architecture, the functions of the relevant modules. Then I would briefly describe the choice of technologies, and the development tools used. I present the implemented application architecture, modules, rights management and security, and introduce the testing and the test framework. The thesis closes at the end with the summary.


Please sign in to download the files of this thesis.