99,088 research outputs found

    Assisting software architects in architectural decision-making using Quark

    Get PDF
    Non-Functional Requirements (NFRs) and constraints are among the principal drivers of architectural decision-making. NFRs are improved or damaged by architectural decisions (ADs), while constraints directly include or exclude parts of the architecture (e.g., logical components or technologies). We may determine the impact of an AD, or which parts of the architecture are affected by a constraint, but at the end it is hard to know if we are respecting the NFRs and the imposed constraints with all the ADs made. In the usual approach, architects use their own experience to produce software architectures that comply with the NFRs and imposed constraints, but at the end, especially for crucial decisions, the architect has to deal with complex trade-offs between NFRs and juggle with possible incompatibilities raised by the imposed constraints. In this paper we present Quark, a method to assist software architects in architectural decision-making, and the conceptualization of the relationship between NFRs and ADs defined in Arteon, an ontology to represent and manage architectural knowledge. Finally, we provide an overview of the Quark and Arteon implementation, the ArchiTech tool.Peer ReviewedPostprint (published version

    Multi attribute architecture design decision for core asset derivation

    Get PDF
    Software Product Line (SPL) is an effective approach in software reuse in which core assets can be shared among the members of the product line with an explicit treatment of variability. Core assets, which are developed for reuse in domain engineering, are selected for product specific derivation in application engineering. Decision making support during product derivation is crucial to assist in making multiple decisions during product specific derivation. Multiple decisions are to be resolved at the architectural level as well as the detailed design level, address the need for assisting the decision making process during core asset derivation. Architectural level decision making is based on imprecise, uncertain and subjective nature of stakeholder for making architectural selection based on non- functional requirements (NFR). Furthermore, detail design level involves the selection of suitable features which have the rationale behind each decision. The rationale for the selection, if not documented properly, will also result in loss of tacit knowledge. Therefore, a multi-attribute architecture design decision technique is proposed to overcome the above mentioned problem. The technique combines Fuzzy Analytical Hierarchy Process (FAHP) with lightweight architecture design decision documentation to support the decision making during core asset derivation. We demonstrate our approach using the case study of Autonomous Mobile Robot (AMR). The case study implementation shows showed that the proposed technique supports software engineer in the process of decision making at the architecture and detail design levels

    Rationale Management Challenges in Requirements Engineering

    Get PDF
    Rationale and rationale management have been playing an increasingly prominent role in software system development mainly due to the knowledge demand during system evaluation, maintenance, and evolution, especially for large and complex systems. The rationale management for requirements engineering, as a commencing and critical phase in software development life cycle, is still under-exploited. In this paper, we first survey briefly the state-of-the-art on rationale employment and applications in requirements engineering. Secondly, we identify the challenges in integrating rationale management in requirements engineering activities in order to promote further investigations and define a research agenda on rationale management in requirements engineering.

    Function allocation theory for creative design

    Get PDF
    Function structure influences on systems architecture (or product architecture). This paper discusses a design method for creative design solutions that focuses on the allocation of functions. It first proposes a theory called “Function Allocation Theory” to allocate a function to an appropriate subsystem or component during the systems decomposition phase. By doing so, the complexity of design solutions can be reduced. The theory is applied to some examples including collaborative robots and robotics maintenance. Finally, the paper illustrates a case study of designing a reaction-free fastening system using this theory

    Non-functional requirements: size measurement and testing with COSMIC-FFP

    Get PDF
    The non-functional requirements (NFRs) of software systems are well known to add a degree of uncertainty to process of estimating the cost of any project. This paper contributes to the achievement of more precise project size measurement through incorporating NFRs into the functional size quantification process. We report on an initial solution proposed to deal with the problem of quantitatively assessing the NFR modeling process early in the project, and of generating test cases for NFR verification purposes. The NFR framework has been chosen for the integration of NFRs into the requirements modeling process and for their quantitative assessment. Our proposal is based on the functional size measurement method, COSMIC-FFP, adopted in 2003 as the ISO/IEC 19761 standard. Also in this paper, we extend the use of COSMIC-FFP for NFR testing purposes. This is an essential step for improving NFR development and testing effort estimates, and consequently for managing the scope of NFRs. We discuss the merits of the proposed approach and the open questions related to its design

    How do software architects consider non-functional requirements: an exploratory study

    Get PDF
    © 2012 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes,creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.Dealing with non-functional requirements (NFRs) has posed a challenge onto software engineers for many years. Over the years, many methods and techniques have been proposed to improve their elicitation, documentation, and validation. Knowing more about the state of the practice on these topics may benefit both practitioners' and researchers' daily work. A few empirical studies have been conducted in the past, but none under the perspective of software architects, in spite of the great influence that NFRs have on daily architects' practices. This paper presents some of the findings of an empirical study based on 13 interviews with software architects. It addresses questions such as: who decides the NFRs, what types of NFRs matter to architects, how are NFRs documented, and how are NFRs validated. The results are contextualized with existing previous work.Peer ReviewedPostprint (author’s final draft

    Early Quantitative Assessment of Non-Functional Requirements

    Get PDF
    Non-functional requirements (NFRs) of software systems are a well known source of uncertainty in effort estimation. Yet, quantitatively approaching NFR early in a project is hard. This paper makes a step towards reducing the impact of uncertainty due to NRF. It offers a solution that incorporates NFRs into the functional size quantification process. The merits of our solution are twofold: first, it lets us quantitatively assess the NFR modeling process early in the project, and second, it lets us generate test cases for NFR verification purposes. We chose the NFR framework as a vehicle to integrate NFRs into the requirements modeling process and to apply quantitative assessment procedures. Our solution proposal also rests on the functional size measurement method, COSMIC-FFP, adopted in 2003 as the ISO/IEC 19761 standard. We extend its use for NFR testing purposes, which is an essential step for improving NFR development and testing effort estimates, and consequently for managing the scope of NFRs. We discuss the advantages of our approach and the open questions related to its design as well
    corecore