Hot-housing, not warehousing

Packola is about getting the most out of each piece of data. We ruthlessly reduce the number of figures, so that each one works hard for its place in the system. Sometimes we call this One Core Truth.

Or we contrast it with the Data Warehouse approach. Where that is about bulk and comprehensiveness, Packola is about indivisible precision. Sweat the data. Hothouse it.

Grid Grouping

Before:

After:


When a grid exists as multiple boards, say one per year of account, Packola's Grid Grouping concept lets the user switch between looking at one and looking at all together. The instructions for grouping are subtle, but the screens above show a typical scenario. A title line is copied, here just the currencies, followed by a line from each board in turn, then a total. This is repeated for a selection of the lines on the boards.

Anatomy of a Packola Screen


Here is a typical, though fictional, screen shot from Packola.

We're looking at a board called Fees Analysis / All - you can see that title in the tabs just above the grid of data. We also have open the Trial Balance grid for years 2006, 2007 and 2010.

Cell L13 has just been clicked on, and shows as white on dark blue. It's a formula cell, so the formula is shown just above the grid, and the cells it uses are shown with heavy borders : C13, D13 and E13. The formula uses the WSGBPA method to do a GBP conversion at Average rates.

Cell colours are used to distinguish different types of cell. F3 is an entered figure. G3 is an entered figure that has not yet been set. C6 is a formula. J8 is a carry forward figure. A6 is a logic cell. C11 is a precedent figure copied from another board. C3 is a group precedent, summing a value across multiple boards.

F3 also has a comment attached, as shown by the red marker.

Database Diagram


Structural Data controls the design of the grids
Exercise has a row for each month which most other data hangs off
MicroGrid has a row per designed grid
MGCell has a row per cell in a MicroGrid
Scope defines which instantiations of a grid might exist - per year, per currency etc
Deck links MicroGrid and Scope, and sets which grids are instantiated as Boards
DiffScope sets the navigation between Boards of different Scopes
Appearance sets the display format for a cell - with commas, decimal places etc
GridGroupCommand controls the way a set of Boards are grouped for display

Primary Monthly Data covers the values we expect users to change
Datum holds entered values, including a dated history of each
Adjustment holds adjustments, overrides and comments against squares
ExchangeRate holds the exchange rates, and is universal, not per exercise

Secondary Monthly Data covers values which may change should an exercise differ from the previous month
WorkFlow and WorkStep guide the user through the monthly process
SpecialCase and SpecialUsage provide a mechanism for values that affect multiple squares
ExportParameter holds the information for uploading a square's value as a journal into the Accounting System
FetchInstruction has the knowledge of Excel worksheet cells that can be uploaded into Packola

System Data covers standard elements
Operator has a row for each user authorised to access the system
Session has a row for each occasion a user logged on
Preference controls certain system-wide values

Later Additions
COASubset, COACode and COADatum cover the chart of accounts treatment added October 2010

Making the Easy Things Trivial

Packola's goal is to make the easy things trivial. Then your attention can focus on what's important.

As much as possible, we make Packola fetch data automatically and safely. Then we give you clear places to put amendments. That leaves you to worry about the significant issues in your figures.

Workflows

A workflow can remind you what you're meant to do next, help you do that task, and let you show that you've done it.

In Packola we've a screen which shows a flow through any number of related steps. You can load the relevant board just by right-clicking on the step. Simple but effective.

It's all about streamlining

Packola is all about streamlining the process. We identify the important outputs. Then we work back to the inputs that are required and automate them. In a perfect world, that's it: one streamlined reporting cycle.

We've never done one like that. In the real world there are inputs which can't be automated, discretionary options which need to be allowed. But we still only do what needs to be done, pruning away figures that used to interest someone but are now just a distraction. Like a Formula One car, the end result has a shape which is not 100% sleek, but is as streamlined as it possibly can be.

Grids, Boards, Decks, Squares and Cells

Let's be clear about some crucial nomenclature.

A grid is made up of cells. The grid's design specifies the cell types, where precedent cells some from, how data is fetched from external systems and so on.

Each grid then exists for one or many Scopes. That is, it exists separately for e.g. each year of account, or each year and currency. We call the combination of a grid and a scope a deck.

When you come to use the system, you see boards made up of squares. The board will have live data in it, and Packola lets you edit that, move around to related boards and so on.

It's often safe to mix up grids and boards, or cells and squares, but when we wish to be unambiguous we will us this terminology:
Cell B17 on the Bad Debts grid is a scoped cell.
Square B17 on the Bad Debts board for 2007 has a value of 1,234.

Corner Mark

Packola uses small coloured triangles in the corner of cells to draw attention to them. Like Excel, we use a red triangle top right when there's a comment against the cell.
We also use a green triangle top left when there's an Adjustment. This follows Excel's method for indicating a formula error. In Packola the error is to use an adjustment at all, because Adjustments are Evil.

Special Cases

Packola has a mechanism for the carbuncle figure. That number which represents a one-off situation and which doesn't fit into the regular calculation. Perhaps its an exchange rate adjustment to cover the recent huge shift in rates. Perhaps its a reserving position which you may or may not want to include in the return.

We call these Special Cases. You can define as many as you want, and then replace different cells with that value. If you change the Special Case, all the related cells are changed. You can put it in an adjustment or a formula by referring to the case's name, not its value.

Find Function


On the toolbar, there's a pair of binoculars which let you Find a number anywhere in the exercise. With a tolerance to allow for rounding errors. It's striking how often certain numbers are copied around.

Robustness

Experience shows that Excel is not robust. Each new reporting exercise needs some alterations to the spreadsheet structures. Perhaps the names of linked workbooksare changed. Perhaps formulae need to be dragged down to new cells, or whole new worksheets added. Making those changes is a manual task which can go wrong or be overlooked.

Packola is more robust because the structure needs no changes for a new exercise. Robustness is designed in.

One Core Truth

I asked my customer what his success criteria for Packola were. "One Core Truth" he said. Any number in the system existed once. Another number dependent on that used it directly.

Packola supports this by a philosophy of simplicity, by an attitude of reduction and by the Find function. If there are competing truths, then we find the multiple versions and then reduce them to One Core Truth.

Cell Types

Text cells have fixed label text. They're white.
Formula cells calculate values from other squares in this board. They're grey.
Scoped cells have a value entered into them. They're gold until a number is entered when they turn yellow.
Precedent cells have a copy of a number from another board. They're light blue.
Group Precedent cells sum a number across a number of similar boards. They're a slightly darker blue.
Brought Forward cells have an editable number that was brought from a previous exercise, such as the year end position. They're pink.
Underwriting cells have a number read directly from another system. They're a strong blue.
Accounting cells have a number read directly from another system. They're green.
Logic cells switch a behaviour on or off. They're purple.
Squares that are a copy of a Special Case are gold.

Go to Anatomy of a Packola Screen post to see how it looks in practice.

Adjustments are Evil

I have seem formulae comprising adding half a dozen cells from different worksheets in different books. And in amongst all that, there's +1234567. Somewhere else, to make things balance, there's -1234567.
Adjustments like this are evil. There's no explanation, no linkage between values, no visibility. Packola allows them, but flags them up with a corner mark and lets you see a list of the adjustments made.
Instead we encourage the use of Amendments. This is a mindset - there's nothing special about the cells. The mindset is that if we expect this value to need changing, we'll give it a visible cell ready for the amendment. If it's empty, that's great, but life is rarely that simple.

Getting the Data in

You can enter the data into the yellow Scoped Cells.
You can paste data as well.
But it's preferable to have numbers directly fetched from Accounting or Underwriting Systems. That way you do less work and make fewer mistakes. We mark those cells with a special colour - a blue for Underwriting and a green for Acounting. If they look wrong you know who to check with.

Reduced Instruction Set

Excel supports formulae that are difficult to read. Though we can use a VLOOKUP, we have to engage our brains to make sure we understand what it's doing. And when we see a formula that's a mile long grabbing data from multiple worksheets and workbooks, well it just make us want to take up market gardening.

Packola's reduced instruction set means you can't do those sorts of things. It's instant to see how any number's come about. The colour of the cell type tells you a lot. Precedent squares are a direct copy of a number calculated on another board. Formulae work only on the squares on the current board. And there's no VLOOKUP at all.

Reduced instruction set means reduced confusion. That leads to confidence and clarity.

Our Own Functions

We support a small number of simple functions designed to make your life easier.
=WSGBPA(B1,CAD) for instance does a GBP Average conversion from CAD. There are others which use the Period End rates, or for conversion into USD.
In =IF(WSYEAR()>2000,B1+C1,0) our function WSYEAR gets the Year of Account for a board's scope.
That's about it. There, that wasn't difficult.

Complexity is Easy

Complexity is easy to create. You just keep adding to what was there before. Before you know it, you have a complex system. Checking that a complex system is correct is very time-consuming. When it's wrong, it may take an age to find out where it's wrong. And you don't have an age, do you?

Packola deliberately keeps things simple. Simple formulae act on clearly visible source data. When two years of account use the same method they share that method, one's not an old copy of the other. Packola helps you find the annoying adjustments that just had to be made. And all the data's live all of the time, you don't even have to click save.