AoraTime is a workforce management platform for a German security company. The company manages 160 security staff across commercial and hotel clients, and its existing workflow relied on phone calls, WhatsApp, Excel, and paper records. As the business grew, this process became difficult to manage efficiently.

This project focused on Shift Tracking, the main employee-facing module for shift and time management.

My RoleUX Design

Design Background

Unlike a traditional office environment, security staff work across different hotels, shopping malls, and office buildings, so managers cannot monitor their status in real time. Shift Tracking needed to help employees quickly complete check-in, breaks, and check-out, while also supporting time tracking, break compliance, and audit records. The image below shows a screenshot of the original system.

Since these actions take place on site and employees work on the move, the experience was designed for mobile first. A dedicated mobile app became the main tool for real-time shift tracking and time records, and Shift Tracking was the main focus of this project.

On mobile, "Time Tracking" was renamed "Shift Tracking." This was a deliberate design decision. "Time Tracking" can make employees feel that their personal time is being monitored, while "Shift Tracking" focuses on managing shifts rather than tracking personal time.

Original page — existing AoraTime web dashboard

Process Mapping

The orange area shows the scope of this project. The design was not only about Check In and Check Out. It introduced a one-way status flow that helped employees quickly understand their current status. A clear status reduced the need for extra thinking and decision-making, lowered cognitive load, and made it easy to see whether they were working or on a break.

Process map of the shift tracking flow: shift management, scheduling, upcoming shifts, shift lifecycle and state management including check in, working, breaks, check out, and exception handling

Design Challenges

There was a lot of information that needed to be shown on the page, including shift schedules, work locations, client and coworker contacts, current status, break types and duration, and the next action. Because employees' status changed frequently during a shift, the page needed to support quick updates. The key challenge was how to keep the process compliant without interrupting employees' work. Employees needed to complete check-in, breaks, and exception handling with as few steps as possible, while the company needed complete and accurate time records to meet labor law requirements.

Solution

The workflow was redesigned through information architecture to reduce information density and make the action flow easier to follow. The interface was organized into the three levels shown below to balance employee efficiency with business management needs.

  • Basic shift information, such as the shift time, location, and manager and coworker contacts
  • Shift schedule, including the start time, end time, and break schedule
  • Action and status flow

    • The page was organized around the shift status (Upcoming → Working → Break → Shift Completed), showing only the information and actions that were relevant to the current stage.
    • A clear visual hierarchy was built around the main action button, which changed based on the employee's current status to highlight key actions such as Check In, Start Break, Return to Work, and Check Out. This helped employees complete tasks quickly while reducing cognitive load and supporting accurate time records and exception management.
    • Low-frequency features and secondary information were placed under secondary entry points, such as More Actions and Break Schedule, using Progressive Disclosure to keep the main workflow focused and easy to use.
Annotated home screen showing information hierarchy: date and shift count, location, central status dial with countdown, check in/break/check out actions

Design Decision

Should "Check In" always be the primary button?

The key question was whether employees needed to always see "Check In," or simply know what to do next. However, once a shift had started, employees no longer needed to use "Check In." Keeping an unavailable button visible did not improve efficiency. Instead, it could increase unnecessary taps and make employees think about whether check-in was available.

Therefore, Option B was the better solution. The primary action changed based on the current shift status, so the interface always guided employees to the most important task, such as "Check In," "Start Break," "Return to Work," or "Check Out," instead of showing an action that was not available.

Design decision comparison: option A with a static Check In button versus option B with a dynamic status-driven action area

Option B workflow:

  • Before a shift starts, "Check In" is the only action employees need to complete. Therefore, it becomes the only primary action in the status area.
  • Employees can check in up to 15 minutes before the shift starts. Before that, the page shows the "Upcoming" status and a countdown timer. If check-in is still not completed, the system sends reminders 10, 5, and 2 minutes before the shift through both the page and push notifications.
  • After "Check In," employees enter the normal shift workflow. At this stage, actions such as "Start Break," "Check Out," and "Upload Evidence" become available.
  • As a result, the interface switches to a button group that shows only the actions needed for the current stage. This supports different tasks during the shift and avoids showing a repeated "Check In" button.

Design Decision

How can different break types be supported?

Users usually review break records by what happened during the shift, rather than by break type. Therefore, Option B was the better solution. Breaks were displayed in chronological order to better reflect the shift timeline and reduce the effort needed to review and check time records. In addition, "On-call Break" could happen at any time during the shift, so a time-based layout was more flexible and easier to understand.

Design decision: option A grouping breaks by type versus option B ordering breaks chronologically
Break schedule detail screen

Status

  • The break schedule for the current shift was collapsed by default.
  • Break records were displayed in chronological order, showing the break type ("Regular Break" or "On-call Break"), start time, end time, and duration. Therefore, both employees and managers could review shift activities and time records more easily.
  • Completed, current, and upcoming breaks were shown with different status indicators.

Interaction

  • Tapping "Break Schedule" expanded or collapsed the break details.
  • Swiping up or tapping outside the panel closed the break details automatically.

Reminder

  • A reminder was sent 2 minutes before a break started. This gave employees time to hand over tasks, notify coworkers, and arrange shift coverage before leaving for a break.

Design Decision

How should multiple shifts be displayed?

When employees had multiple shifts in one day, the interface needed to balance information visibility with browsing efficiency. Both Option A and Option B used stacked cards. However, this approach had two problems.

First, stacked cards are better for low-frequency browsing, while shift management requires employees to check their current status and complete actions throughout the day. Therefore, the interaction did not match the actual use case.

Second, stacked cards increased navigation effort because employees had to switch between cards to find information. Even with fewer layers, frequent switching was still required.

Therefore, Option B was the better solution. Shifts were displayed in chronological order, which matched how employees naturally think about their workday. This made it easier to identify completed, current, and upcoming shifts.

After the current shift was completed, the next shift automatically moved to the top, while later shifts remained below. As a result, the interface supported a natural transition between shifts, allowed employees to preview upcoming work, and reduced both navigation effort and cognitive load.

Design decision comparison across three options (A, B, C) for displaying multiple shifts in one day

Work Status Flow

Full work status flow across shift states: upcoming, tap to check in, working, break, returning to work, check out

Check out Exception

Check out exception flow: confirm check out, shift completed, more actions, and early leave request screens

Break Exception

Status

  • If a break was interrupted, the system automatically recorded the interruption and added the remaining break time to the next scheduled break. The "Break Schedule" showed both "Interrupted" and "Adjusted," and the push notification explained the change clearly.
  • If the next break was interrupted again, the system recorded another interruption and notified the manager for coordination.
  • The "Break Schedule" was updated automatically with the adjusted break time.
  • If the required break was not completed before the shift ended, the system recorded a "Break Not Completed" exception and synced it with the management system for compliance and operational review.

Interaction

  • Tap "Break Schedule" to view the updated break schedule.
  • After a break was adjusted, the latest break time and adjustment result were shown automatically.

Reminder

  • After a break was adjusted, a push notification was sent before the next break to inform employees that their break schedule had been updated.

Push Notification
Break schedule updated
Your remaining 3-minute break has been added to your next scheduled break.

Break exception flow: interrupted break recorded, merged into next break, updated break schedule shown