This invention relates generally to data modeling, and more particularly to modeling of employee performance result data.
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings hereto: Copyright© 2004, Siebel Systems, Inc., All Rights Reserved.
Employee Relationship Management (ERM) is a critical business process that enables a company's employees to do their job better. In particular, ERM allows a company to better manage relationships with its workforce and to improve the working practices and effectiveness of the workforce. Typically, an ERM system of a company maintains a variety of information associated with employees, including information identifying employee performance results. An employee performance result may be provided by an employee's supervisor or peer and may need to be accessible to human resources, the employee, and higher management.
Currently, no software product exists that allows various systems maintained by an organization (e.g., a Human Resource Management System (HRMS), an ERM, etc.) to share data on employee performance results. This creates difficulties in collaboration between different divisions of an organization and impedes successful management of relationships with employees within the organization.
The present invention relates to various aspects for modeling employee performance result data.
According to one aspect of the present invention, an employee performance result class is defined that represents an employee performance result and identifies relationships of an employee performance result with various entities related to the employee performance result.
The present invention will be understood more fully from the detailed description given below and from the accompanying drawings of various embodiments of the invention, which, however, should not be taken to limit the invention to the specific embodiments, but are for explanation and understanding only.
In the following description, numerous details are set forth. It will be apparent, however, to one skilled in the art, that the present invention may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the present invention.
Some portions of the detailed descriptions which follow are presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as “processing” or “computing” or “calculating” or “determining” or “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
The present invention also relates to apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method steps. The required structure for a variety of these systems will appear from the description below. In addition, the present invention is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the invention as described herein.
A machine-readable medium includes any mechanism for storing information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium includes read only memory (“ROM”); random access memory (“RAM”); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, and acoustical.
A data model that provides a common data structure to represent an employee performance result and allows for customization of the data model in a manner that facilitates upgrading of the data model is described. An employee performance result represents an evaluation of performance of an employee, a consultant, or any other individual performing work for a company. An employee performance result may be based on input provided by a supervisor, a peer, an employee himself, a client, or any combination of these and other entities. Employee performance result data may be used by various applications and systems within the company (e.g., a Human Resource Management System (HRM) system, an Employee Relationship Management (ERM) system, custom software applications, etc.). In addition, employee performance result data may be used by applications and systems of outside entities (e.g., the company's client for which an employee performs a particular task, a consulting business whose employee provides service for the company, etc.).
In one embodiment, the employee performance result data model defines relationships of an employee performance result with various entities related to the employee performance result. These entities may include, for example, a related employee (an employee associated with the employee performance result), related reviews (reviews of the employee's performance), and a related time period (a time period associated with the employee performance result).
The data model models the relationships as attributes associated with an employee performance result. In one embodiment, the employee performance result data model is specified using a schema language such as XML Schema.
In one embodiment, the data model defines a hierarchy of the data elements for describing an employee performance result. The data model may define data elements that are complex. A complex data element is a data element that comprises data sub-elements. For example, an address data element may be a complex data element that includes street, city, and state data sub-elements. The data model may specify custom data elements at various places within the hierarchy of data elements. A custom data element is of a custom data element type. The custom data element type initially defines no data elements. The data model can be customized by defining custom data elements that are specific to different applications or systems. Because the custom data elements are defined at various places within the hierarchy, the customizations of the data model can be associated with related data elements within the hierarchy.
Thus, the employee performance result data model provides a common data structure for interfacing employee performance result data by various divisions within an organization or multiple organizations, while allowing for simplified customization of this data structure by individual divisions and/or companies in accordance with their needs. Hence, the employee performance result data model allows companies to maintain, support and upgrade only a single data model and facilitates efficient data transformations and mappings.
In one embodiment, the employee performance result data model 104 defines a hierarchical data structure representing an employee performance result. This hierarchical data structure includes data elements that are common to all business systems 100. In addition, the hierarchical data structure includes custom data elements at various levels of the hierarchy to define data fields that are specific to each business system 100, thus providing for easy customization of the employee performance result data model 104.
In one embodiment, the universal business application network 102 uses the XML and Web services standards.
The transport layer 216 is a mechanism through which business information is exchanged between the business systems 204 and the business integration server 200. Each business system 204 may have an adapter 202 that is appropriate to the protocol of the transport layer. For example, the transport mechanism may use communications protocols such as TCP/IP. The transport layer 216 may provide a messaging service for queuing, for guaranteeing delivery of messages, and for handling both synchronous and asynchronous messaging. The adapters 202 relay events from the business systems 204 to the integration server 200 and can import configurations of the business systems 204 into the integration server 200. In addition, the universal business application network may include encryption and authentication mechanisms to ensure the security and integrity of the information. For example, authentication will help ensure that a business process is accessing the intended business system, rather than an impostor business system.
The integration server 200 stores the representation of a data model 210 (e.g., in an XML schema file) that contains the definition of an employee performance result class. The employee performance result class represents an employee performance result and defines relationships of the employee performance result with various related entities.
The transformation store 212 contains a model data definition tool (e.g., an XML schema definition tool) to create a definition of the data model 210 (e.g., in an XML schema file) and to customize the data model 210 when requested by adding custom data fields to the data model 210. The transformation store 212 also contains transformations for transforming information received from the business systems 204 to the format used by the data model 210, and vice versa. The transformations may be specified as a computer program, an XML Stylesheet Language Transform (XSLT), etc.
The business process store 208 contains the business processes that have been defined. A business process may be specified as a script, a process flow, an executable program, etc. In one embodiment, the business processes are defined using the Web Services Flow Language (OOWSFL). The business processes orchestrate a sequence of steps across multiple applications provided by the business systems 204 to achieve a business objective.
The business process controller 206 coordinates the execution of the business processes. The business process controller 206 may instantiate the employee performance result class and invoke functions of the resulting object in accordance with the various business processes. The business process controller 206 may also initiate the execution of business processes based on predefined conditions and events. For example, the business process controller 206 may launch a certain business process each time an alert is received. Although not shown, the business integration network may provide a standard library of business routines that may be invoked by the business processes. The integration server 200 may also include various tools to facilitate the development of business processes. These tools may aid in the development of transformations, the defining of classes, and the writing of process flows.
Referring to
Next, processing logic transforms the employee performance result data into a common format provided by the employee performance result class (processing block 304). The employee performance result class defines relationships of an employee performance result with various entities related to the employee performance result. These entities may include, for example, a related employee (an employee associated with the employee performance result), related reviews (reviews of the employee's performance), and a related time period (a time period associated with the employee performance result).
Further, processing logic transforms the employee performance result data from the common format into a format recognizable by the target system (processing block 306) and sends the resulting employee performance result data to the target system (processing block 308).
Thus, according to the process 300, the sharing of employee performance result data between two systems does not require data mapping between the data format of the source application and the data format of the target application. Instead, the mapping is performed between each system and the common data model. Furthermore, the process 300 allows various divisions and/or organizations to share the employee performance result data in a manner that allows access to up-to-date employee performance result information by all participating parties, thus improving employee relationship management within the organization.
As discussed above, in one embodiment, each class of the employee performance result data model can be customized for a specific business system or application.
At processing block 402, processing logic retrieves a data definition schema for the employee performance result class. The schema may be an XML schema file that includes a custom data element of a type that is defined in another file.
At processing block 404, processing logic retrieves the custom data schema for the types of custom data. The schema may be stored in an XML schema file that contains the definition for each type of custom data.
Next, processing logic opens the custom data schema (processing block 406) and locates the tags relating to the custom data type of interest (processing block 408).
Further, processing logic adds the custom data elements to the located tags (processing block 410) and closes the custom data schema with the newly defined data elements (processing block 412).
One embodiment of a common data model representing an employee performance result will now be described in more detail in conjunction with
The id data element 502 may be a unique identifier of an employee's performance result. The baseData data element 504 contains general information pertaining to the employee performance result as will be discussed in more detail below in conjunction with
The nextReviewData data element 602 specifies the date of the next review. The previousReviewDate data element 604 specifies the date of a previous review.
The primaryRatingFlag data element 702 contains a flag indicating which result is the primary score for this period. If the primaryRatingFlag data element 702 indicates that the result is not the primary score for this period, then the result represents a detail that supports the primary score. The ratingScaleCode data element 704 identifies the scale used in rating (e.g., overall performance scale, semi-annual review scale, etc.). The ratingScore data element 706 identifies the final score obtained in the review. The ratingTypeCode data element 708 identifies the type of rating (e.g., annual review, peer review, self-assessment, etc.). The reviewDate data element 710 identifies the date when review was completed. The listOfRelatedReviewer data element 712 identifies a reviewer who performed the review. The customData data element 714 initially contains no data elements, but custom data elements can be added by defining data elements in the EmployeePerformanceResultCustomDataType.
The computer system 1000 includes a processor 1002, a main memory 1004 and a static memory 1006, which communicate with each other via a bus 1508. The computer system 1000 may further include a video display unit 1010 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 1000 also includes an alpha-numeric input device 1012 (e.g., a keyboard), a cursor control device 1014 (e.g., a mouse), a disk drive unit 1016, a signal generation device 1020 (e.g., a speaker) and a network interface device 1022.
The disk drive unit 1016 includes a computer-readable medium 1024 on which is stored a set of instructions (i.e., software) 1026 embodying any one, or all, of the methodologies described above. The software 1026 is also shown to reside, completely or at least partially, within the main memory 1004 and/or within the processor 1002. The software 1026 may further be transmitted or received via the network interface device 1022. For the purposes of this specification, the term “computer-readable medium” shall be taken to include any medium that is capable of storing or encoding a sequence of instructions for execution by the computer and that cause the computer to perform any one of the methodologies of the present invention. The term “computer-readable medium” shall accordingly be taken to included, but not be limited to, solid-state memories, optical and magnetic disks, and carrier wave signals.
Whereas many alterations and modifications of the present invention will no doubt become apparent to a person of ordinary skill in the art after having read the foregoing description, it is to be understood that any particular embodiment shown and described by way of illustration is in no way intended to be considered limiting. Therefore, references to details of various embodiments are not intended to limit the scope of the claims which in themselves recite only those features regarded as essential to the invention.
Number | Name | Date | Kind |
---|---|---|---|
4714995 | Materna et al. | Dec 1987 | A |
5220500 | Baird et al. | Jun 1993 | A |
5311438 | Sellers et al. | May 1994 | A |
5349643 | Cox et al. | Sep 1994 | A |
5416917 | Adair et al. | May 1995 | A |
5446880 | Balgeman et al. | Aug 1995 | A |
5566332 | Adair et al. | Oct 1996 | A |
5646862 | Jolliffe et al. | Jul 1997 | A |
5699527 | Davidson | Dec 1997 | A |
5708828 | Coleman | Jan 1998 | A |
5724575 | Hoover et al. | Mar 1998 | A |
5727158 | Bouziane et al. | Mar 1998 | A |
5742588 | Thornberg et al. | Apr 1998 | A |
5758355 | Buchanan | May 1998 | A |
5806075 | Jain et al. | Sep 1998 | A |
5930764 | Melchione et al. | Jul 1999 | A |
5953710 | Fleming | Sep 1999 | A |
5970490 | Morgenstern | Oct 1999 | A |
6032136 | Brake et al. | Feb 2000 | A |
6053947 | Parson | Apr 2000 | A |
6178418 | Singer | Jan 2001 | B1 |
6216130 | Hougaard et al. | Apr 2001 | B1 |
6226649 | Bodamer et al. | May 2001 | B1 |
6233566 | Levine et al. | May 2001 | B1 |
6236997 | Bodamer et al. | May 2001 | B1 |
6275812 | Haq et al. | Aug 2001 | B1 |
6336124 | Alam et al. | Jan 2002 | B1 |
6341289 | Burroughs et al. | Jan 2002 | B1 |
6343275 | Wong | Jan 2002 | B1 |
6377952 | Inohara et al. | Apr 2002 | B1 |
6385620 | Kurzius et al. | May 2002 | B1 |
6434567 | De La Huerga | Aug 2002 | B1 |
6463430 | Brady et al. | Oct 2002 | B1 |
6556950 | Schwenke et al. | Apr 2003 | B1 |
6591260 | Schwarzhoff et al. | Jul 2003 | B1 |
6631382 | Kouchi et al. | Oct 2003 | B1 |
6668253 | Thompson et al. | Dec 2003 | B1 |
6754679 | Oheda | Jun 2004 | B2 |
6778651 | Jost et al. | Aug 2004 | B1 |
6792431 | Tamboli et al. | Sep 2004 | B2 |
6826542 | Virgin et al. | Nov 2004 | B1 |
6826568 | Bernstein et al. | Nov 2004 | B2 |
6828963 | Rappoport | Dec 2004 | B1 |
6883004 | Bahl et al. | Apr 2005 | B2 |
6889260 | Hughes | May 2005 | B1 |
6898783 | Gupta et al. | May 2005 | B1 |
6912719 | Elderon et al. | Jun 2005 | B2 |
6944514 | Matheson | Sep 2005 | B1 |
6947947 | Block et al. | Sep 2005 | B2 |
6996776 | Makely et al. | Feb 2006 | B1 |
7043687 | Knauss et al. | May 2006 | B2 |
7099350 | Peterson | Aug 2006 | B2 |
7111010 | Chen | Sep 2006 | B2 |
7111077 | Starkovich et al. | Sep 2006 | B1 |
7124112 | Guyan et al. | Oct 2006 | B1 |
7133882 | Pringle et al. | Nov 2006 | B1 |
7139766 | Thomson et al. | Nov 2006 | B2 |
7143100 | Carlson et al. | Nov 2006 | B2 |
7257594 | Tamboli et al. | Aug 2007 | B2 |
7287041 | Barnes-Leon et al. | Oct 2007 | B2 |
7337192 | Stark et al. | Feb 2008 | B2 |
20010011245 | Duhon | Aug 2001 | A1 |
20010051907 | Kumar et al. | Dec 2001 | A1 |
20020007343 | Oyama et al. | Jan 2002 | A1 |
20020019765 | Mann et al. | Feb 2002 | A1 |
20020023004 | Hollander et al. | Feb 2002 | A1 |
20020035431 | Ell | Mar 2002 | A1 |
20020035488 | Aquila et al. | Mar 2002 | A1 |
20020040313 | Hunter et al. | Apr 2002 | A1 |
20020040339 | Dhar et al. | Apr 2002 | A1 |
20020085020 | Carroll, Jr. | Jul 2002 | A1 |
20020095456 | Wensheng | Jul 2002 | A1 |
20020116234 | Nagasawa | Aug 2002 | A1 |
20020123983 | Riley et al. | Sep 2002 | A1 |
20020138532 | Chandra et al. | Sep 2002 | A1 |
20020169867 | Mann et al. | Nov 2002 | A1 |
20020174417 | Sijacic et al. | Nov 2002 | A1 |
20020178077 | Katz et al. | Nov 2002 | A1 |
20020184085 | Lindia et al. | Dec 2002 | A1 |
20020184148 | Kahn et al. | Dec 2002 | A1 |
20020188538 | Robertson et al. | Dec 2002 | A1 |
20030014617 | Tamboli et al. | Jan 2003 | A1 |
20030023580 | Braud et al. | Jan 2003 | A1 |
20030071852 | Stimac | Apr 2003 | A1 |
20030097642 | Arai et al. | May 2003 | A1 |
20030131018 | Godoy et al. | Jul 2003 | A1 |
20030163597 | Hellman et al. | Aug 2003 | A1 |
20030163603 | Fry et al. | Aug 2003 | A1 |
20030229529 | Mui et al. | Dec 2003 | A1 |
20040015515 | Beisiegel et al. | Jan 2004 | A1 |
20040034661 | Barron et al. | Feb 2004 | A1 |
20040039576 | He et al. | Feb 2004 | A1 |
20040093351 | Lee et al. | May 2004 | A1 |
20040122826 | Mackie | Jun 2004 | A1 |
20040128188 | Leither et al. | Jul 2004 | A1 |
20040162774 | Del Ray et al. | Aug 2004 | A1 |
20040199536 | Barnes-Leon et al. | Oct 2004 | A1 |
20040215503 | Allpress et al. | Oct 2004 | A1 |
20040230605 | Tamboli et al. | Nov 2004 | A1 |
20040249854 | Barnes-Leon et al. | Dec 2004 | A1 |
20050021391 | Lu et al. | Jan 2005 | A1 |
20050091249 | Hanson et al. | Apr 2005 | A1 |
20050160361 | Young | Jul 2005 | A1 |
20050197880 | Walsh et al. | Sep 2005 | A1 |
20060271446 | Barnes-Leon et al. | Nov 2006 | A1 |
20070033531 | Marsh | Feb 2007 | A1 |
20070203710 | Habichler et al. | Aug 2007 | A1 |
20070208577 | Barnes-Leon et al. | Sep 2007 | A1 |
20070208878 | Barnes-Leon et al. | Sep 2007 | A1 |
20070214020 | Srinivasan et al. | Sep 2007 | A1 |
20070214063 | Kahlon et al. | Sep 2007 | A1 |
20070214064 | Kahlon et al. | Sep 2007 | A1 |
20070214065 | Kahlon et al. | Sep 2007 | A1 |
20070226037 | Garg et al. | Sep 2007 | A1 |
20070226049 | Muralitharan et al. | Sep 2007 | A1 |
20070226093 | Chan et al. | Sep 2007 | A1 |
20070250408 | Leon et al. | Oct 2007 | A1 |
20070250419 | Kumar et al. | Oct 2007 | A1 |
20070265944 | Catahan, Jr. et al. | Nov 2007 | A1 |
Number | Date | Country |
---|---|---|
101 50 391 | May 2002 | DE |
2001 256308 | Sep 2001 | JP |
WO 0143031 | Jun 2001 | WO |
WO 0188759 | Nov 2001 | WO |
WO 03003641 | Jan 2003 | WO |
Number | Date | Country | |
---|---|---|---|
20070226049 A1 | Sep 2007 | US |