Tuesday 3 September 2013

Big Data Training Workshop 1: Introducing Situational Applications

Situational Applications Introduction Article (Image)

BIG DATA TRAINING WORKSHOP 1: INTRODUCING SITUATIONAL APPLICATIONS

Situational Applications are any software applications designed to serve the long-tail of demand from individual information workers (or small communities of workers) for ‘better ways to analyze data, capture it and act on it’.  They may be created for a moment and then discarded, or later adopted and absorbed into enterprise systems.  Sometimes they are unkindly described as throw-away or experimental applications but I prefer to think of them as the first step on the accelerated business innovation journey.  They are key to the world of BIG DATA because they are the tool-kit to apply learning lessons from data and turn it into better ways of working.

I’ve had such overwhelming feedback and interest on the Big Data Situational Applications articles I’ve penned that it’s encouraged me to write a few more that walk through how we use Encanvas to assimilate data from various sources, analyze it and act on what matters.  Of course there are a wide variety of Encanvas partners and solutions providers that offer ‘off-the-shelf’ industry solutions so in this series of articles I’m assuming that the application is something ‘custom’ or new that hasn’t been addressed before.

In this series of articles I plan to include the following topics:
  1. Introduction to situational applications 
  2. Data assimilation: what it is and how to do it
  3. Operational Analytics: making sense of data with useful tools
  4. ACT: designing apps to iterate processes one canvas at a time
The obvious article that’s missing is a training course on HOARDING technologies like Hadoop, Microsoft Business Intelligence, SAP hana etc.  The reason I’ve missed this step is because (a) I don’t know anything about it and, (b) In many cases you don’t need to hoard data and organize it before creating situational applications.

Just a few brief introductions before we start…
If you’ve not encountered Encanvas software before, it’s basically a business computing platform designed to exploit data held in different places and different formats by designing situational applications to analyze data and apply learning lessons. Unlike business intelligence systems and other platforms that HOARD data and create a data warehouse before you can do anything, Encanvas connects to, and organizes data into new structures by exposing data to designers in a consistent format to enable ‘drag and drop’ selection and formation of new data structures.  It’s really easy to use for business analysts, and it produces results quick, so it’s realistic to develop situational applications in workshops with stakeholders, users and sponsors present (yes really!).

Companies like USTech Solutions, NDMC Consulting, Ambridge Consulting, Nybble, SovereignTech and others use Encanvas as a tool-kit to author situational applications as a service.


Everything you wanted to know about situational applications but were afraid to ask
The first ever situational application platform was the spreadsheet.  Times are changing.  Information workers need to deal with much bigger data sets and IT leaders must ensure that data is organized, always-secure and any software application must adhere to necessary standards of governance and compliance.  The new generation of situational applications platforms like Encanvas are engineered to meet ‘IT hygiene standards’ of security, performance and scalability, yet they provide unrivalled self-service tooling to enable web workers to fully exploit accessible data resources.

History
Encanvas was conceived in 2002 by the founders of NDMC Consulting.  It was initially an idea (perhaps a belief) that in future, business users would seek to work in social groups that would span across and beyond enterprise boundaries and, having experienced this new form of business workplace, key knowledge workers and creative contributors to business processes would seek to be able to author applications for their communities in a form purposely sculptured to the needs of the community of use.

This idea of socially-centric, built-for-purpose and potentially thrown-away software was unknowingly endorsed by technology thought-leader Clay Shirky in his essay ‘Situated Software’ published in March 2004 when he wrote, “Part of the future I believe I'm seeing is a change in the software ecosystem which, for the moment, I'm calling situated software. This is software designed in and for a particular social situation or context. This way of making software is in contrast with what I'll call the Web School (the paradigm I learned to program in), where scalability, generality, and completeness were the key virtues.”

In August 2007, Luba Cherbakov and a team from IBM wrote the first of two articles on what they described as ‘Situational Applications’.  In their paper titled ‘SOA meets situational applications, Part 1: Changing computing in the enterprise’, Cherbakov and her colleagues defined the attributes of Situational Applications, stating, “The loosely accepted term situational applications describe applications built to address a particular situation, problem, or challenge. The development life cycle of these types of applications is quite different from the traditional IT-developed, SOA-based solution. SAs are usually built by casual programmers using short, iterative development life cycles that often are measured in days or weeks, not months or years. As the requirements of a small team using the application change, the SA often continues to evolve to accommodate these changes. Significant changes in requirements may lead to an abandonment of the used application altogether; in some cases it's just easier to develop a new one than to update the one in use. The idea of end-user computing in the enterprise is not new. Development of applications by amateur programmers using IBM Lotus® Notes®, Microsoft® Excel spreadsheets in conjunction with Microsoft Access, or other tools is widespread. What's new in this mix is the impressive growth of community-based computing coupled with an overall increase in computer skills, the introduction of new technologies, and an increased need for business agility. The emergence of Asynchronous JavaScript + XML (Ajax)—which leverages easy access to Web-based data and rich user interface (UI) controls—combined with the Representational State Transfer (REST) architectural style of Web services offers an accessible palette for the assembly of highly interactive browser-based applications.”

Today
Situational applications remain a largely misunderstood concept in enterprise computing due to pre-conceived notions about how IT works that are now proven to be fatally flawed.  These include:

  • Applications that can be designed cheaply enough to ‘throw-away’ can’t possibly be expected to meet enterprise data integration, security, performance and tuning expectations.
  • It’s not possible to create the critical-mass of building blocks and tooling required to remove the majority of programming overheads.
  • Organizations are better off buying best of breed solutions, to then mackle them together.
  • There is no competitive advantage to be gained from IT as companies now use the same platforms. 
  • If players like Microsoft, Google, Oracle and IBM haven’t made it work then it isn’t possible!

In many ways the demand for situational applications has never gone away but, until the emergence of the BIG DATA story, the message of Situational Applications has struggled to find a voice within organizations as it is a genre of technology designed to meet the many and varied ‘small’ needs of a variety of communities. It has lacked any understandable clarity of purpose in IT architectures.  Instead of sourcing expert tools, CIOs with other things to think about have instead done their best with 'approved enterprise tools' – Content Management applications like Microsoft SharePoint and Enterprise Applications Platforms like IBM Websphere and Oracle Weblogic.

BIG DATA has led to the re-discovery of the important role of expert situational applications tooling as organizations acknowledge the need to equip analysts and middle-managers with self-service, community-centric applications to assimilate, analyze and act on the actionable insights they’re surfacing.  Technologies designed support the creation of Situational Applications are by necessity ‘codeless’ which means the authoring of applications is done using drag and drop, point and click or wizard based interfaces that automatically generate the programming code rather than it being authored ‘manually’.  This reduces errors in code.  It also means that applications can be authored in near real-time; very often within a workshop environment.  Having stakeholders directly engage in the authoring process creates better applications in a shorter time.

In the next article in this series, read about the first stage in Accelerated Business Innovation: Data assimilation: what it is and how to do it.

No comments:

Post a Comment