Boxing clever

Occasionally one comes across the expression "black box" with regards to a piece of software.  The user cannot see the inner workings of the software and may worry about what calculations are being performed.  It is worth taking a step back and looking at the dictionary definition of the term "black box":

black box n1. a self-contained unit in an electronic or computer system whose circuitry need not be known to understand its function. 2. an informal name for flight recorder.
 

Source: Collins English dictionary, Second Edition 1986.

 

Here we can see that the term "black box" is not pejorative when applied to computer system — indeed the majority of commercial software might be considered a black box.  Even open-source software is effectively a black box if you cannot understand the computer code involved.  A fundamental goal of good design is that should never be necessary to see the inner workings of something to be able to understand what it does or how to use it.  In fact, people do this hundreds of times a day without thinking about it: you don't need detailed knowledge of internal combustion engines to drive a car, nor do you need to understand HTTP to use a web browser and read this article.

What you do need is an assurance that something has been built to certain quality standards.  Our flagship product Longevitas contains many cutting-edge features that could not be found elsewhere: automatic deduplication, in-built geodemographic (postcode) profiling and an extensive library of survival models.  How do you gain assurance that these features have been built properly?  We chose the route of publishing our methods in peer-reviewed academic papers, such as Richards (2008), which opened up our processes to hundreds of scrutineers at an Institute of Actuaries Sessional Meeting.  Independent and anonymous reviewers chosen by the journal demand much more disclosure and rigour than merely penning a magazine article or some marketing literature.

It is also instructive to view things from an auditor's perspective — a black box is tamper-proof.  In software terms, the only way to change the outputs is to change the inputs.  This is preferable to auditors as changes to the input data are usually much easier to identify.  However, this approach is also preferable to operational managers — if a key member of staff has changed the code and left the company, do you know what has been changed and why?  And if code can be changed, how can you reproduce old results when challenged?  In contrast, our first ever customer of Longevitas has had four changes of key staff since 2006.  Within his account the current incumbent can look at every model ever fitted by his predecessors, and because they could not tamper with the code he can always reproduce their results when necessary.

Modern life is about using tools and machines whose insides we don't need to see to be able to use: cars, computers, DVD players and mobile phones to name a few.  And where something new is critically important, such as a new drug or medical treatment, we want to see scientific results published in peer-reviewed journals, not mere claims by the manufacturer.  As for implementation, black boxes are highly desirable as tamper-proof systems which reliably reproduce the same output for a given input.

As an interesting aside, "black box" flight recorders are typically orange.

Written by: Stephen Richards
Publication Date:
Last Updated:

Audit features in Longevitas 2

Longevitas software is controlled solely by data inputs and user-selected parameters.  A key feature is the storage of all models ever fitted, together with the input files and parameters to enable the user to reproduce old results.  When a member of your staff leaves a post, the user account is reassigned to the replacement so that a full audit trail of old results are kept and continuity is preserved. 

Add new comment

Restricted HTML

  • Allowed HTML tags: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.