Gabriel Soares, Sávio Freire, Nicolli Rios, B. Pérez, C. Castellanos, D. Correal, Manoel G. Mendonça, C. Izurieta, C. Seaman, R. Spínola
{"title":"Investigating how Agile Software Practitioners Repay Technical Debt in Software Projects","authors":"Gabriel Soares, Sávio Freire, Nicolli Rios, B. Pérez, C. Castellanos, D. Correal, Manoel G. Mendonça, C. Izurieta, C. Seaman, R. Spínola","doi":"10.1145/3571473.3571499","DOIUrl":"https://doi.org/10.1145/3571473.3571499","url":null,"abstract":"Context: The adoption of agile methodologies can bring benefits to software projects, but such methodologies are also prone to technical debt (TD) accumulation. Knowing the practices used for repaying debt items and practice avoidance reasons (PARs) considered for explaining their non-repayment can aid agile practitioners to improve their capacity to manage TD. Aims: To investigate how agile software practitioners repay TD items in software projects. Method: We analyze a data set composed of 179 answers collected through a globally distributed family of industrial surveys on TD. Results: Agile practitioners tend to not repay debt items, mainly for those items that happen very often. The main PARs that explain the non-repayment are focusing on short-term goals, lack of organizational interest, and cost. Conversely, the repayment practices code refactoring, investing effort on TD repayment activities, and investing effort on testing activities are the more commonly used practices for eliminating debt items. We organize all this information in TD repayment boards. Conclusion: TD repayment in agile software projects is still far from ideal. The set of practices and PARs, and the boards can support practitioners in sharing their experiences in TD repayment.","PeriodicalId":440784,"journal":{"name":"Proceedings of the XXI Brazilian Symposium on Software Quality","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131988709","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}
Regina Albuquerque, A. Malucelli, S. Reinehr, G. Santos
{"title":"An Investigation on Abandonment and Continuity of Software Process Improvement Programs","authors":"Regina Albuquerque, A. Malucelli, S. Reinehr, G. Santos","doi":"10.1145/3571473.3571505","DOIUrl":"https://doi.org/10.1145/3571473.3571505","url":null,"abstract":"Abstract. O alcance da qualidade de produtos e serviços de software é um diferencial de mercado para as organizações de software. Por isso, a melhoria de processos de software baseada em modelos de maturidade é um tema de pesquisa relevante. Sendo, vital para as organizações que buscam melhorar seus processos saber o que pode influenciar negativamente e positivamente o sucesso de programas de SPI. Assim, este artigo apresenta os resultados de uma pesquisa qualitativa para entender como ocorre o abandono e a continuidade de programas de SPI após Avaliações bem-sucedidas baseadas em modelos de maturidade. Foram feitos estudos de caso em dezesseis organizações brasileiras de software. Os resultados mostram que as iniciativas de SPI são impactadas tanto por fatores internos (pessoas, gestão do projeto da SPI, aspectos organizacionais e processos) quanto por fatores externos (crise econômica do país, terceirização, influência política governamental, falta de politica externa de apoio à SPI, mudança do negócio, dissolução de sociedade, fusão de empresas, falta de demanda externa por modelos de maturidade, falta de acompanhamento do órgão do modelo, adesão a métodos ágeis, maturidade dos profissionais da SPI e gestão da garantia da qualidade) ao contexto organizacional. Além disso, o artigo apresenta recomendações que podem ajudar estas organizações a mitigar os riscos de fracassos destas iniciativas.","PeriodicalId":440784,"journal":{"name":"Proceedings of the XXI Brazilian Symposium on Software Quality","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133437390","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":"CATS#: A Testing Technique to Support the Specification of Test Cases for Context-Aware Software Systems","authors":"A. Doreste, G. Travassos","doi":"10.1145/3571473.3571507","DOIUrl":"https://doi.org/10.1145/3571473.3571507","url":null,"abstract":"Context-Aware Software Systems (CASS) capture the context and have their behavior affected by it. Therefore, these systems must be prepared to deal with the context and its variation. If they don’t, a failure can cause profound damage since they deal closely with the real world. Nevertheless, there is a lack of software technologies to support their testing. Thus, this work presents CATS#, a testing technique to help the specification of test cases for Context-Aware Software Systems (CASS). CATS# was applied in a project by undergraduate students. The results indicate its initial feasibility to support the specification of CASS test cases for situations not covered by conventional testing techniques.","PeriodicalId":440784,"journal":{"name":"Proceedings of the XXI Brazilian Symposium on Software Quality","volume":"51 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127942919","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}
Paulo Duarte, A. Sousa, Jefferson de Carvalho Silva, I. Santos, Marina Reis Fernandes, D. R. Vasconcelos, Mariana Salamoni Francisco, Rossana Andrade
{"title":"Same Problems, Different Projects: Do the Same Solutions Work?","authors":"Paulo Duarte, A. Sousa, Jefferson de Carvalho Silva, I. Santos, Marina Reis Fernandes, D. R. Vasconcelos, Mariana Salamoni Francisco, Rossana Andrade","doi":"10.1145/3571473.3571497","DOIUrl":"https://doi.org/10.1145/3571473.3571497","url":null,"abstract":"Software requirements management is a process that involves several activities that generate artifacts that serve as a basis for project development. This process occurs continuously and is responsible for performing analysis, tracking, documentation, prioritization and change control so that there is agreement on the requirements between all parties involved. However, these activities are not trivial and their form of execution varies according to the nature of each project. With this in mind, teams should be able to identify points for improvement, such as applying new practices, new technologies or tools and allocating resources to make the process more optimized and more productive. The paper presents an experience report related to the identification and application of improvements and good practices within two software development projects inside the same research group. In the first project, we address problems involving software requirements. In the second one we address the problem involving the measurement of the size of tasks. Both projects target to release the same “bigger” application but each one develops a minor part of it. Finally, difficulties and lessons learned, in relation to the changes made in the current requirements management process in both projects, are presented.","PeriodicalId":440784,"journal":{"name":"Proceedings of the XXI Brazilian Symposium on Software Quality","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128103185","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}
Luiz Alexandre M. Costa, A. Fontão, Rodrigo Santos
{"title":"PSECO-IM: An Approach for Incident Management to Support Governance in Proprietary Software Ecosystems","authors":"Luiz Alexandre M. Costa, A. Fontão, Rodrigo Santos","doi":"10.1145/3571473.3571486","DOIUrl":"https://doi.org/10.1145/3571473.3571486","url":null,"abstract":"Organizations that produce software cooperatively and competitively to satisfy customer needs give more attention in relationships among several actors (e.g., providers, developers, and IT managers) to build the value creation network called Software Ecosystem (SECO). As a type of SECO, proprietary SECO concerns data concentrated on a platform with contributions protected by intellectual property. The technological platform that supports the business initiatives is developed using different technologies with dozens of integration points, promoting a network of dependencies and architectural complexities. Some studies show that systems downtime (incidents) causes major image and financial upheavals for organizations. To mitigate the risks of incidents, the IT management team should implement strategies based on governance mechanisms to sustain the platform. Our work aims to develop and evaluate a process-based approach (PSECO-IM) for incident management to support the IT management team in the governance of a technology platform architecture in a proprietary SECO. We also addressed some of the identified challenges of quality in proprietary SECO, such as standardized software processes, knowledge management, and governance strategies. As a final result, we got positive feedback on the relevance of the tool in improving governance strategies related to incident management by the organization’s practitioners. We argue that this work is appropriate for the Software Quality area since it covers studies on three pillars: people, process, and technology, such as tacit knowledge, low-quality software, governance, incident management, and proprietary SECO.","PeriodicalId":440784,"journal":{"name":"Proceedings of the XXI Brazilian Symposium on Software Quality","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-05-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121790909","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":"Proceedings of the XXI Brazilian Symposium on Software Quality","authors":"","doi":"10.1145/3571473","DOIUrl":"https://doi.org/10.1145/3571473","url":null,"abstract":"","PeriodicalId":440784,"journal":{"name":"Proceedings of the XXI Brazilian Symposium on Software Quality","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128966473","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}