22,228 research outputs found
Architectural viewpoints for global software development
Ankara : The Department of Computer Engineering and the Graduate School of Engineering and Science of Bilkent University, 2011.Thesis (Master's) -- Bilkent University, 2011.Includes bibliographical references leaves 87-92.Current trends in software engineering show that large software projects have
to operate with teams that are working in different locations. The reason behind
this globalization of software development stems from clear business goals such
as reducing cost of development, solving local IT skills shortage, and supporting
outsourcing and offshoring. There is ample reason that these factors will be even
stronger in the future, and as such we will face a further globalization of
software development. To cope with these problems, the concept of Global
Software Development (GSD) is introduced. GSD is a relatively new concept in
software development that can be considered as the coordinated activity of
software development that is not localized and central but geographically
distributed.
Designing a proper architecture of GSD is important to meet the requirements
for the communication, coordination and control of distributed GSD teams.
However, an analysis of the literature on GSD shows that research in this area
has been generally focused on social issues focusing on some concerns such as
intercultural communication problems and coordination. It is generally accepted
that software architecture design plays a fundamental role in coping with the
inherent difficulties of the development of large-scale and complex software.
Unfortunately, in both GSD and software architecture design communities, the
architecture design of GSD systems has not been explicitly addressed. This study aims to provide a contribution in this context by explicitly
focusing on the architecture design of GSD. A common practice is to model and
document different architectural views for describing the architecture according
to the stakeholdersâ concerns. Having multiple views helps to separate the
concerns and as such support the modeling, understanding, communication and
analysis of the software architecture for different stakeholders. Architectural
views conform to viewpoints that represent the conventions for constructing and
using a view. In this study, we propose seven architectural viewpoints which
have been specifically defined for modeling GSD architecture. To define
architecture viewpoints, we first describe a general GSD meta-model. The metamodel
has been derived after a thorough analysis of the related GSD literature.
The meta-model consists of six different parts which form the abstract syntax of
the architectural viewpoints. After the meta-model derivation, we also suggest
textual and visual concrete syntaxes for the meta-model in order to complete
viewpoint definition.
Supporting the architect in deriving architectural views based on the
corresponding architectural viewpoints, we present a question framework. The
question framework consists of six sets of questions related to the key concerns
of a GSD project. Based on the answers given to the questions in this
framework, the GSD application architecture can be derived by applying
predefined design actions in the question framework. We have developed the
tool called Global Architect which implements the question framework. Global
Architect takes as input the answers to the provided questions and subsequently
generates the textual architecture description of the required viewpoint. On its
turn, the textual description is used to generate the visual presentation of the
application architecture for the GSD project.Yıldız, BuÄra MehmetM.S
Applying formal methods to standard development: the open distributed processing experience
Since their introduction, formal methods have been applied in various ways to different standards. This paper gives an account of these applications, focusing on one application in particular: the development of a framework for creating standards for Open Distributed Processing (ODP). Following an introduction to ODP, the paper gives an insight into the current work on formalising the architecture of the
Reference Model of ODP (RM-ODP), highlighting the advantages to be gained. The different approaches currently being taken are shown, together with their associated advantages and disadvantages. The paper concludes that there is no one all-purpose approach which can be used
in preference to all others, but that a combination of approaches is desirable to best fulfil the potential of formal methods in developing an architectural semantics for OD
A design recording framework to facilitate knowledge sharing in collaborative software engineering
This paper describes an environment that allows a development team to share knowledge about software artefacts
by recording decisions and rationales as well as supporting the team in formulating and maintaining design constraints. It explores the use of multi-dimensional design spaces for capturing various issues arising during development and presenting this meta-information using a network of views. It describes a framework to underlie the collaborative environment and shows the supporting architecture and its implementation. It addresses how the artefacts and their meta-information are captured in a non-invasive way and shows how an artefact repository is embedded to store and manage the artefacts
Controlling Concurrent Change - A Multiview Approach Toward Updatable Vehicle Automation Systems
The development of SAE Level 3+ vehicles [{SAE}, 2014] poses new challenges not only for the functional development, but also for design and development processes. Such systems consist of a growing number of interconnected functional, as well as hardware and software components, making safety design increasingly difficult. In order to cope with emergent behavior at the vehicle level, thorough systems engineering becomes a key requirement, which enables traceability between different design viewpoints. Ensuring traceability is a key factor towards an efficient validation and verification of such systems. Formal models can in turn assist in keeping track of how the different viewpoints relate to each other and how the interplay of components affects the overall system behavior. Based on experience from the project Controlling Concurrent Change, this paper presents an approach towards model-based integration and verification of a cause effect chain for a component-based vehicle automation system. It reasons on a cross-layer model of the resulting system, which covers necessary aspects of a design in individual architectural views, e.g. safety and timing. In the synthesis stage of integration, our approach is capable of inserting enforcement mechanisms into the design to ensure adherence to the model. We present a use case description for an environment perception system, starting with a functional architecture, which is the basis for componentization of the cause effect chain. By tying the vehicle architecture to the cross-layer integration model, we are able to map the reasoning done during verification to vehicle behavior
Management and architecture click: The FAD(E)E Framework.
Enterprises are living things. They constantly need to be (re-)architected in order to achieve the necessary agility, alignment and integration. This paper gives a high-level overview of how companies can go about doing 'enterprise architecture' in the context of both the classic (isolated) enterprise and the Extended Enterprise. By discussing the goals that are pursued in an enterprise architecture effort we reveal some basic requirements that can be put on the process of architecting the enterprise. The relationship between managing and architecting the enterprise is discussed and clarified in the FAD(E)E, the Framework for the Architectural Development of the (Extended) Enterprise.Management; Architecture; Framework;
Crosscutting, what is and what is not? A Formal definition based on a Crosscutting Pattern
Crosscutting is usually described in terms of scattering and tangling. However, the distinction between these concepts is vague, which could lead to ambiguous statements. Sometimes, precise definitions are required, e.g. for the formal identification of crosscutting concerns. We propose a conceptual framework for formalizing these concepts based on a crosscutting pattern that shows the mapping between elements at two levels, e.g. concerns and representations of concerns. The definitions of the concepts are formalized in terms of linear algebra, and visualized with matrices and matrix operations. In this way, crosscutting can be clearly distinguished from scattering and tangling. Using linear algebra, we demonstrate that our definition generalizes other definitions of crosscutting as described by Masuhara & Kiczales [21] and Tonella and Ceccato [28]. The framework can be applied across several refinement levels assuring traceability of crosscutting concerns. Usability of the framework is illustrated by means of applying it to several areas such as change impact analysis, identification of crosscutting at early phases of software development and in the area of model driven software development
- âŠ