Monday, October 15, 2007

Why are there so many People tables in the apps?

When I design the data warehouse model, I found a difficulty to conform the employee or person data from various apps.

Human Resource need to capture the employee information:
  • Payroll application needs to include a list if employees in order to pay them. They are the people my receive paycheck or direct deposit from the deploying company.
  • Benefit application also extends the list of people to include beneficiary who the people can receive the benefits if the employee himself cannot take the benefits.
  • Benefit application also cover the dependents who can be covered in the benefit program.
  • Employee assignments fulfill the organization planning
There are people which you can assign work to them. The examples are
  • buyers in purchasing applications
  • collectors in the account receivables applications
  • credit manager in the credit management application
  • salesperson who may be assigned to take care of an sales opportunity
  • service representatives who may be assigned to work on a service request
If these applications are separately developed or separately deployed, you will find that a single person defined multiple times in different system. However, in an integrated suite, you may also find that the entries are created and maintained separately and no integration exist among these module. The possible reasons are

  1. Domain specific attributes: Sales person may have sales territory and product associations. Sales person record may also have the rules about how they receive the sales credits
  2. Historical reason: the applications were developed separately and people do not know each others
  3. Acquisitions: Different applications come from different acquisitions
  4. Lack of cross product knowledge: Two team created two entities based on their own needs. They do not know that a similar entity already exists
  5. Narrow-mind people: Some people are stubborn. They can see their narrow scope and do not listen.

No comments: