DirXML brokers the exchange of information held in the Workforce Tree through rules and style sheets that support business policy and processes.
The policies provided by the default installation of Novell Nsure Resources are as follows:
User Object Names: The User object name is generated by prepending the first letter of the person's first name to the person's last name.
For example, John Brown's User object name would be JBROWN. If another JBROWN user object already exists, John's User object would instead be named JBROWN1. This policy is defined in the HR driver's Create style sheet.
Passwords: Each user object is assigned an initial password with the value of their last name.
John Brown's initial password would be BROWN. The HR driver's Create style sheet uses the value of the Surname attribute to create this password.
Group Membership: Active users are added to either the Employee Group or the Manager Group.
The HR driver determines where to assign the user to based on the value of the user's Position or isManager attribute. If this value is changed, the user's Group Membership will be changed accordingly.
If John Brown enters the system as an employee with no direct reports, he is included in the Employee Group. When John is assigned a management position, the driver will change John's group membership so that he is no longer part of the Employee Group but is part of the Manager Group. This process is handled by the HR driver's CommandTransform style sheet.
When an employee is no longer active, the employee is removed from both groups.
Placement: Users will be placed in either the Active or Inactive container inside YourOrganization/Users.
Using logic defined in its Placement rule, the HR driver checks the status of the employee in the HR system to determine which container the User object is placed in. If the user's status changes, the driver will move the user to the appropriate container.
Account Name: The account name for objects in the messaging systems and in the account systems is generated using the same logic used to generate the User object in the Workforce Tree: first letter of the first name plus last name. This logic is defined in the Create style sheet for the account driver.
E-Mail Addresses: An e-mail address is generated by the messaging system. This address is published back to the Workforce Tree for access by other DirXML drivers.
E-Mail Distribution Lists: Users are added to either a Managers or an Employees e-mail distribution list.
When the isManager attribute for a user object changes, the messaging driver revises the distribution lists as appropriate.
Sample Scenario
The sections that follow explain how the DirXML drivers work to process common business events. These examples are based on a hypothetical setup that includes PeopleSoft, NT, and Exchange 5.5 and a hypothetical user, John Brown, a new engineering manager.
Employee is Hired
When John is hired, an HR Consultant enters John's data in PeopleSoft. The DirXML drivers respond as follows:
The PeopleSoft driver ensures that sufficient data has been provided to allow John's User object to be created; the minimum data required is a first name and a last name.
The driver verifies that John doesn't already exist in the Workforce Tree and then generates additional data including organizational hierarchy information. Organizational hierarchy is defined by the values of two User object attributes: manager and directReports. The driver populates these two attributes as well as John's Group Membership attribute, indicating that he is part of the Managers group. The driver then publishes the new data to the Workforce Tree.
The NT Domain driver is notified of the Add and creates an NT Domain account for John. When the NT account is created, the Preferred Name attribute is generated and published back to the Workforce Tree.
The Preferred Name attribute triggers the creation of an e-mail account and e-mail ID for John in Exchange. The Exchange driver publishes the e-mail ID back to the Workforce Tree and also adds John to the Managers e-mail group.
The PeopleSoft driver subscribes to Workforce Tree attribute for e-mail address and will update this field in its data tables.
Employee Takes a Temporary Leave of Absence
An HR Consultant changes John's status in PeopleSoft to Inactive at the beginning of the leave period. The DirXML drivers respond as follows:
The PeopleSoft driver moves John's User object to the Inactive container in the Workforce Tree. The driver also removes John from the Managers group and clears organizational relationships. The Login Disabled attribute is set to True. This updated data is published to the Workforce Tree.
NOTE: Whenever a user's data is updated, attributes that reflect organizational hierarchy are verified and updated if necessary. This check happens for the employee, his manager, and his direct reports. So, when John's manager attribute is cleared, the driver also removes John from his manager's directReports attribute. The manager attribute for any employees that were reporting to John will be cleared because John is no longer managing that group.
The NT Domain driver is notified of the event and disables John's NT account.
The Exchange driver disables John's mailbox and removes him from the Managers e-mail list.
Upon return from leave, John's PeopleSoft status is changed to Active. The Login Disabled attribute is set to False. The PeopleSoft driver returns him to the Managers Group and re-establishes organizational relationships. This updated data is published to the Workforce Tree.
John's User object is moved to the Active container in the Workforce Tree.
The NT Domain driver receives the event and enables John's NT account.
The Exchange driver enables John's mailbox and adds him to the Managers e-mail list.
Employee Updates Personal Information
Using Novell eGuideTM, John changes his cell phone number. This data change is recorded in the Workforce Tree. The DirXML drivers respond as follows:
The PeopleSoft driver subscribes to the eDirectory Mobile attribute and updates its data stores to reflect the changed number.
The NT driver does not track cell phone numbers and is unaffected by John's data change.
The Exchange driver subscribes to the eDirectory Mobile attribute and updates its data stores to reflect the changed number.
Employee is Reassigned
John accepts a new position in the company and in doing so relocates to a new city and reports to a different manager. An HR Consultant updates the PeopleSoft records to reflect the changes. The DirXML drivers respond as follows:
The PeopleSoft driver changes the value of John's manager attribute, removes John from his previous manager's directReports attribute, and adds John to his new manager's directReports attribute. User objects for people who reported to John are updated; John is removed from their manager attribute.
The PeopleSoft driver publishes John's updated user information, including his new office location, to the Workforce Tree.
The NT driver does not subscribe to the affected attributes of the User object and is not affected by these changes.
The Exchange driver subscribes to several attributes that have changed, such as John's fax number, office phone number, office location, etc., and updates its data store.
Employee Leaves the Company
John accepts a position with a partner and leaves the company. The HR Consultant updates the PeopleSoft records. The DirXML drivers respond as follows:
The PeopleSoft driver removes John from the Managers group and clears organizational relationships. (The User objects for both John's manager and his direct reports are also updated.) The driver moves John's User object to the Inactive container and sets his Login Disabled attribute to True. This updated data is published to the Workforce Tree.
The NT Domain driver is notified of the event and disables John's NT account.
The Exchange driver disables John's mailbox and removes him from the Managers e-mail list.