Adaptive Observation
Background
This research is carried out in the context of the “Managing Soft-Reliability” project and it is sponsored by the Dutch Ministry of Economic Affairs under IOP-IPCR program. More information can be found at our project site. So much for the official recognition, soft reliability is different from hard reliability as it is not about whether a product works according to its specification, but whether it is wholly accepted by its users. User experience matters here a lot.
So, why is that now so important, don’t customers by more and more junk products? Well, they do, but at the same time products have been changing of the years, they are much more complex now, offer many functions, have less time to mature – and users finally got it: if a product is hard to use or just not great in all its features, then this is not the user’s fault.
Approach
Therefore, we develop a new system-architecture that helps to define observation (i.e., logging) requirements on an abstract level. Part of this architecture is a graphical specification language, which helps to define platform- and system-independent observation applications.
In short, the framework enables stakeholders of product information specifiy graphically what data should be collected from products in the field. Data collection and processing is subsequently performed automatically, and the stakeholder takes over when data arrives for thorough analysis and interpretation. Sound great so far, makes data collection from distributed product a piece of cake, but there is more: adaptation. Said stakeholders might find they did not collect the right data or they need more data on a specific topic or from certain products… you name it. In this case, they can go back to their graphical specification, change, save, and the products in the field automatically adapt to generate new data. And so on.
Implementation
All this works, and even better we could show in various case studies that this technology and method of collection highly relevant data from the field is very much applicable to industrial product creation processes.
The front-end is implemted on the basis of an Eclipse RCP skeleton, graphical editors and charts all over. The back-end is a custom Java NIO server implementation, and the actual data collection part of the framework exists in platform implementations for .NET (desktop, mobile), Java (desktop, server, mobile) and ANSI C (embedded), and we built connectors for ActionScript, PHP, JavaScript, EEML (in progress), and websockets (in progress).
Embedded devices
Roel Jordans (Master thesis, 2008 – 2009) first explored concepts of observing real customers in the context of two industrial projects before implementing an observation node for the Android operating system for use in mobile phones and tablets.
Robbert van Vooren (Master thesis, 2009) focused on runtime performance aspects of observing very resource-limited embedded devices, then impemented an observation node for the Arduino platform that was used in a study within the Industrial Design department of TU/e.
Generic Architecture for adaptive observation
Anne Fomin and Fotis Gonidis currently work as Postgraduate trainees (TOIOs, 2009 – 2010) on a generic framework implementation of the observation runtime framework that enables simple client-server scenarios as well as distributed settings of adaptive observation. The development flow is entirely, model-driven using UML models and customized code generators for the .NET and Java platform during design and implementation.
Future steps
At the moment, I’m writing my thesis, summing up the research of the past 3.5 years in roughly 170 pages. Nevertheless, all the work that went into this project is not gone (to the library) after I finish, instead a high-tech startup will carry on developments and commercialize the framework together with a newly developed graphical front-end as UXsuite.
To be continued, either when the thesis is ready or when more good things happen to the UXsuite venture.