File size: 5,963 Bytes
f40ad3e
34c57d0
 
f40ad3e
34c57d0
f40ad3e
34c57d0
f40ad3e
 
34c57d0
 
 
 
 
 
 
 
f40ad3e
 
34c57d0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
---
title: "ProcessScope | Process Mining Intelligence Lab"
emoji: "🔍"
colorFrom: green
colorTo: blue
sdk: static
app_file: index.html
pinned: false
license: mit
short_description: "Local-first process mining and SLA audits"
tags:
  - process-mining
  - operations-research
  - business-intelligence
  - data-visualization
  - workflow-analysis
  - javascript
---

# ProcessScope | Process Mining Intelligence Lab

**Project 40 of Hugdrigo's research and engineering portfolio.**

ProcessScope is a standalone, browser-based process-intelligence application for analyzing **event logs**, exploring the observed **directly-follows process network**, inspecting **journey variants**, identifying elapsed-time bottlenecks, auditing **service-level agreement (SLA)** performance, and exporting reproducible reports. No backend, external APIs, CDN, tokens, or paid compute are necessary.

## Live application

After the Space is published, open the **App** tab. Start with the synthetic **Order fulfillment** scenario, then switch to **Customer support** or **Permit review**.

## Main capabilities

| Workspace | What it does |
| --- | --- |
| Overview | Cases, event counts, lead-time percentiles, SLA breach rates, completion rate and time-distribution chart |
| Process discovery | Directly-follows network with node selection, transition frequency, and minimum-frequency threshold |
| Journey variants | Ranked exact activity sequences, median lead times, completion and late cases by route |
| Bottleneck explorer | Mean, median and 90th-percentile elapsed time between consecutive events |
| SLA & segments | Editable SLA and audit steps; comparisons across teams, channels and daily cohorts |
| Data & audit exports | Strict CSV import, case explorer, synthetic CSV template, JSON / CSV / SVG / Markdown exports |

### Event-log CSV schema

Required columns: `case_id`, `activity`, `timestamp`. Optional columns: `team`, `channel`, `cost`.

```csv
case_id,activity,timestamp,team,channel,cost
A-001,Received,2026-04-01T08:00:00Z,Ops,Web,12
A-001,Validated,2026-04-01T10:00:00Z,Ops,Web,8
A-001,Completed,2026-04-01T11:00:00Z,Ops,Web,5
A-002,Received,2026-04-01T09:00:00Z,Ops,Partner,10
A-002,Validated,2026-04-01T13:00:00Z,Ops,Partner,6
A-002,Completed,2026-04-01T14:00:00Z,Ops,Partner,8
A-003,Received,2026-04-01T10:00:00Z,Ops,Web,7
A-003,Validated,2026-04-01T12:00:00Z,Ops,Web,7
A-003,Completed,2026-04-01T14:00:00Z,Ops,Web,7
```

**Time zone is mandatory.** Use ISO 8601, for example `2026-04-01T10:00:00Z` or a numeric offset such as `2026-04-01T10:00:00-04:00`. Events within a case are sorted by parsed timestamps; in a tie, their input-row order determines sequence. Each case's `team` and `channel` are attributed from its first recorded event. Cost units are user-defined and are not assumed to be a specific currency.

**Import limits:** at most 3 MB input size, 12,000 events, 5,000 unique cases, 45 unique activities. The application validates headers, quotations, date/time, nonnegative costs, and row structure before changing the currently loaded dataset. Three or more cases are required for user-imported logs.

## Process mining methodology

- **Lead time:** hours between a case's first and last *logged* events, expressed as elapsed calendar time, not business hours.
- **SLA breach:** lead time is **strictly greater** than the selected hour threshold. Unfinished cases are included under this time-span definition.
- **Completion:** the last recorded activity equals the configured completion activity.
- **Required-step audit:** case lacks a named activity; it is only a single rule, **not** full conformance checking.
- **Rework signal:** adjacent repeated activities. It does not detect all types of rework or backtracking.
- **Variant:** exact ordered list of activity labels, with repetitions retained.
- **Directly-follows transition:** consecutive events in the same case; its wait is the observed timestamp difference.
- **Bottleneck ranking:** transition-specific mean elapsed waiting hours, calculated over observed transitions. High wait is not proof of high work effort or root cause.
- **Temporal comparison:** cases ordered by their first event; first and second halves are compared descriptively. **It is not a causal estimate**.
- **Cohort reporting:** cases grouped by first-event calendar date (UTC, after parsing timezone offsets).

### Privacy and limitations

All imported data are processed **locally in the browser** by the static application; it does not send them to a server. However, **never commit sensitive CSVs to a public Space**, and take care when sharing exported reports. The provided examples are entirely **synthetic** and do not reflect real businesses or government services. Conclusions depend on log coverage, event definitions, timestamps, and data quality. This is an exploratory research demo, not a certified process-audit or compliance platform.

## Reproducibility & tests

The separate source/test bundle includes:

- A dependency-free JavaScript analytics core and application UI.
- **202 core assertions** for calculations, seeded scenarios, parser failures, import limits, exports and independently checked synthetic cases.
- **132 interactive Chromium checks** for navigation, filtering, state changes, CSV imports, exports, user interface and responsive behavior.
- Desktop and mobile screenshots.

These tests were executed locally. A final deployment check should be performed in the Hugging Face **App** tab after publication.

## Deployment

1. Create a new Hugging Face Space called `processscope-process-mining-lab`.
2. Choose **Static**, **Blank**, **Public**, and **MIT**.
3. Upload only the unpacked `README.md`, `index.html`, and `LICENSE` files, at the Space root.
4. Commit to `main` and open **App**.

## Technology

HTML5, CSS3, vanilla JavaScript, SVG, browser FileReader and Blob APIs; no third-party runtime dependencies.

## License

MIT. See [`LICENSE`](LICENSE).