Patrícia Mello, Pablo Ximenes, Rousiany Lemos, Ana Luíza Bessa, M. Cortés, C. Rocha
{"title":"On the applicability of BDD in a Business Intelligence project: experience report","authors":"Patrícia Mello, Pablo Ximenes, Rousiany Lemos, Ana Luíza Bessa, M. Cortés, C. Rocha","doi":"10.1145/3275245.3275276","DOIUrl":"https://doi.org/10.1145/3275245.3275276","url":null,"abstract":"Behavior-driven development (BDD) is a software development technique that in order to succeed relies heavily on the definition of clear acceptance criteria by software developers in the form of behavioral scenarios, later translated into acceptance tests. The adoption of BDD in Business Intelligence (BI) projects requires developers to have a broad acquaintance to business that often even customers themselves do not possess. This article presents an experience report on the use of BDD in the development of a large public health related BI project. Experience suggests that the use of BDD may not be appropriate for BI projects, especially during the early stages of development, when there is still insufficient clarity about business acceptance criteria. The need for broad maturity towards business understanding makes it complex to adopt the behavioral approach within the development process in projects of this nature.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123543362","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":"A Survey on Software Testing Education in Brazil","authors":"L. Paschoal, S. Souza","doi":"10.1145/3275245.3275289","DOIUrl":"https://doi.org/10.1145/3275245.3275289","url":null,"abstract":"Software testing is one of the most important quality assurance activities. However, it is considered a challenge while teaching in undergraduate programs. One of the implied challenges is how to include this topic in computing undergraduate programs and in which level of detail. The industry has recognized the importance of this deeper and more solid formation. Nevertheless, in most cases, teaching software testing is distributed in disciplines and with different levels of detail. Each teaching method of software testing has its own advantages and disadvantages. Understanding this scenario is important for the proposition of improvements and innovations in the way of teaching software testing. This paper presents the results of a survey conducted throughout various Brazilian computing courses in different universities to identify which and how topics on software testing are taught. The objective is to identify the way in which the content is given, the support mechanisms used in the teaching practices, the challenges imposed and the instruments used to evaluate the students' learning. The survey was conducted in November of 2017 with Higher Education Institutions (HEI) lecturers distributed in different regions of Brazil, which have undergraduate programs in computer science. From the results, suggestions are presented and discussed in order to promote the dissemination of knowledge in this area of software engineering.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123028610","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":"Using an Ontology-based Approach for Integrating Applications to support Software Processes","authors":"Laylla D. C. Renault, M. Barcellos, R. Falbo","doi":"10.1145/3275245.3275269","DOIUrl":"https://doi.org/10.1145/3275245.3275269","url":null,"abstract":"Software organizations use several applications to support their software processes. To properly support the software processes, applications should be integrated at different layers (data, service, and process). Moreover, the integration should cover semantic aspects. Therefore, an approach that provides guidelines on how to perform integration at different layers addressing semantic aspects can be helpful. This paper presents an extension of the Ontology-based Approach for Semantic Integration (OBA-SI), focusing on semantic integration at process layer. This extension establishes relationships between integration at data, service and process layers, and uses task ontologies and a process ontology to guide integration at process layer. It was used to provide an integrated solution involving applications supporting the Issue Management and Software Configuration Management processes.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123877204","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":"Causal Analysis and Resolution with Theory of Constraints: The CARTOC Method","authors":"Yure Ouriques Oliveira, Cristina Cerdeiral, Gleison Santos","doi":"10.1145/3275245.3275252","DOIUrl":"https://doi.org/10.1145/3275245.3275252","url":null,"abstract":"Several problems can affect software development projects. Less complex problems can be solved punctually, or by applying simple Cause Analysis techniques which typically requires a low analysis effort. Problems of greater complexity, which occasionally affect other projects, are difficult to infer and require more extensive analysis effort possibly using more complex techniques. Also, not all factors that cause a complex problem have the same impact on the problem root cause. Knowing how to properly identify the problem root cause is critical to avoid its recurrence. We present the CARTOC method that structures the process of human reasoning to reduce the bias of those involved with the analysis during the root cause identification phase, validate established cause and effect relationships, and direct treatment of the identified causes. To achieve these objectives, CARTOC uses the Thinking Processes of the Theory of Constraints. We present a case study which produced evidences of CARTOC and Thinking Processes applicability to cause analysis and problem solving.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"77 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127705405","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}
Barbara Cristina A. Silveira, Thiago Silva-de-Souza, A. Rocha
{"title":"Software Accessibility for Visually Impaired People: a systematic mapping study","authors":"Barbara Cristina A. Silveira, Thiago Silva-de-Souza, A. Rocha","doi":"10.1145/3275245.3275266","DOIUrl":"https://doi.org/10.1145/3275245.3275266","url":null,"abstract":"Software accessibility evaluation for visually impaired people is strongly restricted to the Web platform. Many tools are able to automatically evaluate the accessibility degree of a website according to given Web accessibility guidelines. However, these guidelines are not sufficient to objectively evaluate the accessibility of any software product, including desktop and mobile platforms. On the other hand, the ISO/IEC 25000 standards, which provide a conceptual framework for quality specification and evaluation of software products, proposes measures that while providing some guidance on how to observe and measure aspects related to accessibility are relatively abstract. In this context, this work presents a systematic mapping study that tried to identify in the technical literature the attributes and measures of software accessibility for visually impaired people, take into account that visual impairment is the most frequent among people with some type of disability. Therefore, 14 attributes and 24 measures of software accessibility were identified in seven different papers. However, some of the identified accessibility attributes have subjective characteristics, leading to inaccurate measures. Among the identified measures, the majority refers to Web page resources, which may restrict their applicability to this kind of software.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"108 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121945919","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. Fontão, B. Bonifácio, R. Santos, A. C. Dias-Neto
{"title":"Mobile Application Development Training in Mobile Software Ecosystem: Investigating the Developer eXperience","authors":"A. Fontão, B. Bonifácio, R. Santos, A. C. Dias-Neto","doi":"10.1145/3275245.3275262","DOIUrl":"https://doi.org/10.1145/3275245.3275262","url":null,"abstract":"In a Mobile Software Ecosystem (MSECO), large software organizations (or keystones) need to attract/coach external developers to meet users' demands. In this scenario, it is necessary to evaluate developers' experiences during their involvement in trainings as a strategy to engage developers to contribute to the MSECO expansion (quantitatively and qualitatively). In this paper, we report a study on the comparison of a process-based approach for training mobile application developers in MSECO against an ad hoc approach (developer's and evangelist's personal processes) to analyze the effect of evangelist-developers interaction in MSECO from Developer experience (DX). We also propose a set of steps to assist keystone organizations to govern developers based on DX sources and with evangelists' support in trainings.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130455087","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}
Wolleson Kevin Kelm, A. V. Mello, Maicon Bernardino
{"title":"The State of Practice in Requirements Engineering in the Development of Mobile Applications","authors":"Wolleson Kevin Kelm, A. V. Mello, Maicon Bernardino","doi":"10.1145/3275245.3275268","DOIUrl":"https://doi.org/10.1145/3275245.3275268","url":null,"abstract":"The quantity of software applications related to mobile devices is a growing trend, as well as the resources and the computer power offered by these kind of devices. Though some techniques of software engineering can be applied to this domain, these applications have to deal with a lot of limitations inherent to the mobile ecosystem that are not present in conventional desktop applications. One of the areas with the biggest importance, both in the traditional software engineering and on the one applied to mobile devices, is the Requirements Engineering. In this context, the general goal of this work is to identify the state of practice in requirements engineering used in the market for developing mobile applications. To achieve this goal, a survey was prepared and applied to mobile developers available on Google Play, obtaining 85 responses from 26 different countries. The results show that the time devoted to the Requirements Engineering is lower than recommended in the literature; less than half of survey participants performing the requirements validation activity and few developers make use of approaches to analyse software requirements. Therefore, Requirements Engineering is neglected in many aspects by most mobile application developers.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134446020","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}
Erick Sharlls Ramos de Pontes, U. Kulesza, Carlos Eduardo da Silva, E. Barbosa, Elder Cirilo
{"title":"Extracting and Evolving a Software Product Line from Existing Web-based Systems: An Experience Report","authors":"Erick Sharlls Ramos de Pontes, U. Kulesza, Carlos Eduardo da Silva, E. Barbosa, Elder Cirilo","doi":"10.1145/3275245.3276245","DOIUrl":"https://doi.org/10.1145/3275245.3276245","url":null,"abstract":"This paper presents an experience report of extraction and evolution of software product lines (SPLs) from existing web-based systems. We describe the activities to succesfully refactor and evolve an web-based system of management of university rooms and laboratories by promoting the management and modularization of their variabilities. Several lessons learned are derived from that experience, includying the proposal of a method for the extraction and evolution of SPLs, as well as strategies for variability refactoring.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"150 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124197176","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}
Vitor Mendes, Elio Ribeiro Faria Junior, C. Garcia, A. Malucelli
{"title":"Kanban and process mining in the task management","authors":"Vitor Mendes, Elio Ribeiro Faria Junior, C. Garcia, A. Malucelli","doi":"10.1145/3275245.3275286","DOIUrl":"https://doi.org/10.1145/3275245.3275286","url":null,"abstract":"In a world continuously changing with markets that are in permanent evolution and in contend, the companys must inovate, be more flexible, offer quality and respond swiftly. These factors do not apply for product manufacture processes only, but for software development processes aswell. This paper describes an account of experiences with the use of Kanban to improve the activities management in an ERP's development. To do this, a mapping of the current process was carried out, so to propose a set of improvements in the management of activities. As a result, a set of tools were implemented to enable a clear view and control over the activities, as well as to integrate the Issue Tracking System with the Kanban board. Furthermore, a process mining technique was used to estimate the time of conclusion of the activities and to detect performance problem.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"60 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129561255","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}
V. França, Renato Balancieri, G. C. L. Leal, Ana Cristina Rouiller
{"title":"Mixed Integer Programming helping Requirements Allocation for the NRP in SCRUM Teams","authors":"V. França, Renato Balancieri, G. C. L. Leal, Ana Cristina Rouiller","doi":"10.1145/3275245.3275272","DOIUrl":"https://doi.org/10.1145/3275245.3275272","url":null,"abstract":"This paper proposes an approach based on mathematical modeling to provide decision making support for the Next Release Problem (NRP) arising in software development and maintenance companies that use SCRUM to manage teams and new releases of its software products. This approach aims to support the decisions from Product Owners and Teams about which requirements should be implemented for the next software release. Therefore it is proposed to use mixed integer programming in three different objective functions: (i) maximization of the customer satisfaction (considering their business value), (ii) minimization of software development time and (iii) minimization of the costs to produce the requirements. We consider constraints such as team availability, dependencies among requirements, the team's performance among others. The modeling was performed with the help of the AIMMS tool and some case studies were performed in three software development and maintenance companies using real data. The results show that it was possible to adapt the NRP for this kind of companies, achieving a better customer's satisfaction and business results using our approach.","PeriodicalId":443823,"journal":{"name":"Proceedings of the XVII Brazilian Symposium on Software Quality","volume":"118 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122890862","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}