Omniscope Custom Views › strata

Strata

Things that open and close - tickets, sessions, projects, patients on a ward - as a stack of lines over time. How much was open at each moment, and what each one was doing.

Line and scatter

Open the demo in Omniscope Download demo.ioz Sample data: tickets.csv Source on GitHub

Things that open and close - tickets, sessions, projects, patients on a ward - as a stack of lines over time. How much was open at each moment, and what each one was doing.

Live: two weeks of an invented IT service desk, one line per ticket, coloured by team. Strong stretches are work on the ticket, medium ones waiting on the requester, pale ones the queue; small triangles are replies. Drag the zoom slider or the overview strip, and point at a line for its ticket.

The problem it solves

A timeline with one bar per item gives every ticket its own row, so a busy fortnight needs hundreds of rows and the eye cannot see how many were open at once. A line chart of the open count shows the load but loses the items.

Strata stacks the lines that are open at each moment, the longest-lived on top, so the height of the stack is the load; each line rests on the ones beneath and drapes down where one of them ends. Along each line, stretches are drawn strong, medium or faint. In the illustrative service desk above (120 invented tickets), strong is a ticket being worked, medium waiting on the requester and faint waiting in the queue, and the small triangles are replies. Zoomed out to the whole fortnight, the stack shows each day's tickets arriving and the quiet weekend:

Live: the whole fortnight at once, stacked oldest at the bottom. Each day's new tickets go on top, and the stack drops where older tickets close; weekends are quiet.

Where it earns its place

The examples below are illustrative.

Team One line per Strong / medium / faint Moments
Service desk Ticket Being worked / waiting on requester / queued Replies, escalations
Hospital ward Patient stay Treatment / observation / waiting Tests, discharge decision
Software Pull request, session Active work / review / idle Commits, merges
Projects Project Delivery / on hold / planning Milestones
Customer success Onboarding Calls / waiting on the customer / scheduled Emails

How to use it in Omniscope

  1. Bring the data into a workflow, one row per stretch of time, and connect it to a Report block.
  2. Add a view and choose Strata.
  3. Set Layer to the item, for example Ticket, and Start and End to date fields.
  4. Optionally set Label, Colour by, Emphasis (2, 1 or 0 per row) and Emphasis names, and Moment time for rows that mark a moment.
  5. Point at a line for its stretches; click it to select that ticket's rows in the rest of the report.

Why do this in Omniscope

Data and options

One row per stretch of time; up to 50,000 rows.

Option What it does
Layer One line per value
Start, End Each row's stretch (dates)
Label, Colour by The line's name, and lines sharing a colour
Emphasis, Emphasis names Strong (2), medium (1) or faint (0) per row, and what the tooltip calls them
Moment time, Moment kind Rows that are moments on their line, and their kind
Foot line, Working-day marks, Daily meeting The heavy line along the foot, and the working-day marks under it
Stacking, Line labels, Opening How lines are stacked and named, and how the view opens

Tested

Mock harness: the stack, overview and moments drawn for 120 tickets; zooming out to the whole range; pointing at a line (tooltip with the ticket, its stretch named by Emphasis names, and when it was open); selecting a ticket and clearing by clicking empty space; filtering to one team; the three fields alone; a 320 by 200 pane; about 19,000 rows (2,000 tickets, the lines that do not fit counted beside the slider); empty data, unset fields and Start equal to End.

Pointing at a ticket
Pointing at a ticket

Reference

Fields it reads

NameTypeWhat it does
LayerFIELDWhat each line is - a session, a ticket, a project. Its rows are stretches of time; the line runs from its first start to its last end.
StartFIELDWhen each row's stretch of time starts.
EndFIELDWhen each row's stretch of time ends.
LabelFIELDThe name shown for a line - on it, and when pointing at it. Defaults to the Layer value.
Colour byFIELDLines sharing a value share a colour - e.g. a team or a workspace. Defaults to each layer its own.
EmphasisFIELDPer row, 2 strong, 1 medium, 0 faint (the default). Each pixel of a line shows the strongest stretch in it, so a moment of 2 is never lost.
Moment timeFIELDRows with a time here (and no Start or End) are moments on their line, at that time - a commit, say, appended from a table of its own - drawn as a tiny triangle above it. Rows whose Start and End are the same are moments too.
Moment kindFIELDWhat kind each moment is. With this field, the commonest kind is a pinch on the line (a tiny triangle above it, its point on the line) and the next a badge with a tick (a merge, say).
Foot lineFIELDRows with no Layer but a value here are drawn as a heavy line along the foot - up to two values, the more frequent darker. Blank: the foot line is drawn from the lines, wherever any is strong.

Options

NameTypeWhat it does
Emphasis namesTEXTWhat the tooltip calls strong, medium and faint stretches, separated by commas - e.g. Being worked, Waiting, Queued. Empty: strong, medium, faint.
StackingCHOICELongest-lived on top: short-lived layers slide in beneath and lift the long ones. Longest-lived at the bottom: the long ones lie flat, short-lived layers ride on top of them. Oldest at the bottom: new layers go on top.
Line labelsCHOICEWhere the lines still open at the right edge are named; point at any line for its name.
OpeningCHOICEHow the view opens, the first time it loads: glide in from the whole range to about a week on the screen, or replay the whole range from left to right, or neither.
Working-day marksTOGGLEUnder the foot line, each day's 8am-4pm with dots at 8, 12 and 4.
Daily meetingTEXTA time such as 09:30, marked on weekdays with the working-day marks.