login · source · print

Software Science's Practice as Laboratory Approach

Below we highlight some of the applications.

Automata learning from program behavior

Our Tomte tool, which was developed in the Italia project for actively learning models from black-box software systems has successfully been applied to several industrial use cases. Using Tomte, we can automate the construction of automaton models of EMV (Europay, MasterCard and Visa) banking card protocols. This techniques allows one to automatically discover (implementation) errors in these protocols and thereby prevent potential security issues.

We applied active learning technologies to the problem of learning the controller of an industrial printing system from Oce technologies.Leading to large automaton models such as the one below, consisting of a couple of thousands of states.

Dynamic work support

We have developed a novel, model based approach called Task Oriented Programming (TOP). TOP offers a Domain Specific Language for the construction of distributed, web-based applications where users work together on the internet.

When multiple users use the web to collaborate intensively, one needs to interact with each other frequently about the latest state of affairs. TOP supports the definition of tasks that react on the progress made by others. With TOP, complex multi-user interactions can be programmed in a declarative style just by defining the tasks that have to be accomplished, thus eliminating the need to worry about the implementation details that commonly frustrates the development of applications for this domain.

TOP builds on four core concepts:

  • tasks that represent computations or work to do which have an observable value that may change over time,
  • data sharing enabling tasks to observe each other while the work is in progress,
  • generic, type driven, automatic generation of user interfaces,
  • and special combinators for observable sequential and parallel task composition.

With TOP arbitrary complex dynamically determined work collaborations can be expressed.

The iTask System is an implementation of TOP, which can be downloaded here.

With industry we are investigating the suitability of the iTask system for developing real world distributed systems to assist people in doing their work using the internet. We work together with the "Royal Dutch Navy", the "Netherlands Defence Academy", the "Netherlands Coast Guard", and "TNO".

Green software

Hardware consumes energy, because software tells it to. Research in Green IT is directing its attention to software. We work on ways to relate energy usage to software behaviour. Insights are shared in the Knowledge Network Green Software.