Plenary Lecture

Formalizing Nonfunctional Characteristics in Software Architecture – A Way to Achieve System Dynamism

Associate Professor Aleksandar Dimov
Department of Software Engineering
Faculty of Mathematics and Informatics
University of Sofia "St. Kliment Ohridski"

Abstract: Software architecture is widely accepted as a key mean to achieve reusability and understandability about complex software intensive systems. Moreover recent trends in the area recognize that architecture could also serve as a way to attain autonomous computing, i.e. dynamic change into a running software system without human intervention. There exist numerous fundamental ways to achieve dynamism in software architectures – constructive, adaptive and intelligent dynamism. Most of approaches follow the proposed by IBM in 2002 autonomic software architecture. Main layer in dynamic software architecture is represented by the so-called autonomic managers – specific software modules that manage other software components using a control loop. We present a brief overview of the decision algorithms for autonomous manager implementation and argue that a promising way is to implement such algorithms based on nonfunctional characteristics of software system and its building blocks. Non-Functional Characteristics (NFC), also known as quality parameters are used to define additional constraints and requirements on how software should perform its functionality. In this respect in order to implement dynamic software architecture it is of great importance to study and acquire better knowledge of formal description of NFC in software architectures. However, most of these characteristics are not well studied in software engineering nowadays. Even most of them are not formalized. Even a quick glance in one of the best studied NFC, namely – software reliability, show that reliability modeling techniques are very difficult to apply in practice and hence in analyzing and designing dynamic architectures. The conclusion of this talk is that research in formalization of NFC is one of the key factors for future software engineering.

Brief Biography of the Speaker: Aleksandar Dimov, PhD is an associate professor in Software Engineering and Software Architecture at the Sofia University “St. Kl. Ohridski” in Bulgaria. He received and MsC degree in Automation and Control theory at the Technical University of Sofia in 2001. He got his PhD degree in 2006 in topic of Software Architecture and further in 2009 continued with one year post doctoral research at the School of Innovation and Design at Mälardalen University in Sweden.
His main research interests include Quality characteristics of software systems; Software reliability; Embedded software systems; Software architectures; Formal modelling of software systems; Service-oriented architecture and Cloud computing. Aleksandar Dimov has published more than 50 papers in various areas of Software Engineering, including modeling of software architecture, software reliability and etc.