Iflexion’s main task was to develop a solution based on the existing open-source modules. The Customer’s main requirements were: support of custom user-interface themes, easily changeable portal layout and general user friendliness.
When a beta-testing of the product began, the Customer requested that we migrated the whole project to a newly released version of Liferay platform (4.2.1). So, our development team planned, organized and performed the migration.
The Customer was going to use a monthly subscription fee as a method of payment for the portal’s services. The subscription has to be extendable (either automatically or manually). A few problems arose while adding new payment providers (e.g. PayPal or PayEx) because of some out-of-box solutions did not provide all the features necessary to meet the Customer’s needs. These problems were solved by adding extra scheduled services that were responsible for subscription management.
The development process was preceded by an in-depth investigation of the Customers business-model and business processes. Our technical experts performed a separate research to define the most suit able technologies for solution implementation. Functional specification for the future portlets was created in close contact with the Customer’s personnel (communication was organized via email and phone).
The general idea was to design the portal as a set of separate JSR-168 portlets that will run on a LifeRay engine. Such a design appeared to be the most suitable for the Customer’s requirements. Technical design included a number of third-party modules and some modern trends in Java development were taken into consideration.
Testing of the application was organized simultaneously with the development process by an independent QA team. They worked closely with the engineers engaged in development, so that the QA specialists always had access to the latest information on solution.
The portal is integrated with two major payment providers (Verisign and PayPal) plus lately additional integration was performed with PayEx – a Swedish payment provider.
All the stages of the development process – from initial investigation and creation of specification to the final product implementation and QA were performed exactly according to the approved schedule.
The developed application represents a web-portal where the web-module is built on Liferay Portal platform and the Mail module – on Zimba platform on the server side. The separate portlets developed for the system are put together by the Liferay Portal. Zimba is a mail server responsible for storing users’ mailboxes, routing emails and providing access for the back-end users.
A “three-tier” model (Model-View-Controller) was used while designing the solution architecture. The three layers of the system are the business logic (server side classes, which encapsulates business rules of the product), the presentation layer (based on JSP 2.0 pages), and the persistence (database) layer. The stability and flexibility of the developed application is ensured by the usage of highly-efficient open source libraries (such as Spring or Hibernate).