EmployeePages Architecture

Architecture Java Version

TIMETOACT offers EmployeePages as a Lotus Domino and aJava and open standards based version. So EmployeePages is usable in a variety of different environments.
>> Demo Lotus Domino Version


As runtime environment a JEE application server and a relational database is needed. The using of approved frameworks like JPA or Spring supports a wide range of products, e.g. DB-server: Oracle, DB2, Microsoft SQL Server 2000, MySQL, PostreSQL, HypersonicSQL or as application server BEA WebLogic, IBM Websphere Application Server, JBoss, JonAS, Geronimo, SAP Web Application Server, GlassFish.

Standardized data base

Person- and organization data is managed by the HR-XML and HR-OCI standard. A wide range of producers offer interfaces to the standard, e.g. SAP and Peoplesoft. So data synchronization between other systems and EmployeePages is easier.

HR-XML
HR-XML offers a standardized and well-defined XML structure for displaying person data in enterprises. HR-XML is defined by the HR-XML Consortium and will be coordinated and standardized from one instance.

HR-OCI
EmployeePages not only display person data, also organization data can be visualized.The data base is also build up of the HR-OCI Standard. These XML data describes the organization structure as a tree. Connections between persons and organization units can be displayed in flexible and powerful way. HR-OCI is in the current version 6.0 by SAP and is used for the presentation interface of the organisation structure.

So the data model supports classical, hierarchical relationships (e.g. reports to, managed by) and also relationships between persons (e.g. is colleague, is assistant, is friend). Also the description of groups, e.g. project teams or workgroups and concerning relationships to persons and organization units is supported.

Architecture

To ensure high stability and flexibility, EmployeePages is a classical Multi-Tier-Application. The three application layer are as far as possible uncoupled, to enable a logical and a physical division. In terms of a linear architecture the three layer only grab unidirectional and linear to other layer, no layer will be 'skipped'.




The decoupling concerns not only to the communication between the layers, it also concerns to the used data model in every layer (Java class hierarchy), Exceptions and Resources. The wiring of the tiers will be done decentralized by the spring application context, that injects all used services (Dependencies).

Client Tier

The Client Tier is implemented as a Rich Internet Applications with the Google Web Toolkit (GWT) and so you get the impression of a application used in the Browser instead of a webpage reloading after every click. Standards like HTML and CSS allow the flexible integration of the layout to the requirements of the corporate design of the enterprise. Additionally technologies like AJAX and JavaScript are used to enhance the layout and functionality with Web 2.0 features. Data will be loaded in the backend and prepared for user actions. This ensures high performance for the user-interface.

Communication with the server is implemented with the RPC mechanism of the GWT, which uses completely AJAX to communicate with the server. So the website will only load one time and after that every call will be done with AJAX, which gives you a very performant interface. For all that, also older Web Browsers e.g. Internet Explorer 6 are supported.

In the Client Tier every layout will be generated, concerning to the MVP (Model View Presenter) Pattern, before it will be filled with data, so a consequent reuse of UI elements is possible.

Additionally to the GWT the Spring Security Project is integrated and offers a consequent realization of security through all layers.



Business Layer

The Business Layer contains all functional logic of the application, e.g. the quicksearch or the extended search of all attributes like surname, prename etc., but also queries for organizational data. The Business Tier provides these logic with a well-defined interface.

The functional logic contains complete business transaction, that should execute in one transaction. The transactionsecurity is guaranteed by the service-implementation.

Internal the Business Tier works with an HR-XML compatible Java-Class-Structure for person data and with HR-OCI for organisational data. So the EmployeePages provide a native interface to these standards.

Another task of the Business Tier is the correct transformation of the data from the Data Tier into the Business Model (HR-XML / HR-OCI).

Persistence Layer

The Persistence Layer contains all persistence logic, that means all know how about grabbing the data from datasource. This layer provides its own specialized methods based on its own database model. So the Persistence Layer doesn't need any knowledge about the Business Model /HR-XML and the concrete methods.

Interfaces

EmployeePages provide different possibilities to connect to other datasources or to synchronize data. CSV-files can be used for data comparison, also a directory server can be used. EmployeePages are also compatible with the HR-OCI Interface from SAP.


LDAP Connection

An existing LDAP-Connection can be used for authentication and authorization. Also an exchange of person data and organization data with this interface is possible.

SAP-Connection

The Connection with SAP can be done with the HR-OCI 6.0 interface. This also allows the description of organizational data with the EmployeePages. HR-OCI exhausts in the SAP-System the functionalities from the Object and Data Providers (OADP) and SAP-Query and extracts data from the Organisationmanagement and the SAP HR System. With the new HR-OCI 6.0 Interface the compatibility to SAP Systems for longer time is given.

List- and Detailexport
The Client offers the possibility to export the current view to a file, e.g. Excel Sheet or vCard file. So lists of business units or search results are easily created . With the vCard also a synchronization with a local address book like outlook is possible.