Skip to main content

UX redesign: Attendance, shifts & time

Part of the UX gap analysis. Places, patterns and treatments follow the IA & principles. Spryple facts come from the crawled Help Center; click counts are estimates (see evidence).

2. Attendance, Shifts & Time​

Scope: 53 documented attendance screens, workflows C1–C21 and L11. Facts about Spryple come from the Help Center extracts and screenshot notes; anything else is marked "not documented". Click counts are documented-actions estimates (baseline) and redesign estimates (taps), per the method in 00-ia-and-principles §5.

2.1 UX issues found​

IDIssue (pattern)EvidenceProsConsHow we handle it (place · pattern · principle)
UX-ATT-01One job, four pages, four histories. Attendance request, permission, regularization and shift change each have their own page, form, edit/delete and history (Permission History, Approval History, shift change records). Pattern: separate request modules.Screens "Attendance Request", "Request Permission", "Shift Change Request", "Attendance Regularization", "Permission History", "Approval History"; C2, C5, C6, C7Each form is short and specific; the user always knows which form they are inEmployee must know which module owns the job before starting; four histories to check one status; vocabulary drifts (Deleted vs Cancelled)P-REQ · PAT-3 (+ PAT-10 for history) · UXP-2, UXP-8: one "+ Request" sheet with type picker, one My requests list
UX-ATT-02Three approval entry points for one request. Team widget ("Approve attendance"), dashboard "Approve request", and side-nav "Pending Approvals" all open the same Approval for Attendance page. Plus separate side-nav items for Approve Permission, Regularization Approval, Approve Shift Change Request.C4 ("three ways"); evidence: 3 entry points; screens "Approve from Main Dashboard", "Approve request (Dashboard)", "Pending Approvals (Side Navigation)", "Approve Permission", "Regularization Approval", "Approve Shift Change Request"Approval is reachable from wherever the manager happens to be; the Approve/Reject popups are simpleSix places to look for pending work; manager can miss one type; every approval is a page open, popup, submit (about 4 actions each)P-INBOX · PAT-2 · UXP-2, UXP-4: single inbox, swipe or bulk approve; Home shows a "5 pending" action card that deep links to it
UX-ATT-03About 20 attendance reports, rebuilt per role. The same data appears as separate screens for Super Admin, Admin, Manager and Employee: Attendance Summary Report (3 audiences, 5 appearances in the evidence), Summary Report, Manager Detailed Report, Monthly Detail Report, Missed Punch Report (4 appearances), Current Day (3), Punch Summary (3), Late Attendance, Extra Days, Penalty Days, Overtime, Shift wise, Monthly Shifts.Attendance slice screens 1–6, 22–24, 34–37, 50; evidence "most repeated screens"; C19 ("common pattern: select City-Branch, Manager, From and To, Search")Role-specific reports can be tuned to what that role needs; permissions are simple to reason aboutDuplicated screens drift apart; a user changing role relearns the filters; about 4 filter actions before any data showsP-INSIGHT · PAT-8 · UXP-3: one Attendance topic in the Reports centre, Scope switch (Me / Team / Location / Org), saved views
UX-ATT-04Regularization only via a menu, though the missed punch is already known. The system already knows a record is "check in but no check out" (C7 note), yet the employee must go to the Attendance Regularization table, or the Missed Punch Report, to act. The manager has a separate Manager Attendance Regularization page with Full Day / Half Day radio lists.C7, C8, C18; screens "Attendance Regularization", "Manager Attendance Regularization", "Missed Punch Report"The table gives a focused list of days to fix; manager bulk multi-select existsProblem is detected but not pushed; the user has to find it. Missed Punch Report only shows data when Rule 35 (default punch-out) is Yes, a hidden dependencyP-HOME · PAT-1 (+ PAT-11): "Fix" action card on the day itself; manager gets an exceptions queue in Team today · UXP-1, UXP-6
UX-ATT-05On-behalf requests duplicated. "Add a request" on the manager dashboard and "Request Behalf of Employee" in side navigation open the same page; the employee name is prefilled and disabled on one route, selectable on the other.C3; screens "Dashboard", "Add a request (Dashboard)", "Request Behalf of Employee (Side Navigation)"Dashboard route saves a step when the employee is already knownTwo routes to one form; on-behalf exists only for attendance requests (other types: not documented in this slice); about 12 actionsP-REQ · PAT-3 · UXP-2: "For: Me / Team member" switch on the one sheet; Team today and roster open the sheet pre-filled for that person
UX-ATT-06Excel upload depends on a vendor template. Manager uploads a file in the left menu; "the implementation team provides the suggested Excel sheet". Steps stop at "submit"; validation and error feedback are not documented.C12; screen "Excel Upload"Works for tenants with no devices and for migration; familiar to HRTemplate is not self-serve; no documented preview or error report, so a wrong file is found after the fact; a menu item under Manager onlyP-PEOPLE › Bulk import · PAT-7 · UXP-6: downloadable template, dry-run report, commit and 24 h rollback (FR-ORG-012, FR-ATT-036)
UX-ATT-07Overtime is "hours beyond shift" with no review. The Overtime Report treats extra hours beyond shift hours as OT; L11 only sets a minimum work-hours-per-day figure. No approval, rounding, cap or comp-off outcome is documented.C19 (Manager: Overtime Report); L11; screen "Overtime Report"Zero effort: OT appears automatically; simple to explainEvery stray minute becomes OT; nobody reviews genuine OT; shape of payout not documentedP-INBOX (OT claims) + P-SET › Policies › Attendance › Overtime · PAT-11, PAT-9 · UXP-6, UXP-5: OT candidates arrive as claims; manager approves all, part or none (FR-ATT-027/028)
UX-ATT-08Attendance rules live in three places. Shift master (grace, lates, deduction), HR Policies (Rules 16–48: week-offs, half-day hours, regularization lookback, default punch-out, lunch/tea, extra days, week-off penalty) and Payroll Policies. Extra-day slabs and penalty designations are further separate admin tabs.C9, C10, C16, C18; HR Policy rules 16–18, 19–21, 25–26, 29, 32–33, 35, 43–48; screens "Extra Days Slab configuration", "Applicable Designations for Penalty"Each area is individually editable; slab table is explicitAdmin cannot see the full attendance rule set in one place; effect of a change is not shown (impact preview not documented)P-SET › Policies › Attendance · PAT-9 · UXP-5, UXP-9: one plain-language editor, example and impact preview, effective date
UX-ATT-09Shift planning is split across five screens. Shift configuration, Week off configuration (3 appearances), Shift rotation Sequences, Assign Rotation Shift and Reassign Rotation Shift. Rotation takes about 18 actions; how the sequence advances automatically is not documented.C9, C10, C11; screens 9, 11, 27, 29, 33Each step is explicit and auditable; shift history is viewablePlanner cannot see the result as a grid; shifts, week-offs and rotations are edited in different places; no coverage view while editingP-TEAM › Roster planner · PAT-4, PAT-12 · UXP-1, UXP-4: one grid with bulk assign, week-offs and rotations in the same view
UX-ATT-10Shift swap is hidden inside the approval step. The manager picks a swap employee from a dropdown while approving; whether it is mandatory and how the other employee is informed is not documented.C5 (Not documented list)One decision handles both rostersThe swapped colleague has no say or notice (not documented); no coverage checkP-REQ + P-INBOX · PAT-3, PAT-2 · UXP-5: employee names the colleague on the request, colleague accepts in Inbox, manager sees coverage (FR-ATT-017)
UX-ATT-11Reports and approvals are not at the point of use. The monthly detail is a report, not the calendar; the calendar shows status but opening a day to see punches, photos and source requires the report.Screens "Calendar", "Check In/Out", "Monthly Detail Report"; spryple-analysis §21.3 (popup shows first and last photos)Calendar is a good overview with colour legend (P, A, W, L, H, HD, WP, HP, HL)Detail lives elsewhere; employee cannot see why a day is A or HDP-TIME · PAT-4 · UXP-5: day drawer with punches, photos, source, request status and a "How calculated" line
UX-ATT-12Request edit and delete are scattered table icons. Edit shows a form again; Delete asks "Yes"; View is a separate icon after decision; permission has a separate cancel icon for approved records.Screens "Edit Request", "Delete Request", "View"; C2, C6Familiar CRUD icons; confirmation guards against mistakesPer module, inconsistent; terminology differs (Deleted, Cancelled)P-TIME › My requests · PAT-10 · UXP-8: one list, one status vocabulary, Withdraw while Submitted, timeline on open
UX-ATT-13Late and extra-day results are separate reports, not in the month. Late Attendance report (shift, in time, late hours); Extra Days and Penalty Days are two radio buttons on a report. Screenshot sample shows implausible late hours (672:00:00), a calculation-quality signal.Screens "Late Attendance Report", "Extra Days", "Penalty Days"; C17; spryple-analysis §21.3Dedicated report with PDF and Excel downloadEmployee learns of penalty after the fact; no explanation of the ruleP-TIME + P-INSIGHT · PAT-4, PAT-8 · UXP-5: lates, extra days and penalties as badges in the calendar with the rule named; reports centre filter for HR
UX-ATT-14Two capture models for shared devices: Receptionist login and face enrolment by a manager. Receptionist selects All or Select employees to capture attendance; face enrolment is done by manager or receptionist from separate screens; no liveness cue visible.C13, C14; screenshots §21.3Works for employees without smartphonesA person with a login punches for others; no liveness or anti-spoof cue is visible in screenshotsP-KIOSK · PAT-11 · UXP-7: location-scoped kiosk with face/PIN; assisted punch with reason and photo (FR-MOB-012, -017)
UX-ATT-15Approval History and request history are separate lists. Manager sees approved and rejected attendance requests in Approval History and permission outcomes in Permission History.Screens "Approval History", "Permission History"; C4, C6Quick audit by moduleTwo histories for one manager job; no combined filter by typeP-INBOX · PAT-2, PAT-10 · UXP-2: Inbox "Done" filter; same list, status chips
UX-ATT-16Admin-only setup is mixed with daily menus. Mapping IDs, Messages Master, Extra Days Slab sit alongside daily shift and report pages in the Attendance module; geo-fence radius has steps "not documented".C1, C15, C20; screens 7, 8, 12, 13; §21.3 (radius 200 m example, options not shown)Admin finds attendance-related setup in the attendance menuDaily users see setup items; geo-fence steps and out-of-fence behaviour are not documentedP-SET › Devices & locations, Policies · PAT-9 · UXP-7: web-first setup; geo-fence radius with live map and mode (block / flag / off) (FR-ATT-003)

2.2 Where every feature goes (all screens addressed)​

#Spryple screenAudiencesNew place › sectionTreatmentWhy / how it works now
1Monthly Attendance ReportSuper Admin, AdminP-INSIGHT › Attendance › Monthly registerMERGEOne catalogue entry; Scope = Location or Org; absent, present, late, total counts kept; saved view and export
2Monthly Shifts ReportSuper Admin, AdminP-INSIGHT › Attendance › Shift coverage; also P-TEAM › Roster planner coverage rowMERGEPresent / scheduled per shift per day shown while planning (e.g. 3/109 style in §21.3), and as a report
3Attendance Summary ReportSuper Admin, Admin, EmployeeP-INSIGHT › Attendance › Summary (Scope Me / Team / Org); Me view is the P-TIME month summaryDEDUPEOne of five appearances; first in, last out, hours, photos and source stay in the day drawer and export
4Current Day Attendance ReportSuper Admin, Admin, ManagersP-TEAM › Team today (managers); P-INSIGHT › Attendance › Today (Org)EMBEDLive status with check-in photos in the drill; no search form
5Punch Summary ReportSuper Admin, Admin, ManagersP-INSIGHT › Attendance › Punches; P-TIME day drawer for one personMERGEMultiple in/out per day kept; City-Branch is the scope filter
6Missed Punch ReportAdmin, Managers, EmployeeP-HOME action card "Fix"; P-TEAM › Team today exceptions; P-INSIGHT saved viewREPLACEMissed punch becomes an action, not a report; report remains as a saved view for HR (4 appearances collapse to 1)
7Mapping ID'sAdminP-SET › Devices & locations › Biometric mappingKEEP+Bio-metric ID to employee, plus bulk import and an Unmapped punches queue (FR-ATT-006/007)
8Attendance Messages MasterAdminP-SET › Templates & messages (module: Attendance)REPLACEOne Templates & messages editor for every module: notification templates plus terminology and label overrides (FR-ORG-017). Editing every on-screen error message per tenant is not carried over (FR-NTF-017, Won't)
9Shift configurationAdmin, ManagersP-TEAM › Roster planner (assign); P-SET › Policies › Attendance › Shifts (shift master)KEEP+Pick employees, drag or bulk-assign a shift and week-off, date range; publish with notification
10Shift wise ReportAdmin, ManagersP-TEAM › Roster planner coverage; P-INSIGHT › Shift coverageMERGESame data as screen 2, one source
11Week off configurationAdmin, ManagersP-TEAM › Roster planner › Week-offs; default pattern in P-SET › Policies › AttendanceDEDUPEThree appearances become one grid control; per-employee history kept
12Extra Days Slab configurationAdminP-SET › Policies › Attendance › Extra daysREPLACESlab by designation (min days, max days, eligible extra days) inside a plain-language editor with example (FR-ATT-029)
13Applicable Designations for PenaltyAdminP-SET › Policies › Attendance › Week-off penalty (applicability)REPLACEActive/Inactive list becomes the applicability picker of the penalty rule (FR-ATT-030)
14Managers (dashboard)ManagersP-HOME manager widgets; P-TEAM › Team today and team calendarMERGEPending approvals, absent counts and employee list in calendar all kept
15Dashboard (Request Behalf of Employee)Managers, EmployeeP-REQ with "For" switchDEDUPEOn-behalf is a switch on the one sheet
16Add a request (Dashboard)ManagersP-REQ prefilled from P-TEAMDEDUPESame as 15; employee prefilled when opened from a person
17Request Behalf of Employee (Side Navigation)ManagersP-REQDEDUPESame as 15; no side-nav item
18Approve from Main DashboardManagersP-HOME action card to P-INBOXDEDUPE"Approve 5" card opens the Inbox filtered
19Approve request (Dashboard)ManagersP-INBOXDEDUPEOne approval page, now a context panel
20Pending Approvals (Side Navigation)ManagersP-INBOXKEEP+Becomes the single inbox with bulk and swipe
21Excel UploadManagersP-PEOPLE › Bulk import › AttendanceREPLACESelf-serve template, dry-run, commit (FR-ATT-036); vendor dependency removed
22Summary ReportManagersP-INSIGHT › Attendance › Summary, Scope = TeamDEDUPESame report as 3
23Manager Detailed ReportManagersP-INSIGHT › Attendance › Punches; P-TEAM drill to day drawerDEDUPEDetails per person per day opened from the team view
24Late Attendance ReportManagers, EmployeeP-TIME calendar late badge (Me); P-INSIGHT › Lates (Team)MERGEShift, in time, late minutes with the rule that applied
25Approval HistoryManagersP-INBOX › Done filterMERGEApproved/rejected with timeline (PAT-10)
26Approve Shift Change RequestManagersP-INBOX (type: Shift change)MERGESwap is chosen by the requester and accepted by the colleague
27Shift rotation SequencesManagersP-TEAM › Roster planner › RotationsKEEP+Define ordered shifts, step length, anchor date, location (FR-ATT-013)
28Approve PermissionManagersP-INBOX (type: Permission)MERGEApprover may edit minutes inline before approving
29Assign Rotation ShiftManagersP-TEAM › Roster planner (assign rotation to selection)MERGESelect employees, choose rotation and start step
30Permission HistoryManagersP-INBOX › Done; P-TIME › My requests (employee)MERGEOne status list
31Manager Attendance RegularizationManagersP-TEAM › Team today › Exceptions (bulk table)REPLACEFull-day and half-day exceptions listed; multi-select, then attendance or leave on behalf (FR-ATT-025)
32Regularization ApprovalManagersP-INBOX (type: Fix attendance)MERGEBulk approve; manager-made fixes are auto-approved, so nothing to approve for them
33Reassign Rotation ShiftManagersP-TEAM › Roster planner › Reassign from dateMERGEPast days unchanged (FR-ATT-013)
34Overtime ReportManagersP-INBOX (OT claims); P-INSIGHT › OvertimeMERGEComputed OT candidates reviewed, not just reported (FR-ATT-028)
35Extra Days & Penalty ReportManagers, EmployeeP-INSIGHT › Attendance › Extra days and penaltiesMERGEHeading-only in the Help Center; one entry with two tabs
36Extra DaysManagers, EmployeeTab of screen 35; badge in P-TIME monthMERGEWeekoff-present, holiday-present, slab count
37Penalty DaysManagers, EmployeeTab of screen 35; badge in P-TIME monthMERGESame as 36
38LoginEmployeeCommon sign-in (Access part); lands on P-HOMEDEDUPENot redesigned here
39Employee DashboardEmployeeP-HOMEMERGEHeading only in the Help Center; punch card and action cards
40CalendarEmployeeP-TIME calendarKEEP+Codes A, P, W, L, H, HD, WP, HP, HL, with day drawer
41Check In/OutEmployeeP-HOME punch cardEMBEDFirst In / Last Out shown beside the punch button
42ShiftsEmployeeP-HOME punch card; P-TIMEEMBEDCurrent and next shift with date and time
43Requesting AttendanceEmployeeP-REQMERGEThree ways collapse to one sheet
44From Main DashboardEmployeeP-HOME action cardDEDUPEPending days appear as cards
45Send a requestEmployeeP-REQ prefilled from the cardDEDUPEPending date prefilled
46Attendance RequestEmployeeP-REQ › Work from home / On-dutyREPLACEWork type, dates, half-day, reason, attachment kept
47Edit RequestEmployeeP-TIME › My requestsMERGEEditable while Submitted
48Delete RequestEmployeeP-TIME › My requestsMERGEWithdraw with confirm
49ViewEmployeeP-TIME › My requests timelineMERGEDecision, who, when
50Monthly Detail ReportEmployeeP-TIME month view + exportMERGEDownload Excel and PDF from the calendar
51Shift Change RequestEmployeeP-REQ › Shift changeMERGEFrom-shift auto filled
52Request PermissionEmployeeP-REQ › PermissionMERGEMinutes, date, reason; one per day rule shown at entry
53Attendance RegularizationEmployeeP-HOME action card "Fix"; P-TIME day drawerREPLACEEnter out-time or convert to leave in one sheet

Rows covered: 53 of 53

2.3 Redesigned workflows​

Baseline = documented UI actions from the workflow-actions data. After = estimated taps (decisions and data the user must provide; prefilled defaults not counted).

IDWorkflowSpryple documented UI actionsRedesigned flow (where → steps)Taps after (estimate)Saving
C1Biometric ID mapping5P-SET › Devices & locations › Biometric mapping → pick device user (or bulk import) → pick employee → save; unmapped punches queue lists who is waiting32
C2Attendance request by employee (3 entry points)15P-HOME "Fix" card or P-REQ → type (prefilled by day) → reason → submit312
C3On-behalf request (manager)12P-TEAM person or P-REQ → For: team member → type and dates → submit (auto-approved)48
C4Attendance request approval (3 ways)12P-INBOX → swipe or bulk approve111
C5Shift change and swap11P-REQ › Shift change → to-shift (+ colleague) → submit; colleague accepts in P-INBOX; manager approves in P-INBOX56
C6Permission request and approval10P-REQ › Permission → minutes → submit; manager approves in P-INBOX (edit minutes inline if needed)46
C7Regularization (employee)8P-HOME "Fix" card → enter out-time (or choose leave) → confirm26
C8Manager regularization and approval14P-TEAM › Team today › Exceptions → multi-select → Attendance or Leave (auto-approved)311
C9Shift creation and assignment8P-SET › Policies › Shifts (create once); P-TEAM › Roster planner → select employees → shift → range → publish44
C10Week-off configuration3Roster planner › Week-offs → pattern → select employees → save30
C11Shift rotation: create, assign, reassign18Roster planner › Rotations → name and pick shifts → save; select employees → rotation and start step → publish; reassign = same with "from date"612
C12Excel upload of attendance8P-PEOPLE › Bulk import › Attendance → pick file → review dry-run → commit44
C13Face capture and enrolment1P-SET › Devices & locations › Face enrolment → invite (bulk); employee self-captures on phone; status Verified / Not verified in Person 3601 (HR)0
C14Receptionist check-in / out7P-KIOSK → employee looks at camera (face/PIN); assisted punch only for visitors16
C15Geo-location configuration0 (steps not documented)P-SET › Devices & locations → place pin on map → radius → mode (block / flag / off) → save3n/a
C16Extra days slabs and penalty designations8P-SET › Policies › Attendance › Extra days / Week-off penalty → answer plain-language prompts → preview → effective date44
C17Extra Days and Penalty Days reports5P-TIME month badges (employee); P-INSIGHT › Extra days and penalties (saved view)23
C18Missed Punch report and default punch-out6Home "Fix" card (employee); Team today exceptions (manager); P-INSIGHT saved view (HR); default punch-out is a policy value, not a precondition for the report24
C19Attendance report retrieval4P-INSIGHT › Attendance → Scope → saved view or export22
C20Attendance Messages Master2P-SET › Templates & messages → edit → save20
C21Shift wise report1Roster planner coverage row, visible with no taps01
L11Overtime duration2P-SET › Policies › Attendance › Overtime → minimum minutes (with rounding and cap in the same editor) → save20
Total1606199 (about 62%)

C15 saves nothing because the documented flow has 0 recorded actions; the 3 taps are our estimate.

Journey 1. Daily punch on mobile (C13 step 5, C14, C15)​

  • Before (Spryple, documented): The employee self check-in or check-out in the HCM app with face configuration; geo-located check-in works within a manager-configured location; the radius and out-of-fence behaviour are not documented; the receptionist route needs a login and selecting All or Select employees (7 actions, C14). Timings are seen in the web dashboard.
  • After: P-HOME punch card shows shift, geo status and a single Punch button (PAT-1). Selfie plus location are captured in the same tap (FR-ATT-002). Inside the fence: punch is done. Outside (flag mode): a one-line reason field appears. Offline: queued with a banner (FR-ATT-005). At shared sites, P-KIOSK takes face or PIN with no login.
  • Taps: 1 (phone), 0 at kiosk (face), versus 7 for the receptionist route.
  • Automatic: shift selection (auto-shift for multi-shift, FR-ATT-018), source tagging, geo-fence check, default punch-out at shift end if policy says so (PAT-11).

Journey 2. Missed punch fix (C7, C18, C8)​

  • Before: Employee checks in but not out; the record appears in the Attendance Regularization table; edit icon, enter out-time, save icon (or leave icon, choose leave type, submit) = 8 actions. The Missed Punch Report (6 actions) shows data only if Rule 35 is Yes. Manager has a separate page: Full Day radio, multi-select, attendance or leave icon, confirm; then a separate Regularization Approval page (14 actions together).
  • After: Next morning Home shows an action card "Yesterday: no out punch. Fix" (PAT-1). Tap Fix → sheet prefilled with the date and the provisional out-time per policy; adjust time or switch to "Leave" → confirm. The day drawer in P-TIME carries the same Fix button. For managers, Team today › Exceptions lists the team's missed punches; select several → Attendance or Leave, auto-approved at manager level with a required reason (FR-ATT-025). Reminders and period-close auto-resolution run by policy (FR-ATT-020, -032).
  • Taps: employee 2; manager 3 for the whole team.
  • Automatic: detection, provisional punch-out, reminder, lookback limit shown at entry ("2 of 4 used this month", UXP-5), period-close resolution.

Journey 3. WFH / On-duty request (C2, C3)​

  • Before: Three entry points (Alerts on main dashboard, "Send a request" under Pending Attendance, Attendance Request in the module) lead to one form: work type, from, to, reason, half-day ticks, attachment, submit (15 actions). Manager on behalf uses two more routes (12 actions). Mobile also requires a Shift (§21.3).
  • After: "+ Request" → "Work from home / On-duty" (or the Home card for a pending day). Dates default to today or the pending day; shift auto-filled; reason is the only typed field; submit shows "Approver: Priya, usually answers in 2 h". Manager: open from a team member (P-TEAM) or flip "For" to the person; request is auto-approved (FR-ATT-023, US-ATT-11).
  • Taps: 3 employee, 4 on behalf.
  • Automatic: shift, date defaults, per-type monthly limit shown before submit, notification to approver, calendar update on approval.

Journey 4. Approvals (C4, plus C5, C6, C8 approval steps)​

  • Before: Three ways to open the same Approval for Attendance page; Approve opens a popup, Submit approves; Reject needs a reason (12 actions). Permission, regularization and shift change each have their own approval page. Bulk approval for attendance requests is not documented; regularization approval allows multi-select.
  • After: One P-INBOX. List grouped by type with filters, a context panel (team calendar, balance, policy check, history), swipe-right to approve on mobile, select-all and Approve for bulk with a common reason for reject (FR-NTF-011). Permission minutes can be edited inline. OT claims sit in the same list. Home shows "7 to approve" as an action card.
  • Taps: 1 per item, or 2 for a batch of any size (select all, approve).
  • Automatic: items arrive from all modules; manager-raised requests are auto-approved so they never enter the queue.

Journey 5. Shift and roster planning with rotation and swap (C9, C10, C11, C5, C21)​

  • Before: Admin creates a shift (name, description, times, grace, lates, deduction). Manager assigns shift and week-offs on one page, week-offs on another (3 appearances), rotation sequences on a third, assign rotation on a fourth, reassign on a fifth (18 actions for rotation alone). Shift change approval is a separate page with a swap dropdown. How the rotation advances automatically is not documented.
  • After: P-TEAM › Roster planner: employees by days grid with a coverage row (present / scheduled). Select cells or people → pick a shift, week-off pattern or rotation → publish with notification (PAT-4, PAT-12; drag and drop is R2, FR-ATT-015). Rotations are defined in a side panel (shifts, step length, anchor date). Reassign from a date leaves past days unchanged. Swap: employee names the colleague in "+ Request › Shift change"; colleague accepts in Inbox; manager approves and the grid updates both rows with a coverage warning if below minimum.
  • Taps: shift/week-off assignment 4, rotation 6, swap 5 across three people.
  • Automatic: rotation advance, default shift for new joiners (FR-ATT-012), from-shift prefill, notification on publish.

Journey 6. Permission (C6)​

  • Before: Employee: add new, select date, enter minutes, enter reason, submit; one per day; edit, delete or cancel icons. Manager: Approve Permission page, optional edit, approve or reject icon; Permission History for outcome (10 actions). Maximum duration and rejection reason capture are not documented.
  • After: "+ Request › Permission": date defaults to today, start time and minutes with the rule shown ("1 per day, up to 120 min, paid per policy", FR-ATT-026). Submit. Manager sees it in Inbox, adjusts minutes inline if needed, approves. Approved minutes excuse late/early-go automatically; the calendar day shows a "Permission" badge.
  • Taps: 3 employee (+ Request, minutes, submit), 1 manager.
  • Automatic: limit check, paid/unpaid outcome, late excusal.

2.4 UX enhancements beyond Spryple​

  • [Proposed] Smart punch card on Home: shows today's shift, geo status ("Inside Pune HQ, 40 m") and a single Punch button; first IN and last OUT appear instantly.
  • [Proposed] Day drawer with "How calculated": tapping any calendar day shows punches, photos, source, shift, policy version and why the day is HD or A (FR-ATT-019).
  • [Proposed] Pre-emptive Fix cards: the system detects missed punches, short hours and repeated lates and offers the fix on the day, with a daily reminder at a policy time.
  • [Proposed] Live policy preview at entry: "This will use 1 of 2 permissions this month", "Regularization 2 of 4 used", "Balance after: 2.5".
  • [Proposed] Roster coverage warnings while planning (minimum coverage per shift) and a "copy last week" action (FR-ATT-014).
  • [Proposed] Shift swap with consent: colleague accepts before the manager decides (FR-ATT-017).
  • [Proposed] OT review queue: computed candidates, approve all, part (edit minutes) or none; approved OT can go to pay or comp-off (FR-ATT-027/028).
  • [Proposed] Period-close checklist (unresolved missed punches, pending requests, OT claims, unmapped punches) with one-tap reminders before payroll lock (FR-ATT-032).
  • [Proposed] Unmapped punches queue with one-tap mapping, and device health alerts (FR-ATT-006/008).
  • [Proposed] Anomaly flags (out-of-fence, offline, clock drift, impossible travel) reviewed as exceptions, not as reports (FR-ATT-039).
  • [Proposed] Kiosk mode with PIN fallback and liveness (Spryple's screenshots show no liveness cue) (FR-MOB-012..017).
  • [Proposed] Saved views and scheduled delivery for the attendance reports, so HR does not reselect City-Branch and manager each time.

2.5 PRD impact​

Proposed IDUX requirementPriority (MoSCoW)ReleaseSource issue
UX-FR-ATT-01Home punch card: one-tap punch with selfie and location, shift, geo status, first IN / last OUT; inline reason when outside the fence in flag mode (extends FR-ATT-002/003/037)MustR1UX-ATT-11, UX-ATT-16
UX-FR-ATT-02Fix action cards on Home and in the day drawer for missed punch, short hours and lates, prefilled with date and provisional value (extends FR-ATT-020/024)MustR1UX-ATT-04
UX-FR-ATT-03"+ Request" sheet covers attendance (WFH, On-duty, Remote), permission, shift change, regularization with a "For: Me / Team member" switch; no separate on-behalf screens (extends FR-ATT-023/025/026/017, US-ATT-11)MustR1UX-ATT-01, UX-ATT-05
UX-FR-ATT-04Single Inbox for all attendance approvals (attendance, permission, regularization, shift change, OT) with bulk and swipe and a context panel (extends FR-NTF-011, FR-ATT-028)MustR1UX-ATT-02, UX-ATT-15
UX-FR-ATT-05My requests: one list for every attendance request type with Withdraw while Submitted, one status vocabulary and a timelineMustR1UX-ATT-01, UX-ATT-12
UX-FR-ATT-06Time calendar day drawer: punches, photos, source, request status, "How calculated" (extends FR-ATT-019/037)MustR1UX-ATT-11
UX-FR-ATT-07Attendance badges in the calendar for late, extra day, penalty and permission with the rule that applied (extends FR-ATT-022/029/030)ShouldR1UX-ATT-13
UX-FR-ATT-08Reports centre: one Attendance topic with Scope (Me / Team / Location / Org), saved views, export and schedule; replaces role-specific copies (extends FR-RPT-003)MustR1UX-ATT-03
UX-FR-ATT-09Team today with Exceptions tab: live status plus missed punch and half-day lists with multi-select, attendance or leave on behalf (extends FR-ATT-025/038)MustR1UX-ATT-04, UX-ATT-05
UX-FR-ATT-10Roster planner: one grid for shifts, week-offs and rotations with bulk assign, copy week, coverage row and publish notification (extends FR-ATT-012..014, -016); drag and drop stays R2 (FR-ATT-015)ShouldR1UX-ATT-09
UX-FR-ATT-11Shift swap: requester names the colleague, colleague accepts in Inbox, manager sees coverage (extends FR-ATT-017)ShouldR1UX-ATT-10
UX-FR-ATT-12Settings › Policies › Attendance: one plain-language editor covering shifts, grace, lates, week-offs, regularization, permission, extra days, penalty, missed punch with impact preview and effective date (extends FR-ATT-011, -016, -020, -022, -026, -029, -030)MustR1UX-ATT-08
UX-FR-ATT-13OT policy and OT review: typed policy with approval, rounding, caps and outcome; computed candidates reach the Inbox as claims (extends FR-ATT-027/028)MustR1UX-ATT-07
UX-FR-ATT-14Attendance import through Bulk import with downloadable template, dry-run, commit and rollback (extends FR-ATT-007/036, FR-ORG-012)MustR1UX-ATT-06
UX-FR-ATT-15Devices & locations: biometric mapping with bulk import and Unmapped punches queue, geo-fence on map, face enrolment status (extends FR-ATT-003/006/008)MustR1 (device gateway R2)UX-ATT-16
UX-FR-ATT-16Kiosk: face or PIN, location-scoped, assisted punch with reason and photo; replaces Receptionist login (extends FR-MOB-012..017, FR-ATT-010)ShouldR2UX-ATT-14
UX-FR-ATT-17Period-close checklist with reminders before lock (extends FR-ATT-032)ShouldR1UX-ATT-04, UX-ATT-07
UX-FR-ATT-18Decision needed: Attendance Messages Master is Won't in FR-NTF-017; keep notification wording editable in Templates & messages and UI strings in codeCouldR2UX-ATT-16