Scope

This is the core of the module and every other functionality will depend on this. It will provide the functionality of managing the information of the employees. That is, it will provide the ability to add, delete, modify, search and list the employees and the information associated to them.

Design Considerations

Dependencies

Every other future extension of this module will be based on this module. This makes it necessary to design a solid structure that will allow other functionality to be developed in top of it. This module will be dependent on Openbravo core module.

Constraints

Openbravo ERP already provides a mean to manage employees. This module will provide wider managing tool. Still, it will be consistent with the previous approach.

Functional Requirements

User roles & profiles

The following roles are involved:

HR Manager: the HR professional responsible for running HR related process and activities. They will have access to every employees information within their organization.

Manager: responsible for giving permission, feedback, etc. to the employee in certain situations.

Senior managers: concerned about the hierarchy of employees reporting to them. Needs to be able to see their organization as a hierarchy.

Front line managers: concerned about the employee reporting to them.

Employee: the individual being managed. Will have access to their own information.

Business process definition

Employee records management:

Add

Modification

Delete

Search

List

System setup:

Default

Team + Team manager

Salary Category

Position + Salary categories for each position

Contract type

User stories

Mary is the Human Capital Manager of an advertising agency responsible for the coordination of 120 employees with several level of management. The legal structure of the company follows a structure similar to the one shown in the following diagram.

At the same time, the management structure of the organization could be similar to:

System Setup

First of all, Mary does the setup of the system to have it ready for usage.

The first step consists on setting the default values. To get this done, Mary will navigate to the Human Capital Management folder in the menu. The defaults can be set in the window called default in the setup folder. This window will allow to select a employee category. Every employee entered in the application will have this value set in their employee category field. This field is hidden in the employee window so it is not modifiable from this window. This value matches the business partner group in the business partner window. It must be kept on mind that every employee is a business partner. Also, default values for expense reimbursement can be entered. This defaults could be different for each organization. Note that there must be some business partner category in the system to be able to fill the HCM defaults setup window.

Next the salary categories available within the company will be entered by inserting new records in the salary category window. This salary categories will have a unique name and a salary range. In the salary category window, there is a child tab called cost, where a cost per some unit of measure can be inserted if the employee is going to perform operational tasks. For example, cost per hour or cost per unit produced could be inserted here in other to use this data in Project and Service Management.

Afterwords positions will be entered. Position is the concrete name of the job the employee holds in the company. This positions and salary categories will exist under certain organization. Each position will be identified with the name. In the positions window, there is a child tab called salary category. The salary categories available for the present position will be added there. Only the salary categories available for the organization of the position will be available. Each salary category can be related to several positions. The mapping is only valid within the organization selected. The same combination of position - category could exist within different organizations.

After that, Mary will enter the contract types used in the company.

Eventually, Mary will want to enter the teams within the company. To enter a team Mary will click in the team window in the setup folder of the menu. The name of the team will be entered. As the employees have not being created yet, the add manager process can not be done. Once the employees that are managers are entered in the system, the HR manager will click the 'add manager' button. A new window will pop up. In this window the managers name and start date/end date can be filled. The information regarding the managers is kept in a child tab in team window. As the teams are part of a tree, Mari can click on the tree icon, and locate the team in the corresponding hierarchical position.

This process is illustrated in the following diagram:

Addition

Whenever there is a new hire in the office, Mary navigates to the Human Capital menu and clicks on employee window. Then clicks on new icon to enter a new register.

She fills the mandatory and non mandatory information in the header of the register.

She fills the different tabs if needed:

Contact: For every contact (telephone, e-mail address, cell phone, etc.) a new register will be entered. In each of the the contact type will be selected and the information fields. It is necessary to set whether it is private or business contact information and whether is the main contact of that type.

Location: For every address that wants to be kept a record must be filled out. It also has a check to distinguish whether is a business or private address and whether is the main address.

Bank Information: For every bank account that wants to be kept a register will be entered. At least one and only one will be checked as default.

Employment Information: In this tab all the information related to the employees activity in the company will be tracked. The team of the employee must be selected. If the chosen department has no manager, an error message will be displayed. Also, the employees position must be selected and automatically, the available salary categories within the organization will be available in the salary category drop down list. The effective date will be today by default but can be changed.Also, the contract type of the employee can be selected. If the employee has a part time contract, the dedication fields will be displayed in the screen. If the salary entered is not in the salary categories range an information message will be displayed. The register will be initially in draft status. Once every information is filled out, complete button must be checked. The data will turn to read only and the register to status complete. If there was a previous register in complete status, it will be turned to historic status.

Family member: If the contact has any relative whose information wants to be kept a register can be entered for each of this persons. It is compulsory to enter the name and surname and the birth date of this person.

Operational Resource: In this tab there are two check boxes to set whether the employee is a sales representative and/or an operator. There is a child tab to select a cost salary category. This salary category will be used to calculate costs in project and service management.

Modification

Whenever there is any change in an employee data, Mary can access the system and change the information in the required field. This information update could have different effects in the system. There are some fields that may force some others to be changed.

On the one hand, there are some fields that will not affect anything else. These changes can be done just typing in the correspondent field and saving. The change will be saved and reflected in anywhere is used. For example, modifications in the employee header, such as First Name, Last Name, Nationality, Sex, Marital Status, etc.

On the other hand, some changes will make some other fields to be displayed. For instance, if the field status in the employee header is turned to former employee, the exit date field will be displayed.

However, there are some fields that require a more complex process.

Manager modification: for example, if an employee is promoted to manager. This modification will be done in the teams window and not in the employee window. In the corresponding team, the add manager button will be clicked and the information entered. This will create a new record in the manager tab, where all the previous managers can be seen.

On the other hand, changes in employment information tab will require a new record to be inserted every time, so track of the changes can be kept. Whenever the new tab is inserted the previous records information will be displayed, so the insertion is easier. Once the information has being inserted, the record will be completed and not modificable anymore.

The following diagram illustrated this process:

This are examples of modifications that would need a new record to be opened in the employment information tab or in the team window:

Organization modification: for example, if the employee is transferred to another country. This has to be done in the employment information tab but the modification will be accordingly done in the employee header. It could be necessary to change some other fields for the data to be consistent, such as the position, salary category, team, etc. That is, if the previous data is not valid in the new organization, it will need to be changed.

Position modification: for example, if the employee is promoted to a new position. The salary categories available will change. If possible the previous salary category will be selected.

Salary Category modification: for example, if the employee is promoted to a new salary category. The position remains unchanged.

Team modification: for example, if the employee is changed from one team to another. The manager of the new team will be his/her new manager.

Dedication modification: for example, the employee stops working full time and starts working half time. The dedication field will be changed from full-time to part time and the standard hours and work period fields will be displayed. If the employees dedication is set from full time to part time, the standard hours and work period will not be longer displayed.

Deletion

Whenever an employee leaves the company, Mary will set the status field to 'former employee'. The information related to this employee will be kept in the system for possible future usage. When an employee is the status will be turned to former employee and the exit date will be displayed. The exit date will be today as default.

Search

Whenever Mary wants to search for an employee, she can click on the search icon. This icon will allow her to search by:

First Name

Last name

Know as

Employee Number

Search Key

Organization

Position

Team

Status

Active

List

Whenever Mary want to see the list of employees she can access the records in the grid view or export it into excel, CVS or PDF.

Functional requirements based on business processes

In the following tables the functional requirements are listed. For readability reasons, the requirements have been broken into different tables and some mockups have been added to help in the understanding. The code for the icons in the field lists:

* read only field

+ mandatory field

< shown in grid field

Menu

Menu

Num

Requirement

Importance

Approved

Menu_1

There is going to be a new menu entry named Human Capital Management.

Must have

Menu_2

In this menu there will be a window named employee. This window will allow to add, modify, delete, search and list employees. The registers entered in this window will be visible from the business partner window as well.

Must have

Menu_3

In this menu, there will be also a setup folder containing windows to add, modify, delete, search and list the following items:

Team

Salary Category

Position

Contract type

Defaults

Must have

Menu_4

There is no going to be a window to manage countries or nationalities. The list of countries shown in the dropdown named country of citizenship will be set in the usual country window from core.

Must have

Setup Windows

Defaults Window

Num

Requirement

Importance

Approved

DefWin_1

The defaults window will have the following fields:

Employee Category

Active

Expense Reimbursement Information:

Form of Payment <

Payment Terms <

Purchase Pricelist

Must have

DefWin_2

Employee category field is a drop down that takes the values of business partner categories. This values are inserted in: Master Data Management > Business Partner Setup > Business Partner Category. To be able to insert records in this defaults setup window, there must be at least one record in Business Partner Category, as employee category is a mandatory field.

Must have

DefWin_3

The employee category is static. Every employee will have the same default value unless it is individually changed from the business partner window. The employee category is a hidden field in the employee header.

Must have

DefWin_4

The parameters set in expense reimbursement fields will be the default values for every new employee created. If they are null, the new employees will have null in those fields. If they are not null, the employee will be set to Vendor = yes and this values copied in their vendor attributes. This parameters will be hidden in the employee tab but could be changed if required from the business partner window.

Must have

DefWin_5

The defaults are NOT set by organization. Every employee will belong to * organization, and every employee will have this same default values.

Must have

DefWin_6

If any of the default values are changed, the new values will be used from them on. No previous records will be modified. The previously entered employees will continue having the previous default values set. They could be modified in the business partner window if required.

Must have

DefWin_7

It will not be possible to delete the business partner category if it is used in the defaults window. A message will be pop-up.

Must have

Salary Category Window

Num

Requirement

Importance

Approved

SalWin_0

The salary category window will have two tabs: salary category header and cost.

Must have

SalWin_1

The salary category window will have the following fields:

Client/Org

Name

Salary From

Salary To

Currency

Cost applied

Bonus type

Max %

Min %

Description

Active

Must have

SalWin_2

The cost tab will have the following fields:

Client/Org

Salary Category

Starting date

Cost

Cost UOM

Must have

SalWin_3

This window is the same window available in Master Data Management > Business Partner Setup. That is, this window will have two menu entries, the one provided by core (in Master Data Management folder) and the one provided by the module (in the HCM folder).

Must have

SalWin_4

It will not be possible to deactivate a salary category record if there are active employees linked to it.

Must have

SalWin_5

The values of the cost window are used for operational reasons. The cost per cost unit of measurement are not necessarily directly related to the salary range of the salary category.

Must have

SalWin_6

The starting date in the cost tab will be used to decide which cost to apply when the employee is used as an operational resource. Depending on the starting date of the employee in certain salary category, the cost valid in that period will be applied.

Must have

SalWin_7

When the salary is entered in the employment information tab, the currency of the salary category selected will be concatenated in the end. The system will check that the inserted value is a number, but the field will contain strings, as the currency symbol is a string.

Nice to have

Position

Num

Requirement

Importance

Approved

PosWin_1

The position window will have two tabs: the header, and a child tab called salary category. In the child tab the salary categories available for the selected position can be registered.

Must have

PosWin_2

The header tab will have the following fields:

Client/Org

Name

Active

Must have

PosWin_3

It will not be possible to deactivate a position record if there are active employees linked to them.

Must have

PosWin_4

The child tab salary category will have the following fields:

Client/Org

Position

Salary Category

Active

Must have

PosWin_5

A position can be related to several salary categories within certain organization. The same position could be linked to different salary categories for different organizations.

Must have

PosWin_5

In the child tab, only the organizations that are children of the selected position will be available.

Must have

PosWin_6

Only the salary categories available within the selected organization will be available.

Must have

PosWin_7

The combination of position and salary category will be only available for the selected and its children.

Must have

It is very important to remark that a position can be related to different salary categories for different organizations. At the same time, a slary category can be related to more than one position in different organization. It is a three side relation. This idea is shown in the following image:

Contract type Window

Num

Requirement

Importance

Approved

ConWin_1

The contract type window will have the following fields:

Client/Org

Name

Search key

Active

Must have

ConWin_2

It will not be possible to deactivate a setup record if there are active employees linked to them.

Must have

Team Window

Num

Requirement

Importance

Approved

TeamWin_1

The team window will have the following fields:

Client/Org

Team

Current Manager

Effective from

Assign Manager

Summary level

Active

Must have

TeamWin_2

The team will have a read only manager history tab, with the following fields:

Team

Manager

Effective from

Effective to

Must have

TeamWin_3

The add manager button a pop up will show up. This popup will have the following fields:

Team

Manager

Effective from

Effective to

Must have

TeamWin_4

The data inserted in the popup window will create records in the manager history tab. Which is only read only.

Must have

TeamWin_5

Add Manager is a none mandatory process in the team setup window. But if it is not performed, the system will not allow any employee to be assigned to this team. An error message will be displayed if this happens.

Must have

TeamWin_6

It will not be possible to deactivate a team record if there are active employees linked to them.

Must have

TeamWin_7

Teams follow a tree structure. After inserting a team, clicking on the tree icon in the toolbar, the recently created organization can be located in certain position in the team tree. The summary level check box field must be checked for 'parent' teams, that is, for teams that will have some other team under them.

Must have

TeamWin_8

There is no need for a relation between the team the employee manges and the team the employee belong to.

Must have

TeamWin_9

The same employee could manage more than one team.

Must have

Employee Window and Tabs

Employee Window

Num

Requirement

Importance

Approved

EmpWin_1

The employee window will have a header main tab and several tabs. Except for the header itself, the rest of the tabs will be pending of this header tab. All of them in the same level, right under the header. The tabs will be the following:

Employee (header tab)

Contact

Location

Bank information

Employment information

Family Member

Operational Resource

Other Citizenship

Must have

EmpWin_2

The employee search filter will filter by the following fields:

First Name

Last Name

Know as

Employee Number

Search key

Organization

Team

Position

Status

Active

The active check box will be checked by default. The rest of the fields will allow to be left null to mean any.

Must have

EmpWin_3

An employee selector is needed as there amount of employees in the application is large. The filters of the selector will be the following:

First Name

Last Name

Know as

Organization

Team

Position

Status

Nice to have

EmpWin_4

When the user navigates from the header to the tabs, if the tab is date driven, the form view will be opened with the actual record. If the tab is not date driven, the grid view will be shown. That is, for employment information tab, the actual record will be opened. For the rest, the grid view will the initial view.

Nice to have

Employee Tab

Num

Requirement

Importance

Approved

EmpTab_1

Fields for the Employee Tab

Search key + <

Employee number <

Greeting

First Name + <

Middle Name + <

Last Name + <

Known As + <

ID / Passport <

Tax ID <

Place of Birth <

Date of Birth <

Country of citizenship <

Language

Gender <

Marital status <

Education Level <

Personal Notes <

Status <

Education Degree

Exit date

Must have

EmpTab_2

The organization of the employee will not be defined in the header but in the employment information tab.

Must have

EmpTab_3

When an employee stops working for the company it will be set to former employee in the status field of the header. The exit date field will be automatically displayed to set an ending date. The ending date will be today for default. This exit date will be the end date for the actual employment information record and for the team manager records of the employee, if any.

Must have

EmpTab_4

When a first name, middle name or last name is entered, known as field will be updated to contain the concatenation of those fields. If the previous know as field is different to the previous names' concatenation the known as field will not be updated.

Must have

EmpTab_5

Country of citizenship combo, that is nationality, will be filled with the values of country window (General Setup - Application - Country Region and City - Country).

Must have

EmpTab_6

When a new record is inserted, the employee number will be automatically filled to the next available number (to the max(employeeNumber) + 1). It will only be a suggestion, as it is an editable field. Similar to the sequences for transaction documents.

Nice to have

Contact Tab

Num

Requirement

Importance

Approved

ConTab_1

Fields in contact tab:

Employee *

Contact type +<

Contact +<

Business Contact <

Default <

Comments

Make default

Active

Must have

ConTab_2

Contact tab contains records for different kind of contacts of the employee. Some contact types will be available at installation (email, cell, phone, URL, etc.) but the list is user modifiable. So, there could be as many contact types as needed.

Must have

ConTab_3

The 'business contact' field is a check box to point out whether the contact is a business contact or private. There can be as many business contacts as needed, even of the same type.

Must have

ConTab_4

There will be a check box to select the default contact. This check box is read only and will be set by clicking the button 'make default'. There could be only one default business and one private default contact for each contact type. The user will be able to set main check-box to different records if they are from different contact type. If a record is set to default, if there was some other default record, it will be unmarked.

Must have

Location Tab

Num

Requirement

Importance

Approved

LocTab_1

Fields in location tab

Employee *

Name

Location

Business Contact

Default

Comments

Make Default

Active

Must have

LocTab_2

There could be as many records set to business contact as needed.

Must have

LocTab_3

There can only be one record set to default business location and one record set to default 'not business' location, that is, default private location.

Must have

Bank information tab

Num

Requirement

Importance

Approved

BankTab_1

Fields in bank information tab:

Employee *

Account Name

Bank Name

Bank Account Geography

Bank Account Number

IBAN

SWIFT

Active

Default

Make default

Must have

BankTab_2

If the account type is set to domestic only the account number fields will be displayed. The IBAN and SWIFT fields will not be displayed. If the account type is set to international, this last two fields will be displayed as well. Account number will remain visible.

Must have

BankTab_3

Only one record can have default checked.

Must have

BankTab_4

In the business partner bank account tab, show generic or show IBAN must be selected. this two fields are hidden in the specs. If domestic is selected, show generic will be checked, if 'international' is selected, show IBAN will be checked.

Must have

Employment information tab

Num

Requirement

Importance

Approved

EmpInfoTab_1

Fields in the employment information tab:

Client/Org/Employee *

Full/Part time +<

Salary Category +<

Position +<

Salary +<

Contract Type +<

Team +<

Standard Hours

Work Period

Bonus %

Comments

Effective date +<

Complete button.

Must have

EmpInfoTab_2

The salary will be introduced manually by the HR manager. It is not being calculated by the system.

Must have

EmpInfoTab_3

If the salary entered is greater than the maximum quantity set by the salary category or smaller than the minimum quantity, an information message will be shown. The information message will read "The current salary is not in the salary range. The salary range for this salary category is between x and y."

Nice to have

EmpInfoTab_4

For default, full/part time field is set to full-time.Standard hours and work period will be hidden fields that will be displayed if the dedication field is set to part-time.

Must have

EmpInfoTab_5

If the full/part time field is changed from part-time to full-time the standard hours and work period field will not be displayed and their values will be set to null.

Must have

EmpInfoTab_6

The organization of the employee is defined in this tab.

Must have

EmpInfoTab_7

Whenever an employees organization is changed in the information tab, the other fields (contract type, team, salary category, etc.) will load the data according to the new organization in the drop-down lists. If possible, the previously selected option will be maintained as selected.

Must have

EmpInfoTab_8

In the positions drop down every position available according to the employees organization will be shown. In the salary category dropdown only the salary categories available for the selected position and organization will be shown.

Must have

EmpInfoTab_9

Whenever an employees position is changed in the information tab, the salary category field will load the data according to this change. If possible, the previous salary-category will be maintained as selected. If this is not possible, the first of the list will be selected.

Must have

EmpInfoTab_10

If the salary category is changed, the positions will not be reloaded. All the positions will be available in the dropdown. Not only the ones matching the salary category.

Must have

EmpInfoTab_11

Time based historic information about the employees employment information must be kept. That is, every information related to the employee activity in the company will be recorded.

Must have

EmpInfoTab_12

Workflow to kept historical data: Open a new tab. the record will be in Draft Status. Fill the fields and once the record has being properly being saved, press complete button. The record will turn to complete status. The record will be in read only from now on and will not be modifiable anymore.

Must have

EmpInfoTab_13

Only one record can be in draft status.

Must have

EmpInfoTab_14

Whenever a record changes it status from draft to complete, the previous record in ready status will turn to historic status. That is, only one record can be in complete status.

Must have

EmpInfoTab_15

The complete button will not be visible when the record is in complete or historic status.

Must have

EmpInfoTab_16

The employment information grid view will be ordered by date.

Nice to have

EmpInfoTab_17

In the employment information tab it would be nice to have a read only field for the manager and another one with the salary range. Another solution could be to show a message whenever the salary category is changed showing the salary range.

Nice to have

EmpInfoTab_18

An employee can only be assigned to a team with a manager assigned. Otherwise a message will pop up.

Must have

EmpInfoTab_18

Employment information tabs can not be deleted. A message will pop up if the delete button is clicked.

Must have

EmpInfoTab_19

Bonus % field will only be visible when a salary category with bonus type set to salary %.

Must have

Family member tab

Num

Requirement

Importance

Approved

FamTab_1

Field in the family Member tab:

Client/Org/Employee *

Relation +<

First Name

Middle Name

Last Name

Know As +<

Date of Birth +<

Phone

Employment Status +<

Tax ID

Country of citizenship

ID/Passport

Email

Phone

Mobile Phone

Active

Comments

Must have

FamTab_2

If spouse is selected in the relation field of the relative tab of employee window and there employee is not set to marital status married a information message will be displayed.

The salary category selected here is not necessarily the same salary category as the one selected in the employment information tab. The salary category selected here will be the one used when the employee is used as an operational resource. For instance in project & service management.

Must have

OpeRes_4

The start date in this window is not necessarily related to the start date in the employmen information tab. This start date is used to select which costs will be applied. When costs are defined in the salary category cost tab, a valid from field must be inserted.

Must have

Other Citizenship tab

Num

Requirement

Importance

Approved

CitiTab_1

Field in the family Member tab:

Employee

Country of citizenship

Must have

CitiTab_2

The main citizenship defined in the employee header will be copied to this tab.

Nice to have

Other Functional Requirements

Drop Down Lists

Num

Requirement

Importance

Approved

DropList_1

There will be closed drop down lists for:

Marital status

Employment status

Gender

Dedication

Status

Contact type

Relation

Education Level

Work Period

Must have

DropList_2

Values for Marital status will be:

Single

Separated

Divorced

Widowed

Married

Unknown

Must have

DropList_3

Values for Gender will be:

Female

Male

Unknown

Must have

DropList_4

Values for Full/Part time will be:

Full time

Part time

Must have

DropList_5

Values for Contact type will be:

Email

Mobile Phone

Phone

URL

FAX

Other

Must have

DropList_6

Values for Relation will be:

Spouse

Child

Partner

Parent

Other

Must have

DropList_7

Values for Employment status will be:

Employed

Unemployed

Unknown

Must have

DropList_8

Values for Work Period will be:

Annual

Quarterly

Monthly

Biweekly

Weekly

Daily

Must have

DropList_9

Values for Status will be:

Former employee

Current employee

Must have

DropList_10

Values for Education Level will be:

Mandatory schooling

Vocational school

High school

University Degree

Master's Degree

PhD

Must have

DropList_11

Values for Account Type will be:

Domestic

International

Must have

DropList_12

Values for Status' in employment information tab will be:

Draft

Complete

Historic

Must have

DropList_13

Values for Bonus Type' will be:

None

Discretionary

Salary %

Quota Based

Other

Must have

Other Functional Requirements

Num

Requirement

Importance

Approved

Other_1

The user defined entities (team, position, salary category, defaults, etc.) will belong to an organization. Only the ones available for the employee according to the users organization will be shown in each drop-down.

Must have

Other_2

In this first basic approach, only the information related to the employees employment information and management structure will be time based tracked.

Must have

Other_3

Effective Dates: Effective from and effective date will be both visible and both editable.

Must have

Other_4

Current Record will be the one satisfying: effective from > all effective to.

Must have

Other_5

Gaps are allowed but no overlapping.

Must have

Other_6

When a new record is created, the end date of the previous record should be automatically populated based on the start date of the record being inserted. This will only happen if the end date is null. If a previous value exists, it must be validated that there is no overlapping.

Must have

Other_7

When an employees status is set to former employee and the exit date is filled out, the exit date of the last employment information record will be filled with the exit date.

Must have

Other_8

Only the current record can have the end date set to null. The other records must have the end date set. That is, only the record with maximum start date can have the end date set to null.

Must have

Other_9

Organization change should be treated carefully. If the change is to a parent organization there is no problem, but if the change is to a child organization it must be checked that no record will remain inconsistent. If so, the change should not be allowed.

Must have

Other_10

Every employee belong to * organization by default. This fields is hidden. The organization the employee is associated with can be seen in the employment information tab.

Must have

In the following table a brief list of nice to have features is shown. At the end of this document there is a list of further feature request.

Nice to have Functional Requirements

Num

Requirement

Importance

Approved

Nice_1

There will be a window visible to everyone with public information of every employee.

Nice to have

Nice_2

There will be a window only visible for HR managers and team managers with important information in a single view.

Nice to have

Nice_3

There will be a read only view with the manager list and a tab to show some information about the employees each of them supervises. Info available:

Client/Org/Employee *

Supervised employees name *

Supervised employees legal entity *

Supervised employees team *

Supervised employees start date at position *

Supervised employees end date at position *

Supervised employees hiring date *

Supervised employees exit date *

Nice to have

Nice_4

In a later stage, a hierarchical view of the managers and the team members could be implemented. It should provide navigation from a manager to its reporting employees and from the employees to their manager. And to their managers manager. And so on.

Nice to have

Nice_5

The employee tab should include a picture field.

Nice to have

User Interface Mockups

The images below display some user interface mockups for the employee management system that haven't being displayed in the previous section.

Employee Search Filter

The employee search filter is shown in the following image:

Employee Selector

The employee selector is shown in the following image:

Nice to have windows

In the following images some of the nice to have features mockups are shown. The first one shows a view for the human resources managers and team managers.
As it is only a window intended to show information, every field is set to read only. It will not be available for employees.

This one shows a very basic and simple view available for every employee in the company. It is intended to be a simple way to check the contact info of other employees.

Non-Functional Requirements

Security requirements

Num

Requirement

Importance

1

There will be different roles with different access levels:

Human Resource Director: Can see every record within the whole enterprise

Human Resource Organization Manager: Will have access to every record within the organization they are responsible for.

Human Resource Team Manager: Will have access to every record within the team they are responsible for.

Senior Managers: Will have read-only access to all the information about the employees reporting to them.

Front line managers: Will have read-only access to some information about the employees reporting to them.

Employees: Will have write access to their own information. Will have read-only access to every employees public information.

Must have

2

Ex-manager figure should be available. That is, managers should be able to see the records of the employees that where once reporting to them. They should only be able to access the records with the information of their ex-reporting employees in the period they where managed by them.

Nice to have

Open Discussion Items

Closed Discussion Items

The term Team covers teams, departments and areas.

The term Manager will be used instead of supervisor.

The term Position will be used instead of job.

The term Family Member will be used instead of Relative or Next of kin.

Nice to have Features for Future Extensions

This first approach will provide a basic, but solid, HCM module. There are plenty of good ideas that have being left out of this specifications but will be taken into account for future extensions.

Historical information: Tracking of every single field. In this first approach only some fields are historically tracked.

Medical Information of employees

Window with delete option available for senior managers.

User tab. In Openbravo ERP, in the business partner window, there is a tab named contact that is linked to AD_user table. The registers entered there created new application users. That is, a application user is created for the business partner. This tab could be added to the employee header as well.

Reporting: Some interesting repords will be implemented once the basic structure is working.

Printable employee card: Displayed in pdf directly. It should contain the following info: company Logo, picture, name, surname, main business address,main business cell number, business phone, business e-mail and current Position. Some layout ideas for this employee card can be taken from: