Obesity is not just a problem for people. Cutting-edge research in the Department of Computer Science at the University of Leicester is tackling the problem of ‘obesity’ in computer software.
Scientists say that although software does not wear out like cars and other equipment, if it does not follow a healthy life style, it can become obese, fragile or brittle and stop performing well.
The danger to operating systems is acute in sectors that are undergoing modernisation and institutions like banks, warn the Leicester team.
Now a group of researchers at the University of Leicester are collaborating with ATX Software, a company that develops technology that supports re-engineering of legacy systems, in devising new methods and techniques that can be used to keep software agile and fit for purpose.
This research is being sponsored by the Marie-Curie programme as an Industry-Academia Partnership called Leg2Net.
Professor José Luiz Fiadeiro, the coordinator of Leg2Net, explained: “To many people, software is something that allows us to use a computer to perform certain activities (like writing a piece of text). However, software doesn't just sit inside the computer. It has a life of its own and evolves over time.
“This is what happens, for instance, when we are asked if we want to download an updated version of the application that we have just launched. The fact that software needs to be continually adapted in order to deliver the same level of satisfaction to the user (or even increase it), is known as Lehman's first law of software evolution.
“Large organisations such as banks use very complex software applications and evolving them is a highly challenging task. For a start, there is not only one user to be kept satisfied. If one is not careful, complexity increases as software is evolved. This is known as Lehman's second law of software evolution.”
Luis Andrade, CEO of ATX Software, adds: “Very often, layers of software keep being added without restructuring what was there already, or new applications are coarsely stitched to old ones without taking into account the global structure or architecture of the system.
“In modern terms, we could say that software becomes "obese" as it lets "fat" accumulate, for instance, old code that is no longer necessary. As a result, applications become less and less efficient, more and more difficult to change. And, when this happens, systems begin to lack the agility, flexibility, and responsiveness that companies require to address the fierce competition and market volatility that characterises business today.”
The intervention technique is tantamount to 'liposuction' a one-off application that restructures the software and delivers a high-level architecture (muscle) that is independent of the code.
However, in order for computer software to function healthily, changes to the application are done on the architecture –the scientists effectively work on the muscle - and the code is generated automatically so as to preserve the architecture. However, if people (programmers) fiddle directly with the code, the architectural link is lost and 'fat' starts to accumulate again.
At Leicester, the Leg2Net team is researching some of the techniques that can be used to combat this problem. As with humans, Professor Reiko Heckel says, one can make a surgical operation to remove the fat. In software engineering, this requires a careful analysis of the code, breaking it into meaningful chunks so that one can understand what is "fat" and what is "muscle", and reorganise what is left so that the original functionality is preserved. These re-engineering techniques are based on graphs and require sophisticated mathematical operations - a job for specialists, supported by clever software tools such as those developed by ATX.
As with humans, if software does not change its ‘life style’, fat will accumulate again. One of the methods that has been gaining popularity for keeping software fit and agile is the adoption of a service-oriented architecture.
This is an infrastructure that reduces complexity and maximises flexibility by relying not on monolithic systems put together from rigid and static connections between components, but on systems that can be dynamically reconfigured by procuring the best service that can contribute to the task at hand.
Professor Heckel continued: “At Leicester, we are doing research aimed precisely at re-engineering "obese" (aka "legacy") software into such service-oriented architectures, and on ways of supporting evolution within those architectures.”
Ather Mirza | alfa
Accelerating quantum technologies with materials processing at the atomic scale
15.05.2019 | University of Oxford
A step towards probabilistic computing
15.05.2019 | University of Konstanz
Engineers at the University of Tokyo continually pioneer new ways to improve battery technology. Professor Atsuo Yamada and his team recently developed a...
With a quantum coprocessor in the cloud, physicists from Innsbruck, Austria, open the door to the simulation of previously unsolvable problems in chemistry, materials research or high-energy physics. The research groups led by Rainer Blatt and Peter Zoller report in the journal Nature how they simulated particle physics phenomena on 20 quantum bits and how the quantum simulator self-verified the result for the first time.
Many scientists are currently working on investigating how quantum advantage can be exploited on hardware already available today. Three years ago, physicists...
'Quantum technologies' utilise the unique phenomena of quantum superposition and entanglement to encode and process information, with potentially profound benefits to a wide range of information technologies from communications to sensing and computing.
However a major challenge in developing these technologies is that the quantum phenomena are very fragile, and only a handful of physical systems have been...
Working group led by physicist Professor Ulrich Nowak at the University of Konstanz, in collaboration with a team of physicists from Johannes Gutenberg University Mainz, demonstrates how skyrmions can be used for the computer concepts of the future
When it comes to performing a calculation destined to arrive at an exact result, humans are hopelessly inferior to the computer. In other areas, humans are...
Scientists develop a molecular recording tool that enables in vivo lineage tracing of embryonic cells
The beginning of new life starts with a fascinating process: A single cell gives rise to progenitor cells that eventually differentiate into the three germ...
29.04.2019 | Event News
17.04.2019 | Event News
15.04.2019 | Event News
17.05.2019 | Materials Sciences
17.05.2019 | Physics and Astronomy
17.05.2019 | Materials Sciences