Tilbake til søkeresultatene

IKTPLUSS-IKT og digital innovasjon

Adaptive Immunity for Software: Making Systems and Services Autonomously Self-Healing

Alternativ tittel: Adaptiv Immunitet for Programvare: Teknologi til å lage autonomt selvhelbredende systemer og tjenester

Tildelt: kr 16,8 mill.

Programvare har blitt en sentral del av nesten all økonomisk aktivitet, og vårt daglige liv har blitt stadig mer avhengig av komplekse programvare-intensive systemer og tjenester. Feil i disse systemene kan påvirke alt fra noen tusen, til millioner av mennesker og føre til massive skader. Til tross for betydelige investeringer i programvaretesting er mye av dagens programvare fortsatt plaget av feil. En grunn er at de eksisterende teknikkene for programvaretesting hovedsakelig er rettet mot å kontrollere at de forholdene om kjente og forventede problemer ikke oppstår. Imidlertid gjør kompleksiteten av moderne programvare det umulig å forutse alle problemer som kan oppstå. Hovedmålet i cureIT-prosjektet er å øke påliteligheten, robustheten og motstandsdyktigheten til dagens programvare ved å rette opp de feilene som er igjen etter grundig testing. Dette gjøres ved å utvikle nye metoder og teknikker som hjelper programvareingeniører med å opprette såkalt selvhelbredende programvare. Dette er systemer som autonomt vil kunne oppdage forekomsten av uventede feil under drift, samt diagnostisere årsaker og helbrede seg selv ut av disse situasjonene. For å skape denne teknologien bygger prosjektet på begrepet kunstig immunforsvar som, i likhet med det menneskelige immunforsvaret, bidrar til å gjenkjenne og ta vare på uventede "fremmedlegemer" (resp. feil/infeksjoner) som kan ha negative effekter. Spesifikt vil prosjektet ta opp følgende utfordringer: (1) Teknikker som kan oppdage feil ved å lære hva som er systemets normale oppførsel og gjenkjenne når et system oppfører seg unormalt. (2) Adaptive læringsteknikker som muliggjør tidlige anerkjennelse av feil som ligner på tidligere feil (3) Kostnadseffektive teknikker for å diagnostisere de grunnleggende årsakene til en feil, og for å avgrense dens innvirkning både innenfor og utenfor systemet. (4) Teknikker for systematisk evaluering av korrekt funksjonering av selvhelbredende programvare. Resultatene av prosjektet inkluderer utvikling av en forskningsagenda for selvhelbredende programvare basert på kunstig immunforsvar systemer (AISs), en undersøkelse av de viktigste tilnærmingene til modellering av AISs, en selvhelbredende smartkontor eksemplar, og en metode for systematisk å evaluere selvhelbredende programvaresystemer ved hjelp av kaosteknikk.

Software has become a central part of nearly all sectors of economic activity, and our daily lives have become increasingly dependent on complex software-intensive systems and services. Failures in these systems can affect thousands or even millions of people and lead to massive damages. Despite significant investments in software verification and validation (V&V), the software industry is still plagued by failures. One reason is that conventional V&V can only target anticipated faults: it can only check that the conditions corresponding to known or expected problems do not occur. However, the complexity of modern software makes it impossible to anticipate all problems that could be encountered. The overall goal of this project is to devise novel methods and techniques to create self-healing software-intensive systems, i.e. systems that support autonomous detection, diagnosis, and containment of unanticipated faults during execution, thereby significantly increasing their dependability, robustness, and resilience. We reach this goal by building on the concept of an artificial immune system to achieve three scientific break-throughs: (1) Autonomic techniques that can detect unanticipated faults by distinguishing between normal behavior and anomalies in runtime observational data. (2) Adaptive learning techniques that make it easier to recognize faults that are similar to the ones that have seen before. (3) Cost-effective techniques to diagnose the root causes of a fault and to contain its impact, both inside and outside the system. Timeliness: Recent advances in machine learning together with the PI's new results on automatically learning patterns in high volume data and generalizing them using rule aggregation [23 in project description] make that now is the best time to start this research. These failures need to be addressed, and the global state-of-the-art was not at the required level to start this ambitious research undertaking until just recently.

Budsjettformål:

IKTPLUSS-IKT og digital innovasjon