Dynamic adaptivity is one of the most challenging non-functional issues to address during the engineering of information systems. Furthermore, it is even harder to evaluate. The definition of mechanisms through which ...
详细信息
ISBN:
(纸本)9781424449842
Dynamic adaptivity is one of the most challenging non-functional issues to address during the engineering of information systems. Furthermore, it is even harder to evaluate. The definition of mechanisms through which adaptivity may be evaluated would be very useful both for the maintainability, reusability, and evolution of adaptive systems, and for the relations which may be established among adaptive systems (e.g., interaction, integration). In this paper we propose examples of metrics for dynamic adaptivity which may be considered a starting point for future research on (1) the feasibility related to the definition of measurable evaluation mechanisms for adaptive systems, and (2) the usability of these metrics as design hints in the development process of new adaptive systems and as formal approaches for the evaluation of existing adaptive systems.
software patterns are generic solutions to recurring problems. They are represented as a triplet (problem, context, solution). Several kinds of software patterns were identified, examples of which are analysis, archit...
详细信息
ISBN:
(纸本)9780769530925
software patterns are generic solutions to recurring problems. They are represented as a triplet (problem, context, solution). Several kinds of software patterns were identified, examples of which are analysis, architecture, design or implementation patterns. The current practice is to represent patterns as documents that communicate best practices. Their reuse is limited by several factors among which the lack of formalization. In the context of architecture centered software development, architectural styles are means to represent families of software systems. Several architecture description languages offer support for representing architectural styles. We believe that the use of architectural styles in the representation of architectural pattern solutions can improve the pattern reuse level. The paper details how this improvement can be achieved.
software architecting is a highly knowledge-intensive process demanding and producing a large and rich amount of information. To remain competitive, companies and organizations working in the IT sector must be able to...
详细信息
ISBN:
(纸本)9780769530925
software architecting is a highly knowledge-intensive process demanding and producing a large and rich amount of information. To remain competitive, companies and organizations working in the IT sector must be able to manage this knowledge portfolio and effectively exploit and reuse it. In the era of Web 2.0, knowledge grids, social networking, global development and semantic web, this working session addresses the problem of building a knowledge community in the field of softwarearchitecture. To this end, we aim at exploring the wishes of academies and industrial organizations, on the one hand, and their boundaries on he other. Our goal is to compare and contrast the inputs from academia and industry, and gain a shared understanding about what can be done now, and in the near future.
In practice, there are many differences between an implementation-level architecture (such as one derived using architectural recovery techniques) and a more conceptual architecture used at design time. We present a l...
详细信息
ISBN:
(纸本)0769525482
In practice, there are many differences between an implementation-level architecture (such as one derived using architectural recovery techniques) and a more conceptual architecture used at design time. We present a lightweight, scalable, semi-automated, incremental approach for synchronizing a Component-and-Connector (C&C) view retrieved from an implementation with a conceptual C&C view described in an Architectural Description Language. Our approach can automatically detect corresponding elements in the presence of insertions, deletions, renames, and moves, and incrementally synchronize the two views.
A software reference architecture is a generic architecture for a class of information systems that is used as a foundation for the design of concrete architectures from this class. We observe that certain reference a...
ISBN:
(纸本)9781424449842
A software reference architecture is a generic architecture for a class of information systems that is used as a foundation for the design of concrete architectures from this class. We observe that certain reference architectures have become more successful than others. One of the reasons for this is the level of congruence between their goals, context, and design. In this paper, we provide a framework for the classification of reference architectures. Using our framework on a set of reference architectures, and based on experiences with reference architectures, we define five main types of reference architectures that have congruent goals, context, and design. Reference architectures that can be classified in one of these types have better chances to become a success. We illustrate our conclusions with a number of reference architectures. This research facilitates design of more effective reference architectures.
architecture recovery is usually supported by a set of tools that implement techniques, such as concept analysis, clustering, data mining and pattern matching for abstracting low-level source code elements into higher...
详细信息
ISBN:
(纸本)0769525482
architecture recovery is usually supported by a set of tools that implement techniques, such as concept analysis, clustering, data mining and pattern matching for abstracting low-level source code elements into higher-level architectural elements. However, the decision making, in this process usually depends on a previously defined high-level model of the system architecture or on criteria that are application dependent. In this paper we present a set of application independent clustering criteria to support architectural elements definition. These criteria help the user in his decision making and can be reused in many different contexts.
A multi-tenant software application is a special type of highly scalable, hosted software, in which the application and its infrastructure are shared among multiple tenants to save development and maintenance costs. T...
详细信息
ISBN:
(纸本)9780769543512
A multi-tenant software application is a special type of highly scalable, hosted software, in which the application and its infrastructure are shared among multiple tenants to save development and maintenance costs. The limited understanding of the underlying architectural concepts still prevents many software architects from designing such a system. Existing documentation on multi-tenant softwarearchitectures is either technology-specific or database-centric. A more technology-independent perspective is required to enable wide-spread adoption of multi-tenant architectures. We propose the SPOSAD architectural style, which describes the components, connectors, and data elements of a multi-tenant architecture as well as constraints imposed on these elements. This paper describes the benefits of a such an architecture and the trade-offs for the related design decisions. To evaluate our proposal, we illustrate how concepts of the style help to make current Platform-as-a-Service (PaaS) environments, such as ***, Windows Azure, and Google App Engine scalable and customizable.
Recent research in softwarearchitecture has reasserted an emphasis on keeping track of design decisions and their rationales during the development process, that is, on maintaining architectural knowledge (AK). This ...
详细信息
ISBN:
(纸本)9781424449842
Recent research in softwarearchitecture has reasserted an emphasis on keeping track of design decisions and their rationales during the development process, that is, on maintaining architectural knowledge (AK). This knowledge takes the form of explicit assets, interrelated in decision networks. We argue that the relationships structuring these networks contain valuable information, specially those describing negative semantics. For this reason, we have extended an architecture-centric, model-driven development process, ATRIUM, which already provides support for AK, with new AK relationships to define AK as a network of knowledge.
ArchE (architecture Expert) is an rule based system that contains a model of modifiability. The model plus modifiability scenarios that characterize expected change enable ArchE to collaborate with an architect to pro...
详细信息
ISBN:
(纸本)076952172X
ArchE (architecture Expert) is an rule based system that contains a model of modifiability. The model plus modifiability scenarios that characterize expected change enable ArchE to collaborate with an architect to produce a design of the architecture that supports the expected change. ArchE has been used with real requirements from a manufacturer. This paper describes the model used in ArchE and how the architect and ArchE interact in order to produce a design.
architecture-based software development is the implementation of a software system in terms of its architectural constructs (e.g., components, connectors, ports). It has been shown as an effective approach to realizin...
详细信息
ISBN:
(纸本)9780769530925
architecture-based software development is the implementation of a software system in terms of its architectural constructs (e.g., components, connectors, ports). It has been shown as an effective approach to realizing and managing the architecture of large scale software systems. Several techniques and tools have been developed that are intended to aid with the architecture-based development of software systems. While these approaches provide adequate implementation support for some aspects of softwarearchitectures, they often lack sufficient support for implementing and enforcing the system software architectural style. In this paper we argue that the lack of sufficient support for architectural styles is a by-product of its crosscutting structure. In turn, making it impossible to realize styles using the object-oriented programming methodology. We propose a new approach to implementing architectural styles that is based on the aspect-oriented programming paradigm.
暂无评论