508 research outputs found

    Automatic architectural enforcement

    Get PDF
    Automatic architectural enforcement would be very beneficial especially in product line development using open source practices where there is very limited or no access to the architects and the architecture is of paramount importance. However, current techniques for modelling software architecture do not support the modelling of architectural design rules which means that architectural enforcement is achieved by manual reviews. This paper addresses this problem by proposing how architectural design rules could be expressed in UML in a meta-model for the system model

    Software architectures: Blueprint, Literature, Language or Decision

    Get PDF
    Abstract This study questions the traditional view of software architecture as a specification that needs only be understood by software architects and engineers. Based on an intensive study of three software-producing organizations, we identify multiple metaphors ('Blueprint,' 'Literature,' 'Language' and 'Decision') that stakeholders use to understand the term software architecture, which in turn, allows them to effectively participate in its creation and use. Our results point to new research directions that may better encompass a broader view of software architecture

    REPRESENTATION AND REASONING MODELS FOR C3 ARCHITECTURE DESCRIPTION LANGUAGE

    Get PDF
    International audienceComponent-based development is a proven approach to manage the complexity of software and its need for customization. At an architectural level, one describes the principal system components and their pathways of interaction. So, Architecture is considered to be the driving aspect of the development process; it allows specifying which aspects and models in each level needed according to the software architecture design. Early Architecture description languages (ADLs), nearly exclusive, focus on structural abstraction hierarchy ignoring behavioural description hierarchy, conceptual hierarchy, and metamodeling hierarchy. In this paper we focus on those four hierarchies which represent views to appropriately “reason about” software architectures described using our C3 metamodel which is a minimal and complete architecture description language. In this paper we provide a set of mechanisms to deal with different levels of each hierarchy, also we introduce our proper structural definition for connector's elements deployed in C3 Architectures

    A Unified Approach to Automatic Testing of Architectural Constraints

    Full text link
    Abstract—Architectural decisions are often encoded in the form of constraints and guidelines. Non-functional requirements can be ensured by checking the conformance of the implemen-tation against this kind of invariant. Conformance checking is often a costly and error-prone process that involves the use of multiple tools, differing in effectiveness, complexity and scope of applicability. To reduce the overall effort entailed by this activity, we propose a novel approach that supports verification of human-readable declarative rules through the use of adapted off-the-shelf tools. Our approach consists of a rule specification DSL, called Dictō, and a tool coordination framework, called Probō. The approach has been implemented in a soon to be evaluated prototype. I

    Four Reasoning Models for C3 Metamodel

    Get PDF
    International audienceThe architecture is considered to be the driving aspect of the development process; it allows specifying which aspects and models in each level needed according to the software architecture design. Early Architecture Description Languages (ADLs), nearly exclusive, focus on structural abstraction hierarchy ignoring behavioural description hierarchy, conceptual hierarchy, and metamodeling hierarchy. In our approach these four hierarchies constitute views to appropriately “reason about” the architecture of a system described using our C3 metamodel. C3 is defined to be a minimal and complete architecture description language. In this paper we provide a set of mechanisms to deal with different levels of each type of hierarchy, also we introduce our proper structural definition for connector types used to instantiate any connexion elements deployed at the architectures and application levels

    Some Information Systems Research Trends over the Past Decade

    Get PDF
    In order to gain an understanding of the recent evolution and the current state of information systems (IS) development research, three sub-topic areas within IS development, were examined: IS development methodology, IS architecture, and IS design and modeling. Relevant papers were selected from the Association for Information Systems (AIS) basket of eight journals. Using these articles, an empirical method based on author keywords was used to identify categorical research trends in each of the three areas. Research trends observed in each of the categories over the past decade are discussed

    SmartSantander: IoT experimentation over a smart city testbed

    Get PDF
    This paper describes the deployment and experimentation architecture of the Internet of Things experimentation facility being deployed at Santander city. The facility is implemented within the SmartSantander project, one of the projects of the Future Internet Research and Experimentation initiative of the European Commission and represents a unique in the world city-scale experimental research facility. Additionally, this facility supports typical applications and services of a smart city. Tangible results are expected to influence the definition and specification of Future Internet architecture design from viewpoints of Internet of Things and Internet of Services. The facility comprises a large number of Internet of Things devices deployed in several urban scenarios which will be federated into a single testbed. In this paper the deployment being carried out at the main location, namely Santander city, is described. Besides presenting the current deployment, in this article the main insights in terms of the architectural design of a large-scale IoT testbed are presented as well. Furthermore, solutions adopted for implementation of the different components addressing the required testbed functionalities are also sketched out. The IoT experimentation facility described in this paper is conceived to provide a suitable platform for large scale experimentation and evaluation of IoT concepts under real-life conditions.This work is funded by research project SmartSantander, under FP7-ICT-2009-5 of the 7th Framework Programme of the European Community. Authors would like to acknowledge the collaboration with the rest of partners within the consortium leading to the results presented in this paper

    Towards a Tool-based Development Methodology for Pervasive Computing Applications

    Get PDF
    Despite much progress, developing a pervasive computing application remains a challenge because of a lack of conceptual frameworks and supporting tools. This challenge involves coping with heterogeneous devices, overcoming the intricacies of distributed systems technologies, working out an architecture for the application, encoding it in a program, writing specific code to test the application, and finally deploying it. This paper presents a design language and a tool suite covering the development life-cycle of a pervasive computing application. The design language allows to define a taxonomy of area-specific building-blocks, abstracting over their heterogeneity. This language also includes a layer to define the architecture of an application, following an architectural pattern commonly used in the pervasive computing domain. Our underlying methodology assigns roles to the stakeholders, providing separation of concerns. Our tool suite includes a compiler that takes design artifacts written in our language as input and generates a programming framework that supports the subsequent development stages, namely implementation, testing, and deployment. Our methodology has been applied on a wide spectrum of areas. Based on these experiments, we assess our approach through three criteria: expressiveness, usability, and productivity
    • …
    corecore