Apps Overview
The following provides a brief overview of some of the applications available through the Marketplace. This list is not exhaustive and is meant to provide a sampling of functionality.
The following apps are highlighted here:
Demographics
A collection of simple apps exists for the sole purpose of creating the demographic data surrounding employees and transactions. These values are not all required, but can be used for allocation, reporting and export when submitting data (e.g. payroll) to external systems.
The demographic apps are listed on the
Demographics
menu, or can be found using the application search bar
An example of the Positions
app:
Use the
Add
button to add new entries, or click a row to edit.
Additional demographic apps exist for the following types of data:
Application | Notes |
---|---|
Positions | Employee job codes or duties |
Departments | Departments with in an organization |
Warehouses | Physical warehouse locations; includes a link to Locations |
Locations | Organizational locations; includes a link to Regions and the observed timezone for the location (used by time clocks or other timezone aware applications) |
Regions | The geographic region to which locations are assigned |
Accounts | General ledger accounts |
Cost Centers | Operational cost centers |
Companies | Organizations, say with separate FEINs |
Subsidiaries | Operating entities of Companies |
Agencies | Organizations which provide workers, contractors or other temporary help |
Resources
These are apps which maintain resources within your operations, such as projects, customers or other tangible assets. Generally these resources are used for allocations of time or expense, and can be included when labor costs are posted to payroll and the General Ledger.
An example of a resource app is Projects
. Here we maintain a list of projects, a related customer, the status, and the effective dates of the project:
Each project optionally includes the Tasks
which are valid for the project. Tasks also have effective dates such that allocations performed at a time clock or timesheet can be validated.
Resource apps exist for the following resources:
Application | Notes |
---|---|
Projects | Projects and their associated tasks |
Customers | Available as an allocation directly, or via Projects |
Equipment | Tangible job equipment or assets |
Service Tickets | Job or service management tickets |
Employees & Contractors
The workforce is managed in the Employees app, and every worker (user) also has the option (if allowed) to access the platform. A User Profile
determines which applications and visibility the user will experience.
Generally employee identities will be imported from a System Of Record (e.g. payroll or HR), with minimal maintenance performed here. However, you could also initiate identities here and send to third parties via a Live Export API, file or other automated feed.
The
Employees
apps is located under theDemographics
menu, or locate using the application search bar
In addition to all Demographic
type elements, the employee app specifies the following:
Field | Notes |
---|---|
Employee Details | Name, Number (as presented in payroll), username |
Hire/Term dates | When the worker was hired or rehired |
User Profile | Controls all access to the system, including applications, visibility, default apps by platform, usage policies |
Clock Group | The group assignment which controls which time clocks the worker can use |
Photo | Optional photo |
Employment Type | A list of composite classifications to make categorization and policy enforcement easier; the composite includes: - Worker Type: Employee , Contractor , Agency - Time Type: Full , Part , Seasonal , PRN - Weekly Hours: e.g. 40 - Exempt: yes/no |
Pay Group | The logical payroll group which controls the rules and pay policies which are applied to time, attendance and other calculations |
Supervisor | The user who directly manages and sees the workers time, schedules, etc. |
Contact Info | Emails, phone and other contact details |
The Details
card of the Employees
app:
Additional apps for Employee Skills
and Certifications
allow tracking licenses, certifications and other skills held by workers.
Availability
Availability is a component of the scheduling process whereby worker offer their availability--or non availability--prior to schedules being created, in an ad-hoc manner. Availability exists outside of normal Leave (PTO, Vacation) such that it can be used with part-time, agency or any worker regardless of their employment type.
Zones
Availability can be expressed in a couple of ways: specific times, entire days or zones; you can use any of these depending on the granularity desired.
Here is an Availability Zones
app showing the various times or portions of the day which a worker might choose. You would modify this list as needed to meet your scheduling style:
Publish
An optional step would be for the scheduling team to send a notification requesting that workers submit availability for the next scheduling period (e.g. next nn weeks). The form below triggers a workflow which will notify all workers and prepare the calendars for their submission. In this case, a start/end date, visibility/lockout periods and options such as including weekends or holidays:
Submit
Using the parameters from the above event, workers can fill out a calendar manually or use an express form to efficiently submit for the entire period. The bottom of the from tallies their total hours of availability. Upon submit, the worker's calendar is populated with the selected Availability Zones
on the respective days.
Calendar & Mobile
Alternatively, workers can use the Availability Calendar
to review, maintain or create the availability schedules.
The Availability Calendar
as viewed from the workers mobile device, showing the number of slots filled and total available hours:
All of this is shared with managers in the Scheduling
applications in order to make better decisions on labor allocation and costs.
Scheduling
The scheduling solution encompasses a collection of events including leave, availability, demands and resources. We've also tried to separate the tasks of schedule creation from schedule maintenance, as often those are performed by different users and at different timelines.
Shift Templates
Shift Templates are a tool for creating standard times or shifts, sich as First shift
or Weekend Maintenance
, each containing a description, color and times--but not actual dates. Shift Templates are then used to more easily create adhoc or recurring schedules by assigning the desired shift to a person on one or more dates.
The Scheduler presents a list of workers in a particular demographic (location, department, position, etc) and allows rapid scheduling of shifts across days, or recurring over time. Total scheduled hours, leave, availability and other inputs are optionally displayed to assist the scheduling user in populating the work shifts.
The Employee Schedules app provides an inquiry and interface for appending notes or shift instructions to existing schedules, or to make any ad-hoc changes or adjustments.
Schedule Enforcement
Optional schedule enforcement policies can enable/disable the ability to punch on a time clock backed on the policy's thresholds (e.g. 15 minutes before start of shift), and provide available shift instructions to the workers.
Mobile
In addition, workers can review their work schedule, availability and leave at the time clock or within the mobile app.
Timesheets
The Timesheets app collects worker punch transactions as they occur and computes all time, overtime, premiums, meal breaks and other pay policies. Time is approved before being submitted to payroll via integration, file upload or email.
Time Clock
The Time Clock application can be deployed on biometric or badge time clocks, tablets or PCs as a webclock, or on mobile with geo tracking and enforcement.
Workers can be prompted to select job assignments, projects and tasks, or other allocations as part of the punching process. A sampling of the workflows available during worker punching includes:
Task | Description |
---|---|
Action | Select from valid actions including IN , OUT , Start Lunch/Break , End Lunch/Break , Transfer , Activity and others |
Allocate | As part of any punch action, selecting an allocation such as Project/Task , Cost Center , Department or Jobcode |
Break | Ability to enforce the length of a meal break, the time between breaks and awarding the necessary penalties when break rules are violated |
Schedule | Restrict the ability to punch when outside the current day's shift thresholds |
Tips | Record tips and other monetary transactions |
Production | Record production related counts |
Pieces | Record pieces as related to job activity |
Attest | Capture worker attestation as to timecard, injury or safety conditions |
Survey | Capture worker survey respones |
Geo | Capture and enforce geo and geofence (passive or active) |
Smart Filters
Smart Filters are pre-written conditions which can be attached to many applications. In the case of the Timesheets app, these conditions include Unapproved
, Errors
, Overtime
or Wroked
. In each case the condition is authored using the DataView tool, which defines the condition and fetches the related data.
DataViews are similar to reports except that their output is used as input to other apps.
Because the DataView tool is available to users within the platform, additional Smart Filters can be created to extend applications and the ability to create custom filter conditions.
Smart Actions
Smart Actions are workflows which are triggered from the application screen. In the case of the Timesheets app, prebuilt actions include workflows for Approving
and Unapproving
time, adding a Punch
or adding Hours
to a timecard.
Smart Actions attach themselves to the local app menu (shown above) and also as tool buttons above the app for quick one-click access. Future functionality can be added to applications by attaching additional Smart Actions.
Pay Policy
Enforcing pay polices is handled by Pay Groups and Pay Rules. Each is highly extensible and can handle the requirements of any locale.
Pay Groups
All workers (employees, contractors, agency staff) are assigned to Pay Groups which in-turn apply rules and pay policies to the worker's time. Pay Groups are generally aligned with locations and business units, though can be as granular as needed to handle every unique pay policy collection.
For example, the following are generally considered when drawing Pay Group assignment:
Condition | Description |
---|---|
Location | The workers physical work location or region |
Business Unit | The FEIN or business unit the worker belongs to |
Employment contract | Whether a CBA or other contract dictates pay policies |
Employment type | Seasonal, part-time, PRN, Exempt and other employment types |
Hired conditions | If a worker was hired as part of a project, effort or other condition which may include specific policies |
Pay period | The pay period frequency |
In many cases pay polices can be grouped such that individual policies are shared across worker groups with the ability to decide on-the-fly whether a policy applies. However, its usually easier to divide into groups to keep pay policy rules cleaner and easier to maintain.
Pay Rules
Pay Rules are specialized workflows designed to handle time data and the underlying nature of time-based decision trees. The first step in any Pay Rule is to publish a set of Parameters
which are the inputs to a rule.
For example, a rounding rule would need to know the number of minutes to round up/down to (e.g. 15 or quarter hour) and the point at which to round up vs down (e.g. 7). In this way the logic of a Pay Rule can be reused while allowing any combination of parameter inputs.
A list of rules is attached to the worker's Pay Group, and the parameters specified per that group's pay policies.
Finally, during timecard calculation the Pay Group's assembled list of rules is executed using the provided parameters and calculated values (rounded time, overtime, shift premiums, gross ups, etc) added to the timecard data.
This approach provides for a highly extensible solution to managing pay policies in any locale.