{"title":"Domain Engineering of Software Product Lines with Service-Oriented Architecture","authors":"P. G. G. Queiroz, R. Braga","doi":"10.1109/SBCARS.2010.18","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.18","url":null,"abstract":"Software product lines (SPL) have been established as one of the best ways to promote reuse of both requirements and software architecture, even with a high cost when compared to the development of single systems. Service-oriented architecture (SOA) can further facilitate the development of SPL, since several features of the SPL can be implemented by services available on a network. This paper presents SoProL-WS, which is a deve-lopment approach for SPL using SOA. The focus of this article is in the domain engineering phase, where the SPL architecture is developed based on services. From this architecture, one can derive products in the subsequent application engineering phase. The goal of SoProL-WS is to reduce SPL development costs and time, facilitating its maintenance, evolution and derivation of its members. Additionally, this paper presents a case study where SoProl-WS is applied to develop a product line for Web auctions.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116109710","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
G. Rodrigues, Vander Alves, Renato Franklin, Luiz A. F. Laranjeira
{"title":"Dependability Analysis in the Ambient Assisted Living Domain: An Exploratory Case Study","authors":"G. Rodrigues, Vander Alves, Renato Franklin, Luiz A. F. Laranjeira","doi":"10.1109/SBCARS.2010.25","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.25","url":null,"abstract":"Ambient Assisted Living (AAL) investigates the development of systems involving the use of different types of sensors, which monitor activities and vital signs of lonely elderly people in order to detect emergency situations or deviations from desirable medical patterns. Differently from the state-of-the-art of 'push-buttons', AAL solutions need to provide high accuracy and proactive responses, 'perceiving' lonely elderly people in their household environment through various sensors and carrying out appropriate actions under the control of the underlying software. Dependability in the AAL domain is a critical requirement, since poor system availability, reliability, safety, or integrity may cause inappropriate emergency assistance to potentially have fatal consequences. Nevertheless, contemporary research has not focused on assessing dependability in this domain. Therefore, this work aims at exploring the application of modern quantitative and qualitative dependability analysis techniques based on software architecture. The benefits of using these techniques are twofold. Firstly, they allow us to seamlessly integrate the analysis during subsequent software lifecycle stages in critical scenarios. Secondly, we aim to identify the components which have the highest impact on software system dependability, and therefore, be able to address software architecture and individual software component problems before they are implemented and critical errors occur.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129625778","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Analyzing the Concept of Components in the Brechó-VCM Approach through a Sociotechnical and Software Reuse Management Perspective","authors":"R. Santos, C. Werner","doi":"10.1109/SBCARS.2010.26","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.26","url":null,"abstract":"This paper analyzes the concept of components in Software Engineering (SE) through a sociotechnical approach. Based on a ranking of critical elements related to Component-Based SE, a study with experts concludes that components are potential assets in local and collaborative scenarios. This fact motivated an analysis of a value-based component market approach called Brechó-VCM considering its adherence to the Reuse Management Process, part of MPS Quality Model, in order to treat some critical elements in a reuse-based environment. The results reinforce that SE community needs to learn with the case of components aiming to understand SE as a sociotechnical construction.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128791607","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Leandra Mara, F. Dantas, Gustavo Honorato, Alessandro F. Garcia, C. Lucena
{"title":"Detecting Modularity Flaws of Evolving Code: What the History Can Reveal?","authors":"Leandra Mara, F. Dantas, Gustavo Honorato, Alessandro F. Garcia, C. Lucena","doi":"10.1109/SBCARS.2010.11","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.11","url":null,"abstract":"Modularity flaws can hamper the reuse and maintainability of code or even indicating the architecture degradation of a system. Therefore, researchers have increasingly investigated new mechanisms to assist the detection of these anomalies. Strategies for detection these flaws usually ignore information about the software change history. However, recent studies report that these strategies have been considered counter-productive. This article proposes and evaluates the use of detection strategies consisting of metrics that consider historic properties of evolving source code. It also proposes tool support for history-sensitive detection of modularity flaws. The strategies are evaluated in terms of precision and recall to detect three classic modularity flaws over 16 versions of two systems. Several observations were made, including: (i) exploiting information about the code evolution can contribute to effective detection of modularity flaws; and (ii) in both systems, history-sensitive strategies presented results superior to conventional strategies.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"890 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123250182","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Hugo de Brito, H. Rocha, Ricardo Terra, M. T. Valente
{"title":"On-the-Fly and Non-invasive Extraction of Runtime Architectures Using Hierarchical Object Graphs","authors":"Hugo de Brito, H. Rocha, Ricardo Terra, M. T. Valente","doi":"10.1109/SBCARS.2010.24","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.24","url":null,"abstract":"Reverse engineering techniques are usually applied to extract concrete architecture models. However, these techniques usually extract diagrams that just reveal static architectures, such as class diagrams. On the other hand, the extraction of dynamic architecture models can be particularly useful for an initial understanding of how a system works or to evaluate the impact of a possible maintenance task. This paper describes an approach to extract hierarchical object graphs from running systems. The proposed graphs have several features that -- when combined -- make them valuable when compared to similar approaches, including: (a) support to the hierarchization of objects in domains, (b) support to the full spectrum of relations and entities that are common in object-oriented systems, (c) support to multithreading systems, (d) support to a language to alert about expected (or unexpected) relations between extracted objects. We also describe the design and implementation of a tool for visualizing the proposed object graphs. Finally, we show how our approach can contribute for understanding the running architecture of two systems.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"107 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129492465","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
F. Marinho, Aline Luiza da Costa, Francisco F. P. Lima, J. B. F. Neto, J. B. P. Filho, L. Rocha, Valéria Lelli Leitão Dantas, Rossana Andrade, E. Teixeira, C. Werner
{"title":"An Architecture Proposal for Nested Software Product Lines in the Domain of Mobile and Context-Aware Applications","authors":"F. Marinho, Aline Luiza da Costa, Francisco F. P. Lima, J. B. F. Neto, J. B. P. Filho, L. Rocha, Valéria Lelli Leitão Dantas, Rossana Andrade, E. Teixeira, C. Werner","doi":"10.1109/SBCARS.2010.15","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.15","url":null,"abstract":"The domain of mobile and context-aware applications involves challenging requirements, such as mobility and adaptation, which makes the application development complex for this area. Considering this scenario, we used a nested software product line (SPL) that aims to facilitate the construction of such software by domain decomposition in two levels of analysis. The first concerns the characteristics of a generic SPL for the mobile and context-aware domain. The second is the requirement analysis of a business domain together with characteristics of the generic level. The goal of this paper is to propose a nested SPL.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"131 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128341056","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
S. T. Carvalho, O. Loques, Leonardo Gresta Paulino Murta
{"title":"Dynamic Variability Management in Product Lines: An Approach Based on Architectural Contracts","authors":"S. T. Carvalho, O. Loques, Leonardo Gresta Paulino Murta","doi":"10.1109/SBCARS.2010.16","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.16","url":null,"abstract":"Software product lines capture commonalities and variabilities of products in order to facilitate the process development of new products. However, variability management is traditionally done just in development time and deployment time, not attending classes of applications that require a high degree of adaptability such as ubiquitous/pervasive and context-aware applications. This paper presents an approach for runtime variability management, considering product lines aimed at context-aware applications. The approach focuses on product line architecture description associated to contracts, which are used to manage dynamic variabilities. In a contract can be set services and context rules at a high level of abstraction. Services encapsulate variabilities and are capable of adapting/reconfiguring architecture of a product on dynamic way, while the rules determine a context which a particular service should be activated. This approach was applied in scenarios involving dynamic variabilities in a product line focused on home health care applications, where it was possible to observe its feasibility.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130392499","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Designing a Set of Service-Oriented Systems as a Software Product Line","authors":"Flávio M. Medeiros, E. Almeida, S. Meira","doi":"10.1109/SBCARS.2010.17","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.17","url":null,"abstract":"Software reuse is crucial for organizations interested in productivity gains and software quality. In this context, Software Product Line (SPL) and Service-Oriented Architecture (SOA) are two reuse strategies that share common goals and can be used together with the purpose of increasing reuse and producing service-oriented systems, customizable to specific customers, faster and cheaper than creating individual systems. In this sense, this work investigates the problem of designing software product lines using service-oriented architectures, and presents a systematic approach to design product lines based on services. The approach provides guidance to identify, design and document components, services, service compositions and their associated communication flows. In addition, an initial experimental study performed with the intention of validating and refining the approach is also depicted demonstrating that the proposed solution can be viable.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"69 5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114260063","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Empirical Validation of Complexity and Extensibility Metrics for Software Product Line Architectures","authors":"E. Junior, J. Maldonado, I. Gimenes","doi":"10.1109/SBCARS.2010.13","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.13","url":null,"abstract":"The software product line (PL) architecture (PLA) is one of the most important PL core assets as it is the abstraction of the products that can be generated, and it represents similarities and variabilities of a PL. Its quality attributes analysis and evaluation can serve as a basis for analyzing the managerial and economical values of a PL. We proposed metrics for PLA complexity and extensibility quality attributes. This paper is concerned with the empirical validation of such metrics. As a result of the experimental work we can conclude that the metrics are relevant indicators of complexity and extensibility of PLA by presenting their correlation analysis.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128600131","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Medeiros, Eduardo Figueiredo, Ismênia Galvão, Alessandro F. Garcia, T. Batista, C. Sant'Anna
{"title":"Concern-Based Assessment of Architectural Stability: A Comparative Study","authors":"A. Medeiros, Eduardo Figueiredo, Ismênia Galvão, Alessandro F. Garcia, T. Batista, C. Sant'Anna","doi":"10.1109/SBCARS.2010.23","DOIUrl":"https://doi.org/10.1109/SBCARS.2010.23","url":null,"abstract":"A concern is any consideration that can impact the software architecture and other artefacts. Sustaining stability of concerns realised in architectural designs is essential to obtain long-lasting software products. It is often assumed that concern assessment mechanisms are effective to predict architecture stability. They ought to exert a positive or detrimental effect on software stability. In fact, there is a growing variety of concern assessment mechanisms to support the quantification of concern properties in software artefacts. They range from metrics that compute basic concern characteristics – such as concern tangling and scattering – to patterns that represent recurring concern structures. However, the vast majority of concern assessment mechanisms has not been empirically validated yet. This paper presents a comparative study on the efficacy of a family of concern metrics and patterns to support architectural stability analysis. The correlation of concern properties and architecture instabilities is determined by quantifying the Spearman Correlation indicator. This study relies on several releases of two evolving software systems, where the architectural instabilities have been previously and independently documented.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"80 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126993837","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}