Learn More
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(More)
[Context and motivation] Non-functional requirements (NFRs) play a fundamental role when software architects need to make informed decisions. Criteria like efficiency or integrity determine up to a great extent the final form that the logical, development and deployment architectural views take. [Question/problem] Continuous evidence is needed about the(More)
— The impact of non-functional requirements (NFRs) over software systems has been widely documented. Consequently, cost-effective software production method shall provide means to integrate this type of requirements into the development process. In this vision paper we analyze this assumption over a particular type of software production paradigm:(More)
By 2016 an estimated 95% of all commercial software packages will include Open Source Software (OSS). This extended adoption is yet not avoiding failure rates in OSS projects to be as high as 50%. Inadequate risk management has been identified among the top mistakes to avoid when implementing OSS-based solutions. Understanding, managing and mitigating OSS(More)
In the last years, Architectural Knowledge (AK) has emerged as a discipline for making explicit architects' knowledge and architectural decision-making processes. As a consolidated formalism for the representation of conceptual knowledge, ontologies have already been proposed for AK representation. Aligning with this trend, we are currently developing an(More)
Quality attributes (QA) play a fundamental role when architecting software systems. However, in contrast to QA in traditional software systems, the role of QA when architecting service-based systems (SBS) has not yet been studied in depth. Thus, we conducted a descriptive survey to explore how QA are treated during the architecting of SBS. Data were(More)
Researchers from requirements engineering and software architecture had emphasized the importance of Non-Functional Requirements and their influence in the architectural design process. To improve this process we have designed a tool, ArchiTech, which aims to support architects during the design process by suggesting alternative architectural decisions that(More)
In this paper, we propose a layered approach to managing risks in OSS projects. We define three layers: the first one for defining risk drivers by collecting and summarising available data from different data sources, including human-provided contextual information; the second layer, for converting these risk drivers into risk indicators; the third layer(More)