liu.seSearch for publications in DiVA
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Dynamic software architectures
Linköping University, Department of Computer and Information Science. Linköping University, The Institute of Technology.
2006 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Software architecture is a software engineering discipline that provides notations and processes for high-level partitioning of systems' responsibilities early in the software design process. This thesis is concerned with a specific subclass of systems, systems with a dynamic software architecture. They have practical applications in various domains such as high-availability systems and ubiquitous computing.

In a dynamic software architecture, the set of architectural elements and the configuration of these elements may change at run-time. These modifications are motivated by changed system requirements or by changed execution environments. The implications of change events may be the addition of new functionality or re-configuration to meet new Quality of Service requirements.

This thesis investigates new modeling and implementation techniques for dynamic software architectures. The field of Dynamic Architecture is surveyed and a common ground defined. We introduce new concepts and techniques that simplify understanding, modeling, and implementation of systems with a dynamic architecture, with this common ground as our starting point. In addition, we investigate practical use and reuse of quality implementations, where a dynamic software architecture is a fundamental design principle.

The main contributions are a taxonomy, a classification, and a set of architectural patterns for dynamic software architecture. The taxonomy and classification support analysis, while the patterns affect design and implementation work directly. The investigation of practical applications of dynamic architectures identifies several issues concerned with use and reuse, and discusses alternatives and solutions where possible.

The results are based on surveys, case studies, and exploratory development of dynamic software architectures in different application domains using several approaches. The taxonomy, classification and architecture patterns are evaluated through several experimental prototypes, among others, a high-performance scientific computing platform.

Place, publisher, year, edition, pages
Linköping: Linköping Universitet , 2006. , 40 p.
Series
Linköping Studies in Science and Technology. Dissertations, ISSN 0345-7524 ; 1083
Keyword [en]
Dynamic software architecture, taxonomy, classification
National Category
Computer Science
Identifiers
URN: urn:nbn:se:liu:diva-11115ISBN: 978-91-85715-46-6 (print)OAI: oai:DiVA.org:liu-11115DiVA: diva2:17561
Public defence
2007-04-27, Visionen, Hus B, Linköpings Universitet, Linköping, 10:15 (Swedish)
Available from: 2008-04-01 Created: 2008-04-01 Last updated: 2012-11-20
List of papers
1. A classification of dynamic software architectures
Open this publication in new window or tab >>A classification of dynamic software architectures
2005 (English)Report (Other academic)
Abstract [en]

A recent trend in computing is towards more autonomous software systems. This is mainly driven by that our daily life more and more depends on computers and software. Areas like ubiquitous computing with small (embedded) systems and their antipodes world-wide distributed systems require different support in terms of flexibility and availability. Systems must be able to adapt to changes in the environment, including self-healing and adaptation. Users can not take on the tedious task of constantly maintaining and updating their software packages to each and every change. This paper discusses one of the foundations for developers of these systems, dynamic architecture. We investigate the existing body of work in the area and identify dimensions and aspects of dynamically changing arcbitectures. Continuing, we use this division creating a dassification of four fundamental dynamic architecture dasses: Dynamic, Adaptive, Constructive, and Reflective. These four are presented as architectural patterns and their possible application areas are discussed.

Publisher
51 p.
Series
Technical report, ISSN 1650-2647 ; 04122
National Category
Engineering and Technology
Identifiers
urn:nbn:se:liu:diva-12965 (URN)
Available from: 2008-04-01 Created: 2008-04-01 Last updated: 2012-11-20
2. Development and use of dynamic product-line architectures
Open this publication in new window or tab >>Development and use of dynamic product-line architectures
2005 (English)In: IEE Proceedings - Software, ISSN 1462-5970, E-ISSN 1463-9831, Vol. 152, no 1, 15-28 p.Article in journal (Refereed) Published
Abstract [en]

Software product families are used to improve reuse and shorten lead times, with several positive side effects such as improved quality and lowered cost. This paper presents the results of a case study conducted at four Swedish companies that are involved in either the development of or development with a software product family. We identify and discuss several issues such as inter-organizational development of platforms, platforms that employ dynamism, and platforms as a vehicle to achieve certain quality attributes. We analyze issues and demonstrate how these can be deduced to shortcomings in scoping and variability management for non-functional quality attributes and dynamic architectures.

Keyword
decision making; object-oriented methods; software architecture; software development management; software libraries; software prototyping; software quality; software reusability; software product families; Swedish companies; inter-organisational development; dynamic reconfiguration; dynamic product-line architectures
National Category
Engineering and Technology
Identifiers
urn:nbn:se:liu:diva-12966 (URN)10.1049/ip-sen:20041007 (DOI)
Available from: 2008-04-01 Created: 2008-04-01 Last updated: 2017-12-13
3. A deployment system for pervasive computing
Open this publication in new window or tab >>A deployment system for pervasive computing
2000 (English)In: Proceedings. International Conference on  Software Maintenance, 2000., 2000, 262-270 p.Conference paper, Published paper (Other academic)
Abstract [en]

Software has for a long time been used for controlling different systems. Today, there is a trend towards integrating more software in consumer electronics, home appliances, cars etc. Suddenly software is moving from traditional environments, such as the desktop computer into new and unknown territory. This will influence many aspects of the software engineering process; above all, several new problems have arisen in the domain of software deployment. How can software be effectively deployed in these environments? Current deployment strategies are not directly applicable. The paper discusses problems with current deployment models and proposes a new, modified model. A deployment model for pervasive computing must support component based development, different delivery models, and installation and activation strategies. Support for dynamic installation and activation (i.e. making modifications without de-activating the software), is especially important. We introduce a prototype implementation, the Java Distributed Run-time Updating Management System (JDRUMS), which we have used as a vehicle for eliciting requirements for our deployment model

National Category
Engineering and Technology
Identifiers
urn:nbn:se:liu:diva-12967 (URN)10.1109/ICSM.2000.883058 (DOI)0-7695-0753-0 (ISBN)
Conference
International Conference on Software Maintenance (ICSM' 2000), San José, October
Available from: 2008-04-01 Created: 2008-04-01 Last updated: 2012-11-20
4. Reconfigurable scientific applications on GRID services
Open this publication in new window or tab >>Reconfigurable scientific applications on GRID services
2005 (English)In: Advances in Grid Computing: European Grid Conference, Amsterdam, The Netherlands, February 14-16, 2005, Revised Selected Papers / [ed] Peter M. A. Sloot, Alfons G. Hoekstra, Thierry Priol, Alexander Reinefeld, Marian Bubak, Springer Berlin/Heidelberg, 2005, 813-822 p.Chapter in book (Other academic)
Abstract [en]

This paper proposes a runtime environment for dynamically changing, parallel scientific applications. This kind of applications is motivated by the LOFAR/LOIS project aiming at a multidisciplinary research platform for natural scientists and engineers. The dynamic infrastructure in turn is than mapped to Grid Services environments.

Place, publisher, year, edition, pages
Springer Berlin/Heidelberg, 2005
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 3470
National Category
Engineering and Technology
Identifiers
urn:nbn:se:liu:diva-12968 (URN)10.1007/11508380_83 (DOI)978-3-540-26918-2 (ISBN)978-3-540-32036-4 (ISBN)
Available from: 2008-04-01 Created: 2008-04-01 Last updated: 2012-12-11

Open Access in DiVA

No full text

By organisation
Department of Computer and Information ScienceThe Institute of Technology
Computer Science

Search outside of DiVA

GoogleGoogle Scholar

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 428 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf