The present study shows the development of a thin client based enterprise application and the required technology research. The ultimate aim of the work is to develop a system that allows separate modules to connect to each other and so they can cover all areas which are needed by an ERP software. Accordingly, the thesis and the related work is is focused on the concepts which should be considered in completing this task. A part of the examined technologies is presented through a couple of reference applications.
The content of the paper will show the technological challenges to be faced before the beginning of the development of an SaaS based software, and what existing solutions are available. I will compare the opportunities offered by the Amazon AWS Elastic Beanstalk and the Google App Engine. After describing my choice between the two opportunities, I will introduce the Google Apps Marketplace service too.
The analysis of the technological concepts covers the OSGi framework specification which supports the development of modular applications, the highly efficient Spring, the Hibernate persistence provider, the Activiti business process management and the GWT and SmartGWT frameworks.
After discussing the technologies above, I will show the integration possibilities of Spring, Hibernate and GWT through 2 reference projects. Furthermore, we will learn about how Spring Roo can help us in the integration.
After drawing the conclusions based on the experience I have gained during the development of the sample projects, I will introduce some new concepts and technologies which I intend to use in the future work.
The outcome of the study is a basic CRM application and those concepts which are proven by tried examples and which I intend to follow during the further development of the application.