ScreenShots

Thursday, January 3, 2008

The Pragma User Interface

Shown is the primary user interface to the Pragma application. Click on it for a more legible view. The timeline at the top controls the display of the Operations Activities. The user assigns time to each activity and costs to the resources used in the data grids at bottom. Time and cost data are propagated through the object chain to arrive at various subtotals and the total Job Cost and Job Time (shown in the upper right corner, on the top line next to the timeline).

The context of the screen is a Job. For the job in view, Operations rows are the thick rows just beneath the timeline. Each operation is composed of one or more activities (steps in a process), and each job is composed of one or more operations, all of which are displayed.

Total costs per activity are shown at the bottom of each column of the schedule display.

Costs and time per operation are shown in the columns at the left on the Operations rows.

Resource costs per job (for all operations) are shown in the columns at the left of the Resource allocation lines (thin row lines beneath Operations with a white background).

Although very lean, the data tracked in this framework is crucial to business planning. Knowing costs and their relation to resource use allows a business to properly set prices and control profitability within the constraints of the market. The goal is in fact to allow the market to constrain and guide the business decisions, not to be constrained instead by a lack of information and analysis.

The manner in which time and costs flow through the object hierarchy is what gives this application life. It is hard for me to imagine a scenario where this framework would be insufficient to model the contribution margin and break-even chart for a business project.

Note that this interface is not a calendar, but rather a scheduler. In other words, the time spans shown are not tied to a calendar, but to an abstract time period, ie, any given 12-hour period or year or whatever. Instead of pairs of start/end date-time fields, time spans are stored as single field durations. In that sense, operations that are defined by a Pragma object form the entire detailed record of an event that could be placed on a calendar, where it may appear as a single object. The only difference to start would be that the scheduled event attaches a start date to the Pragma scheduler object.

When a Pragma is defined, it is essentially an estimate, a forward-looking abstraction. When placed on a production calendar and extended to match real quantities of production, the Pragma object becomes a historical record. When placed into a planning calendar and extended for anticipated demand, the Pragma object becomes a part of a cash flow projection.

Time, money, and resources being the foundation of business, this is where Pragma begins.

No comments: