Page 1
Contents Introduction to the HR.net Enterprise Framework 1 HR.net Enterprise Administrator Console 3 HR.net Enterprise Document Explorer 4 HR.net Enterprise Server Application 4 HR.net Enterprise Database 4 Requirements 4 Database Server 4 Web Server 5 Application Server 5 Client Computers 5 Architecture of the HR.net Enterprise Framework 6 Application Structure 6 Clients Access 6 Web Layer 6 Business Façade Layer 7 Business Rules Layer 7 Data Access Layer 7 Windows Service Applications 7 HR.net Enterprise Database 7 Deployment of Layers 8 Hosting of Service Applications 8 Communication between Tiers 8 Network Load balancing 9 Interaction between HR.net Enterprise Application Elements 10 HR.net Enterprise Windows Authentication Web Application 11 HR.net Enterprise Web Server Application 12 Portal Community 12 Messaging Page 13 Workflow Forms 13 Screens 14 Document Manager 15 Workflow Service 15 Business Rules 15 Data Access Layer 16 HR Business Rules 16 Hardware Requirements 17 Server Hardware Specification 17 Web Server Specification 17 Database Server Specification 17 Client Requirements 18 To learn more about HR.net Enterprise go to www.vizual.co.uk
Page 1 Introduction to the HR.net Enterprise Framework Overview HR.net Enterprise is the next generation of enterprise Human Resources solution from Vizual Business Tools. The HR.net Enterprise Framework is an application framework developed by Vizual Business Tools and used to build the HR.net Enterprise Human Resources solution. The HR.net Enterprise Framework is core to the HR.net Enterprise Human Resources solution and is shipped to the customer as part of the HR.net Enterprise solution. This enables the customer to configure the HR.net Enterprise application to their exact requirements. The HR.net Enterprise Framework provides tools to create custom database structures, screens, workflow processes, custom business rules, security maintenance, web-based portal interface, ad-hoc reports and document management. HR.net Enterprise has multi-lingual capability and is built using a multi-tiered scalable architecture. All of these items form the essential elements required to construct any scalable, Web based, database driven application. The key objectives when designing HR.net Enterprise were as follows: Scalability the ability to support many tens of thousands of users and enable easy scaling out of the application when required. Flexibility enable the application to be customiz ed by the end-user or HR.net consultant to provide a solution that meets the client s exact requirements. Security to develop an application with robust security. Ease of Use ensure that the application can easily be used, even by novice users with limited training. Ease of Deployment When supporting thousands of users the application must be easily deployed on client workstations. In addition to this, any updates must be easily applied in the minimum of time. To address these objectives the Microsoft.NET framework was chosen as the underlying platform for the application. The Microsoft.NET framework is a software development and execution environment designed by Microsoft.The.NET framework consists of a set of programming resources that provide features such as automatic memory management, security management and run-time compilation specific to the Windows operating system on which the application is deployed. The Microsoft.NET framework provides a very secure and scalable platform for building Web and Windows Forms applications.
Technology HR.net Enterprise uses several key technologies within its architecture. The following is a list of the technologies used: Windows 2003/2008 Server This is the recommended operating system for HR.net Enterprise. SQL Server 2005/2008 Database Internet Information Services 6 (IIS 6) Web Server Visual Basic.NET Microsoft s next generation of programming language for developing.net applications. ASP.NET - Microsoft s object model for developing Web Browser applications. ADO.NET Microsoft s object model for database access. Web Services A method of enabling Web based applications to communicate with one another..net Remoting A Microsoft technology that enables communication between tiers enabling access to remote programming objects hosted on other servers. It enables applications to be distributed across computers and promotes scalability. Further Reading The following links provide further reading about the Microsoft.NET framework: http://www.microsoft.com/net/business/ Articles describing what Microsoft.NET means for businesses. http://www.microsoft.com/net/ Provides links to technical resources and case studies. http://msdn.microsoft.com/library/en-us/dndotnet/html/techmap_dotnet.asp A guide to getting started with Microsoft.NET technologies.
Page 3 Components of the HR.net Enterprise Framework HR.net Enterprise consists of the following main components: HR.net Enterprise Web Application This user interface is used to access the HR.net Enterprise human resources functionality. A rich user interface is provided using standard HTML to an Internet Explorer 6 or later Web Browser. Users can perform a variety of tasks including viewing and contributing to the company portal, retrieving and managing documents, viewing and maintaining Human Resources information and making workflow requests such as holiday requests, changes of personal details, timesheets or expenses. HR.net Enterprise Administrator Console The Administrator Console is an application used to configure HR.net Enterprise. It is designed as an System Administration tool and can be used remotely across the Internet or on a local network. System Administrators can perform a variety of functions, including: Modification of the HR.net Enterprise database structure Modification and creation of the screens displayed to end users of the HR.net Enterprise Web Application. Design of workflow processes. Management of user security. Modification of plug-in code that provides more advanced functionality. The graphical workflow design environment in HR.net Enterprise.
HR.net Enterprise Document Explorer The HR.net Enterprise Document Explorer is an application used to design reports, data exports, charts and mail merge templates. The documents and reports are made available to users through the HR.net Enterprise Web Browser application. The application can be used remotely across the Internet or on a local network. HR.net Enterprise Server Application The HR.net Enterprise Server Application consists of a number of scalable applications hosted on one or more Windows servers.the applications provide the logic, data access and user interface processing of the HR.net Enterprise Framework. HR.net Enterprise Database The HR.net Enterprise database contains both framework tables and custom tables created using the Admin Console. Multiple databases can be created and each database is independent of one another. At the time of login a user can specify which HR.net Enterprise database to connect to. In the Application Service Provider (ASP) or Software as a Service (SaaS) scenario where HR.net Enterprise is hosted for clients, each client has their own HR.net Enterprise database which has a unique name. Multiple HR.net Enterprise databases can be hosted on a single database server. Requirements HR.net Enterprise has been developed as a multi-tiered application. As a minimum requirement two servers are required; one server to host the Microsoft SQL Server database and a Web server hosting the HR.net Enterprise application. To provide additional scalability the application can be divided into Web and Application tiers and hosted on separate servers. The following is a list of the software requirements for each tier. The Web and Application tiers can be combined and hosted on a single server or hosted on multiple dedicated servers. Database Server Windows Server 2003/2008 fully service packed. SQL Server 2005/2008 Standard Edition fully service packed
Page 5 Web Server Windows Server 2003/2008 fully service packed. IIS 6 or above fully service packed. Microsoft.NET framework version 3.5. Application Server Windows Server 2000, Server 2003 or 2008 fully service packed. Microsoft.NET framework version 3.5. Microsoft Data Access Components 2.8. Client Computers User building: Client computers that are to run HR.net Enterprise Framework configuration applications (the Administrator Console and Document Explorer for system configuration, report writing etc.) require the Microsoft.NET framework version 3.5 to be installed. All other users: (HR managers, employees etc) Client computers that are to connect to the HR.net Enterprise Web Application must have Internet Explorer version 6 (IE6) with Service Pack 1 or later installed.they do not require the Microsoft.NET framework. From version 4 of HR.net Enterprise customers will be able to access HR.net using Firefox (version 3 or above). Please speak to your Vizual consultant or partner for more information.
Architecture of the HR.net Enterprise Framework Application Structure The HR.net Enterprise application is divided into several components as illustrated below: Clients Access Clients access HR.net Enterprise using either a Web Browser or using the Administrator Console or Document Explorer Windows Forms applications. Web Layer The Web layer provides access for clients to the application.the Web layer consists of two ASP.NET Web applications and two Web Services applications. The ASP.NET HR.net Enterprise Web Application provides the user experience in HTML. The HR.net Enterprise Windows Authentication Application authenticates users using Integrated Windows authentication. It enables users who have pre-authenticated themselves at the Windows Logon to login to HR.net Enterprise without the need to re-type their user credentials, thereby achieving single sign-on. This application is described in more another of the document in this series - HR.net Enterprise Security. The Web Service applications communicate with the Windows Forms Applications (Administrator Console and Document Explorer).
Page 7 Business Façade Layer The Business Façade layer provides interfaces to the Web layer and serves as an isolation layer, segregating the user interface from the implementation of the various business functions. All calls to database servers are made through this layer. Business Rules Layer The Business Rules layer contains the implementation of the various business rules and logic. Business rules do tasks such as the validation of employee information prior to saving a record and the validation of user credentials when logging on. Data Access Layer The Data Access layer provides data services to the Business Rules layer. It is responsible for communication with the Microsoft SQL Server 2005/2008 database. Windows Service Applications The Windows Service Applications are standalone applications that run as Windows Services. They increase scalability by processing jobs that are placed on queues by clients. For example, when a user requests a report that report is placed in a queue and the queue is processed by the Reporting Service. This leaves the client free to carry on working in the application without the need to wait until the report has been processed. HR.net Enterprise Database The HR.net Enterprise database is a Microsoft SQL Server 2005 or 2008 database. The database contains framework tables and custom tables created using the framework. HR.net Enterprise Framework tables have the prefix OC_ and stored procedures are given the prefix SPOC_ to distinguish them from other database objects.these must not be modified in any way by the customer. A single Microsoft SQL Server user account, HRNET by default, is used by the Data Access Layer to access data in a HR.net Enterprise database. This improves performance as database connection pooling is used.the MS SQL Server user account to be used to access the HR.net Enterprise database is specified in the HR.net Enterprise configuration files discussed later in this document. Extensive use of parameterized stored procedures is made to enhance performance.
Deployment of Layers The HR.net Enterprise architecture enables the Web, Business Rules\Data Access and Windows Service Applications layers to be deployed on a single server or separate servers. A low load implementation of HR.net Enterprise can be supported on a single Web server hosting all three layers together with a dedicated server hosting Microsoft SQL Server 2005 or 2008. As the number of concurrent users increase each layer can be scaled out and placed on a dedicated server. Although the Business Rules and Data Access layers can be deployed on separate servers, for performance reasons they should be deployed on the same server. Hosting of Service Applications HR.net Enterprise supports the hosting of individual Windows Service Applications on dedicated servers. If there is a high demand for reporting for example, the Reporting Service may be hosted on its own dedicated server. Any number of instances of each Windows Service Application may be deployed with each server hosting a single instance. For example, two servers may be used to run the Workflow Service Application each server running a single instance of the Workflow Service Application. Communication between Tiers When the Web and Business Rules\Data Access layers are hosted on separate servers,.net Remoting is used to enable communication between them. Remoting is a Microsoft technology that enables communication between tiers of an application. IP address restrictions can be used to ensure that requests to the Remoting server come from a known source. Remoting listens for requests on a given port and passes them to an application for processing. The configuration of Remoting is specified in a Remoting configuration file. The Remoting configuration file specifies the application that should be sent the incoming request and the transport and data format.tcp with binary format provides the best combination of performance (this is the default setting for HR.net Enterprise), but TCP/SOAP, HTTP/binary & HTTP/SOAP can be specified. Remoting can be hosted in two ways: 1 Remoting Windows Service Application A Windows Service application, called the HR.net Enterprise Remoting Service, hosts the Remoting and listens for requests on a specified port.this option provides the best performance. 2 Microsoft IIS Microsoft IIS can be used to listen for Remoting requests on port 80. SOAP or Binary format can be specified.
Page 9 Network Load Balancing Microsoft Windows Network Load Balancing is used to scale out the application. Each clustered server would contain a mirror image of the HR.net Enterprise applications. For example, the Web layer could be load balanced between two or more servers. Further details of Network Load Balancing can be found at: http://www.microsoft.com/technet/prodtechnol/windows2000serv/deploy/confeat/nlbovw.mspx
Interaction between HR.net Enterprise Application Elements The diagram below illustrates the interaction between the various elements of the HR.net Enterprise Framework:
Page 11 HR.net Enterprise Windows Authentication Web Application The HR.net Enterprise Windows Authentication Application authenticates users using Integrated Windows authentication. It enables users who have pre-authenticated themselves at the Windows Logon to login to HR.net Enterprise without the need to re-type their user credentials, thereby achieving single sign-on. Once a user has been authenticated they are issued with an ASP.NET Forms authentication cookie and re-directed to the HR.net Enterprise Web Application. The HR.net Enterprise Web Application checks for the presence of a Forms Authentication cookie, if one is not found then the user is redirected to the HR.net Enterprise Logon page.
HR.net Enterprise Web Server Application The HR.net Enterprise Web Application consists of a number of dynamically created Web pages such as communities which are accessed by users. Portal Community The Portal Community is the first page displayed to the user after logging into HR.net Enterprise. It contains a set of Add-Ins that link to the various areas of functionality within the HR.net Enterprise Web application such as documents, workflow forms and screens. It provides the main navigation page for the majority of users. Example user Community in HR.net Enterprise
Page 13 Messaging Page The Messaging page is used to service workflow requests: read, approve, access drafts and decline Workflow requests. When a Workflow request is accepted or declined by a user its status within the Workflow queue is updated and the Workflow Service Application processes the workflow instance. The main user task manager in HR.net Enterprise Workflow Forms Workflow Forms enable users to make requests such as holiday requests or expense claim requests. Workflow Forms are accessed from the Portal Community page. When a Workflow Form is submitted by a user a new instance of a Workflow is created and placed in the Workflow Queue table.the Workflow Service Application processes workflow instances the Workflow Queue table and interacts with other areas of the system as required.
Example workflow form in HR.net Enterprise Screens Screens are used to display data to the user and are created using the Screen Designer within the Administrator Console. Example Data Screen in HR.net Enterprise Screens are accessed from either a Screens Add-In on the Portal Community or the Navigator page. A user may, depending upon their security privileges, be able to make changes to the data and save the changes back to the database. When this occurs the Business Rules layer is called to save the changes.
Page 15 Document Manager The Document Manager page enables users to access documents, reports, mail merge templates, data exports and charts that are stored in the HR.net Enterprise database. When a user requests either a report, mail merge, data export or chart the request is placed on a queue in the HR.net Enterprise database and the appropriate Windows Service Application processes the queue, processes the requested document and sends it to the user by placing the finished document in the user s message box by writing to the messages table in the HR.net Enterprise database. Example Document Screen in HR.net Enterprise Workflow Service The Workflow Service is a Windows Service Application that reads workflow instances from a queue table in the HR.net Enterprise database. A Workflow process can call upon the services of any of the other Windows Service Applications such as the Reporting Service. A Workflow process can also write data to any of the custom tables (tables that have been created using the Administrator Console application) defined in the HR.net Enterprise database. Data is written to the database by calling the Business Rules class library. Business Rules The Business Rules is a Microsoft.NET class library which exposes a public set of methods that are called by the HR.net Enterprise Web Application and Administrator Console Web Service. The Business Rules class library implements the functionality of the HR.net Enterprise framework and performs tasks such as coordinating the writing of data to the HR.net Enterprise
database. At the time of writing this document the Business Rules class library consisted of sixty four classes, each one implementing a particular area of functionality such as document processing and enforcing of security. When data is saved to one of the custom tables in the HR.net Enterprise database the Business Rules class library is called, passing in the data to be saved. Before the data is saved to the database any custom business rules defined in Plug-Ins are called. The custom business rules can validate and manipulate the data before it is saved. If the data does not pass the validation defined in the custom business rules then a custom validation error is displayed to the user and the data is not saved to the database. Once the data has been saved to the database the data is checked to see if any of the data changes will cause an instance of a Workflow to be started.this is achieved using the Workflow Trigger functionality. Workflow Triggers are defined using the Administrator Console application. An example of a Workflow Trigger is track the end of probation for an employee. Five days before an employee reaches their end of probation their line manager should be informed by email. This is achieved by creating a workflow process and then defining, using a Workflow Trigger, which changes in data will trigger the workflow process. In this example a change in value of the ENDOFPROBATION column in PEOPLE table will trigger the creation of an instance of the End of Probation Workflow process.the instance of the Workflow Process will be queued and set to run five days before the employee s end of probation date. Following the triggering of Workflows the custom Plug-In Business Rules are called once again. An After Save method is called, executing the custom code defined for this method. Data Access Layer The Data Access Layer is called from the Business Rules layer and is responsible for communicating with the database. This enables the database to be decoupled from the Business Rules and enables future support for other databases by replacement of the Data Access Layer. HR Business Rules The HR Business Rules is a class library designed to be called from the Custom Plug-In Business Rules class library. It provides a library of Human Resource functions that: Assign, delete, update and perform year end processing for employee absence allowances. Calculate the time lost due to an absence by referencing an employee s work patterns. Expose a set of custom exceptions that are called from the custom business rules defined for absence. These routines have been placed in this library because they are complex and define functionality that will be common to the majority of customers. It is possible to customize the HR Business Rules class library for a particular customer, but these changes must be made by Vizual Business Tools as they own intellectual property to source code which forms part of the HR.net Enterprise Framework.
Page 17 Hardware Requirements This section details an example hardware specification and configuration required to support up to 1000 HR.net Enterprise users. Our technical staff are happy to discuss this specification further with you.the specification presented assumes that HR.net Enterprise will be configured to allow access via the Internet. HR.net Enterprise will be configured to enable access to the Web Module and Administration Console via the Internet.This enables remote self-service user access and remote administration of HR.net Enterprise. Server Hardware Specification A two server configuration is suggested. One server will host the ASP.Net web application and business logic tier (Web Server) and a second server will host the Microsoft SQL Server 2005/2008 database (Database Server). If failover is required, then a second Web Server can be added and clustered using Microsoft Windows 2003/2008 Network Load Balancing. Web Server Specification The Web Server will host the HR.net Enterprise ASP.Net web application and business logic tier. The recommended specification of this server is as follows: Item Requirement Operating System Windows Server 2003/2008 Standard Edition Processor Dual Intel Xeon 2.4GHz with 512K cache RAM 1GB Hard Drive 10GB minimum configured as RAID 5 Network Card 100Mbs minimum Database Server Specification The Database Server will host Microsoft SQL Server 2005/2008 and the HR.net Enterprise database.the recommended specification of this server is shown on the next page: Item Requirement Operating System Database Server Processor RAM Windows Server 2003/2008 Standard Edition Microsoft SQL Server 2005/2008 Single Processor License unlimited CAL Single Intel Xeon 3GHz with 1MB cache 1GBA Hard Drive 20GB minimum configured as RAID 5 Network Card 100Mbs minimum The World Wide Web Publishing service should be disabled to increase performance and minimize potential security risks.
Client Requirements Clients (for example HR users, employees, managers) accessing HR.net Enterprise Web application must have the following specification: Item Web Browser Operating System Bandwidth Requirement Internet Explorer Version 6 (IE 6) or above Any Windows operating system capable of running IE6 including Vista Minimum of 64kbs per user. 128kbs recommended. For clients wishing to run the HR.net Enterprise Administrator Console and/or Document Explorer (for authoring reports, mail merge templates and data export definitions) the following specification is required: Item Operating System.NET Framework Prerequisites Bandwidth Requirement Windows XP Professional/Vista Windows 2000 (all versions no Service Packs required) Windows NT 4.0 (all versions Service Pack 6a required).net Framework version 3.5 must be installed* Internet Explorer version 6 or above must be installed prior to installing the.net Framework. Microsoft Data Access Components version 2.8 (MDAC 2.8) Minimum of 64kbs per user. 128kbs recommended.
Other documents in this series: Security Overview Hosting Overview Vizual Business Tools plc 2008 This document is the property of Vizual Business Tools plc and the information contained herein is confidential. This document, either in whole or in part, must not be reproduced or disclosed to others or used for purposes other than that for which it has been supplied, without prior written permission from Vizual Business Tools plc, or, if any part hereof is furnished by virtue of a contract with a third party, as expressly authorized under that contract. Vizual Business Tools plc shall not be liable for any errors or omissions. Tel: 888.421.2004 Email: info@delphiaconsulting.com www.delphiaconsulting.com Delphia Consulting 445 King Avenue Columbus, OH 43201