Flexible Solutions on Oracle Middleware
- Comprehensive business solutions
- Area solutions with flexible customization options
Client Side of the Alerant Foundation Framework
The technological base of the Alerant web GUI developer framework is the JSF Framework, a part of J EE standardized by Sun. This enables the development of modern, component-based web interfaces.
As the basic JSF components often do not satisfy the sophisticated demands of the clients, therefore the selection of an Ajax-based framework was needed which is built on JSF. ICEFaces contains standard JSF components implemented the Ajax framework, which provides a full solution for the challenges encountered by modern web-based applications. It enables the creation of interactive user interfaces, which almost measure up to the features provided by applications created by thick client technology.
Spring Web Flow is applied for applications requiring sophisticated pageflow logic. Spring Web Flow technology embedded to the JSF Framework makes the work of developers more effective, as it makes reusing of pageflows possible by defining subflows, and it also provides a wider range of possibilities for choosing the range of data used behind the screens. This shortens the development of complex wizard-like screens and fewer unique solutions would be required.
A custom validation framework, based on Apache Commons Validation package, is used for checking the integrity of data entered by users. We use the framework to make the management of controlling rules declarative, which in turn makes the rules reusable in the various layer of the architecture of the application. This solution accelerates development and management of validation rules.
Realizing inter-portlet communication requires the largest amount of care and resources when creating portlet-based user interfaces. ICEFaces Ajax Push technology is used for this task, and Oracle Coherence Grid solution is used for ensuring the storage and forwarding of data handled during communication between portlet applications, even if they are running in distributed environments.
Strict rules are set for software project structures in our developments. Apache Maven supports the build life cycles of projects. We are using a predefined standard library structure by capitalizing on the features of Apache Maven, and thereby creating a uniform structure for our projects. Maven archetypes were created to ensure uniformity, which reduced the configuration tasks required for starting projects to a minimum.
Procedure sets and UI components that were developed in house make the work of developers more effective in the framework. Our Facelet-based composite components primarily make the creation of web forms easier. These tasks usually consist of asking a question from the user who then answers the question. A tooltip would assist the user in understanding the question if needed, and the answer is checked. An error message appears on the user interface if the check fails. Realization of this task normally requires the use of several basic components, and the developer is supposed to type them again and again for each question. Our composite components cover this entire structure in one single component, in a reusable manner.
Different sector-specific composite component packages were created for financial institutions and telecommunication companies. For example, in the projects done for banks our developer does not have to deal with the realization of the masking and verification of the input field when asking for a bank account number, as the component created for this already contains this functionality. Additionally, composite components provide an effective assistance for realizing a uniform user interface.
A toolkit is provided to developers for testing Ajax-based web user interfaces. Selenium is used for functional testing purposes, and the creation of test scripts is assisted by developer documentation and sample scripts. A complex test package has been compiled for doing performance tests. This package is based on the Apache JMeter toolkit and our own developer framework. This makes the testing of user interfaces using complex Ajax Push technology faster and simpler.
Standard tools are used for checking the quality of developments. FindBug and PMD are used to filter programmer errors, which are regularly used to check the quality of the code. CheckStyle is used for supporting a uniform style and code formatting. The training time of new developers can be reduced by using the latter, by using source codes formatted by an easy-to-understand, uniform style.