6 research outputs found
On Extensibility of Software Systems
This report contains the progress report written as part of the author's PhD qualifying exam. It describes initial work carried out in analyzing and improving the extensibility of software systems, including a detailed case study analyzing the extensibility of the Proof Obligation Generator (POG) of the Overture tool. Additional extension work includes improving the output format of the POG and support for additional logic systems. Future work for the remaining half of the PhD is also discussed, including ways to combine formal modelling and extensibility analysis and also techniques for multi-paradigm extensibility
Recommended from our members
From modularity to emergence: a primer on the design and science of complex systems
Electrical networks, flocking birds, transportation hubs, weather patterns, commercial organisations, swarming robots... Increasingly, many of the systems that we want to engineer or understand are said to be ‘complex’. These systems are often considered to be intractable because of their unpredictability, non-linearity, interconnectivity, heterarchy and ‘emergence’. Such attributes are often framed as a problem, but can also be exploited to encourage systems to efficiently exhibit intelligent, robust, self-organising behaviours. But what does it mean to describe systems as complex? How do these complex systems differ from the more easily understood ‘modular’ systems that we are familiar with? What are the underlying similarities between different systems, whether modular or complex? Answering these questions is a first step in approaching the design and science of complexity. However, to do so, it is necessary to look beyond the specifics of any particular system or field of study. We need to consider the fundamental nature of systems, looking for a common way to view ostensibly different phenomena.
This primer introduces a domain-neutral framework and diagrammatic scheme for characterising the ways in which systems are modular or complex. Rather than seeing modularity and complexity as inherent attributes of systems, we instead see them as ways in which those systems are characterised by those who are interested in them. The framework is not tied to any established mode of representation (e.g. networks, equations, formal modelling languages) nor to any domain-specific terminology (e.g. ‘vertex’, ‘eigenvector’, ‘entropy’). Instead, it consists of basic system constructs and three fundamental attributes of modular system architecture, namely structural encapsulation, function-structure mapping and interfacing. These constructs and attributes encourage more precise descriptions of different aspects of complexity (e.g. emergence, self-organisation, heterarchy). This allows researchers and practitioners from different disciplines to share methods, theories and findings related to the design and study of different systems, even when those systems appear superficially dissimilar
On the Extensibility of Formal Methods Tools
Modern software systems often have long lifespans over which they must continually evolve to meet new, and sometimes unforeseen, requirements. One way to effectively deal with this is by developing the system as a series of extensions. As requirements change, the system evolves through the addition of new extensions and, potentially, the removal of existing extensions. In order for this kind of development process to thrive, it is necessary that the system have a high level of extensibility. Extensibility is the capability of a system to support the gradual addition of new, unplanned functionalities. This dissertation investigates extensibility of software systems and focuses on a particular class of software: formal methods tools. The approach is broad in scope. Extensibility of systems is addressed in terms of design, analysis and improvement, which are carried out in terms of source code and software architecture. For additional perspective, extensibility is also considered in the context of formal modelling. The work carried out in this dissertation led to the development of various extensions to the Overture tool supporting the Vienna Development Method, including a new proof obligation generator and integration with theorem provers. Additionally, the extensibility of Overture itself was also improved and it now better supports the development and integration of various kinds of extensions. Finally, extensibility techniques have been applied to formal modelling, leading to an extensible architectural style for formal models
A System-of-Systems Architecture Methodology to Evaluate Energy Systems Integration as a Pathway for the Energy Transition
Ph. D. ThesisOne pathway for the energy transition is Energy Systems Integration (ESI), which aims to
exploit synergies across the multiple energy vectors of electricity, gas and heat. This will create
new interactions between different components of the energy system and increase the
complexity involved. Existing studies focus on planning and operational models for ESI, but
the literature lacks comprehensive studies around evaluation of ESI. This thesis develops a
novel methodological framework for evaluating the effectiveness of ESI as a pathway for the
energy transition. The framework provides a model to encompass stakeholders’ perspectives
in an indicator-based evaluation while reducing the complexity of the energy system
architecture.
The framework is based on three main contributions presented in this research, drawn from the
areas of sustainability assessments, sustainability transitions and systems engineering,
respectively. Firstly, the framework exhibits principles identified to reflect a whole systems
approach for evaluation being: multidimensional, multivectoral, systemic, systematic,
futuristic, and applicable. Secondly, the framework operationalises an understanding of ESI in
relation to the Multi-System Perspective for transitions, being conceptualised as a System-ofSystem (SoS). Thirdly, the framework combines systems engineering concepts and methods to
(i) model the integrated energy system architecture as a SoS; (ii) identify the structural and
functional relationships between its components and with its stakeholders at different levels of
abstraction; and (iii) select indicators to measure the effectiveness of the energy system towards
achieving its requirements.
The framework is validated using a test case study on the local energy system in Findhorn
village and through a group interview with academic experts, whose feedback helped
implement necessary improvements. From this, a Reference System Architecture Model that
can be readily used as a standard approach for evaluation is developed. A full scale study is
conducted on the North of Tyne energy system to demonstrate the framework applicability and
usefulness.EPSR