Software Complexity and Evolution: On How a Model-Driven Development Perspective Can Help

Prof. Oscar Pastor, Universidad Politécnica de Valencia, Spain

A crucial success factor in information systems development is the alignment of the system with business goals, business semantics and business processes. Software complexity and evolution is directly related to how well these high-level system aspects are specified from the earliest phases of a sound Software Process. Developers should be freed from programming concerns and be able to concentrate on these alignment problems. Model-driven system development (MDD) not only provides a structured and systematic approach to systems development, but also offers developers the possibility of using model transformation technologies to derive models of a lower abstraction level that can be further refined, and even generate software code automatically. This perspective is expected to provide a software process where both software complexity and evolution are better managed by i) assuring that model traceability is warranted by and embedded in the software development process ii) model evolution can guide the mechanisms exployed to treat adequately software evolution. This talk will explore these ideas, it will show how to successfully integrate business process modelling (BPM), requirements engineering (RE) and object-oriented conceptual modelling with the objective of leveraging MDD capabilities, and it will analyze how software complexity and evolution can benefit from it. A general framework to incorporate model evolution to a well-founded MDD Software Process will finally be introduced.

Bio. Oscar Pastor is Full Professor and Director of the “Centro de Investigación en Métodos de Producción de Software (PROS)” at the Universidad Politécnica de Valencia (Spain). He received his Ph.D. in 1992. He was a researcher at HP Labs, Bristol, UK. He has published more than two hundred research papers in conference proceedings, journals and books, received numerous research grants from public institutions and private industry, and been keynote speaker at several conferences and workshops. Chair of the ER Steering Committee (2009-10), and member of the SC of conferences as CAiSE, ICWE, CIbSE or RCIS, his research activities focus on conceptual modeling, web engineering, requirements engineering, information systems, and model-based software production. He created the object-oriented, formal specification language OASIS and the corresponding software production method OO-METHOD. He led the research and development underlying CARE Technologies that was formed in 1996. CARE Technologies has created an advanced MDA-based Conceptual Model Compiler called OlivaNova, a tool that produces a final software product starting from a conceptual schema that represents system requirements. He is currently leading a multidisciplinary project linking Information Systems and Bioinformatics notions, oriented to designing and implementing tools for Conceptual Modeling-based interpretation of the Human Genome information.

Software Complexity in a Mobile World: challenges and opportunities from mobile OS design

Dr. Vincenzo Gervasi, University of Pisa, Italy

After decades of polishing (and some stagnation), operating systems design has received new impulse in recent years, with the introduction of managed execution, virtual machines, and novel application frameworks. Innovation has happened faster in the mobile OS arena, and as a side effect, has imposed a more tightly controlled structure on applications. An executable program is no longer a blob of binary code, but a well-structured set of classes and resources, whose relationships with the underlying OS are documented via meta-data, and whose run-time behaviour is more easily predictable. This environment offers novel opportunities for assessing the complexity of mobile applications, and poses new challenges in linking user feedback (channelled via the single-point-of- distribution structure created by App Markets) to app innards, across multiple releases. In this talk, we will take a short survey of the technology, and present opportunities and challenges for future research in the area.

Bio. Vincenzo Gervasi is currently a Researcher with the Computer Science Department of the University of Pisa, Italy, and Honorary Associate with the School of Software of the University of Technology, Sydney, Australia. His current research interests include requirements engineering, software engineering, formal specifications, natural language processing, distributed systems, robotics, biomedical engineering. He has been a regular contributor to journals, conferences and workshops in these fields, with over 80 publications in international venues, and has served as organizer or PC chair for a number of events in the area.


My first ten years with self-adaptive software

Prof. Luciano Baresi, Dipartimento di Elettronica e Informazione Politecnico di Milano, Italy

After many different proposals and more and more sophisticated solutions for managing self-adaptive software, this talk aims to discuss the key issues that have been addressed and those that have not been considered yet. The talk starts from some ten years ago, identifies the claimed-to-be mandatory requirements, and proposes the solutions we have developed. It touches FLAGS, for eliciting the requirements of these systems, DYNAMO, as example of flexible and dynamic service compositions, and A-3, as middleware for the self-organization of highly dynamic and massively distributed systems. To conclude, the talk analyses the aforementioned requirements and discusses them in light of today technology.

Short bio. Luciano Baresi is an associate professor at Politecnico di Milano, and he was also visiting professor at University of Oregon (USA) and visiting researcher at University of Paderborn (Germany). Luciano was/will be program chair of ICECCS’02 (International Conference on Engineering Complex Computer Systems), FASE’06 (ETAPS Conference on Fundamental Approaches on Software Engineering), ICWE’07 (International Conference on Web Engineering), ICSOC’09 (International Conference on Service-Oriented Computing), SEAMS’12 (Symposium on Software Engineering for Adaptive and Self-Managing Systems) and ESEC/FSE’13 (Joint European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering). Luciano co-authored some 130 papers and his work has been cited some 3700 times (according to Google Scholar). Luciano’s research interests touch different aspects of software engineering. While he started with formal approaches for modeling and specification languages, he then moved to UML and the design of web-based applications. He is now interested in distributed systems, service-based applications, and in the different aspects of mobile and ubiquitous software systems.


Elastic Systems – Principles, Models, and Algorithms for Software Services, Things, and People on the Cloud

Prof. Schahram Dustdar, Distributed Systems Group (DSG), Information Systems Institute Vienna University of Technology, Austria

Elasticity is seen as one of the main characteristics of Cloud Computing today. Social computing, as one of the most prominent applications deployed on Cloud infrastructures, as well as Service and Software Engineering would gain significantly from better understanding the main principles of elasticity. In this talk I will discuss the main principles of elasticity, present a fresh look at this problem, and examine how to integrate people in the form of human-based computing and software services into one composite system, which can be modeled, programmed, and instantiated on a large scale in an elastic way.

Bio. Schahram Dustdar is Full Professor of Computer Science (Informatics) with a focus on Internet Technologies heading the Distributed Systems Group. From 2004-2010 he is Honorary Professor of Information Systems at the Department of Computing Science at the University of Groningen (RuG), The Netherlands. Since 2009 he is an ACM Distinguished Scientist. Recipient of the IBM Faculty Award 2012. His research focus is on Internet Technologies and he is head of the Distributed Systems Group. In particular, his interests are in Service-oriented Architectures and Computing, Mobile and Ubiquitous Computing, Complex-, Autonomic-, and Adaptive Systems, and Context-aware Computing including all aspects related to collaborative systems (e.g., Workflow technologies). A more recent thread of research interest concerns data services and novel programming models for Computational Science and Engineering.


QUADS: Quality-Aware Design of dependable Service-based processes

Prof. Barbara Pernici, Dipartimento di Elettronica e Informazione Politecnico di Milano, Italy

Service-based processes are executed by invoking a number of available services. Such services are often not under the control of process designers since they are offered by external providers and they might fail without notice or be unavailable for undetermined time intervals. Failures may be of various nature and may lead to the inability to provide a given service or to the loss in service quality. In order to guarantee a high level of autonomy, in service-oriented systems, processes should be designed to satisfy dependability requirements even in faulty situations. Process dependability can be improved by enriching the processes with monitoring features, repair mechanisms in order to trigger suitable corrective actions when failures occur, and/or other preventive actions able to decrease the risk of failure. The literature proposes various corrective and preventive strategies to improve dependability. Each strategy is characterized by different properties (e.g., complexity, execution time, architectural constraints) and its effectiveness depends on the process context and users’ requirements. A service- based process model enriched with the specification of the quality factors that affect dependability is proposed in the QUADS methodology. On the basis of the analysis of the different design strategies to enhance dependability in service-based applications we provide a set of metrics to support designers in the selection of the suitable preventive and corrective improvement actions.

Bio. Prof. Barbara Pernici is full professor of Computer Engineering at the Politecnico di Milano. Her research interests include workflow information systems design, cooperative information systems, adaptive information systems, service engineering and web services, data quality, and computer based design support tools, energy efficiency in information systems. She has published more than 50 papers in international journals, co-edited 26 books, and published about 350 papers at international level. She leads the POLIMI team in the FP7 ECO2Clouds (Experimental Awareness of CO2 in Federated Cloud Sourcing) project, in which she is also dissemination leader, she has been unit leader and scientific leader in the FP7 European project GAMES (Green Active Management of Energy in Service Centers), and she participated as a unit leader in several ESPRIT and IST European projects. She has coordinated several National Research Council and Italian Research projects. She has been elected chair of TC8 Information Systems of the International Federation for Information Processing (IFIP), of IFIP WG 8.1 on Information Systems Design, and vice-chair of the IFIP WG on Services-Oriented Software. She is Dean of the PhD School since 2011.


Schema Independent Log Analysis for System Understanding

Prof. Kostas Kontogiannis, Technical University of Athens, Greece

Understanding the run time behavior of large software systems for maintenance and evolution purposes, is a difficult and challenging task. Dynamic analysis has been proposed as a possible solution, especially when static analysis is not feasible, either because the source is not available, or because it is not tractable to analyze large volumes of source code. On the other hand, dynamic analysis also poses unique challenges, mostly due to the volume and diversity of log data that are collected. In this talk, we present a log schema independent approach that allows for the analysis of streaming log data. The approach is based on a similarity measure between events, and on caching techniques for allowing the handling of infinite log data streams. Events that exhibit high similarity, form cohesive sets of events that may constitute the manifestation of a use case the system may be performing at the given time.

Bio. Kostas Kontogiannis is an Associate Professor at the Department of Electrical & Computer Engineering of the National Technical University of Athens. Kostas received a B.Sc. degree in Mathematics from the University of Patras, Greece, a M.Sc. degree in Computer Science from Katholieke Universiteit Leuven, Belgium, and a Ph.D. degree in Computer Science from McGill University, Canada. Kostas is working in the areas of software reverse engineering, systems analysis, and software systems evolution. He is working with a number of industrial partners including IBM and Computer Associates Technologies for developing techniques that allow for model driven adaptation and integration of legacy systems to new platforms. Kostas has been the recipient of three IBM University Partnership Awards and a Canada Foundation for Innovation (CFI) New Opportunities Award. Kostas is a visiting scientist at the IBM Center for Advanced Studies in the IBM Toronto Laboratory. Kostas can be reached by e-mail at


Safety Critical Software: a Dependability and Safety Perspective

Dr. Alessandro Cimatti, Fondazione Bruno Kessler (FBK), Trento – Italy

The need for an integrated system-software coengineering framework to support the design of modern space systems is pressing. The current tools and formalisms tend to be tailored to specific analysis techniques and are not amenable for the full spectrum of required system aspects such as safety, dependability and performability. Additionally, they cannot handle the intertwining of hardware and software interaction. As such, the current practice lack integration and coherence. In recent projects for the European Space Agency, we developed a coherent and multidisciplinary approach towards developing space systems at architectural design level, linking all of the aforementioned aspects, and assessed it with several industrial evaluations. In this talk we report on the approach, the evaluations and our perspective on current and future developments.

Bio. Alessandro Cimatti is a Senior Researcher at the Center for Information Technology of the Fondazione Bruno Kessler in Trento, Italy. He is the leader of the Embedded Systems research unit. His interests include model-based design, formal verification, safety analysis, planning, and their application to the design of critical systems.


Business process assurance: the Notion and the Issue

Ernesto Damiani, University of Milan, Italy

Software assurance is supposed to provide software purchasers and users with evidence of some non-functional property, from code quality to robustness against attacks. Service assurance looks like a fuzzier notion. How can evidence about services non-functional properties be collected, checked and, above all, combined according to service composition patterns? The talk discusses this question and presents some techniques for assurance-based service composition.

Bio. Ernesto Damiani is currently a professor at the University of Milan and the director of the University of Milan’s PhD program in computer science. He has held visiting positions at a number of international institutions, including George Mason University in Virginia, LaTrobe University in Melbourne, Australia, and the University of Technology in Sydney, Australia. He has also done extensive research on advanced network infrastructure and protocols, taking part in the design and deployment of secure high-performance networking environments, both as chief scientist and in management positions. His areas of interest include business process representation, Web services security, processing of semi and unstructured information (e.g., XML), and semantics-aware content engineering for multimedia. Also, he is interested in models and platforms supporting open source development. He is the chair of the IEEE Conference on Digital Ecosystems (IEEE-DEST), the IFIP Working Conference on Open Source Systems, and the IFIP 2.6 WG on Data Semantics. He is an Associate Editor of the IEEE Transaction on Service Oriented Computing and a member of various editorial boards, including the Journal of System Architecture. He has published several books and about 200 papers and international patents. His work has appeared, among others, in the IEEE Transactions on Knowledge and Data Engineering, the ACM Transactions on Information and System Security, and TFS, as well as in the ACM Transactions on Information Systems and the ACM Transactions on Software Engineering and Methodology. He has served and is serving in all capacities on many congress, conference, and workshop committees. He is a senior member of the IEEE. In 2008 he was nominated ACM distinguished scientist and he receive the Chester Hall Award for the best paper published in the IEEE Transaction on Consumer Electronics.

{ Comments are closed! }