Mostrar el registro sencillo del ítem

dc.contributor.advisorCota, Erika Fernandespt_BR
dc.contributor.authorKrause, Matheuspt_BR
dc.date.accessioned2020-08-19T03:39:26Zpt_BR
dc.date.issued2019pt_BR
dc.identifier.urihttp://hdl.handle.net/10183/212998pt_BR
dc.description.abstractO teste é uma prática importante de garantia de qualidade do processo moderno de desenvolvimento de software. Como não podemos dar ao luxo de testar todos os aspectos de um programa, é essencial definir o escopo desses testes (isto é, quais aspectos do software o teste está exercitando) a fim de tornar a técnica viável. A delimitação desse escopo é dificultada à medida que mais e mais camadas de abstração são incorporadas às linguagens de programação. Embora esses novos paradigmas e construções de programação possam aumentar a funcionalidade do código, eles também introduzem novas classes de falhas específicas de linguagem, algumas das quais são sutis e difíceis de testar computacionalmente. Isso deixa os testadores de software com a tarefa adicional de estabelecer criteriosamente se a gravidade dessas falhas específicas justifica o custo de elencar novos testes exclusivamente destinados a sua cobertura. Neste trabalho, analisamos um caso específico de anomalias introduzidas pela programação orientada a objetos, que são conhecidas como anomalias de código orientadas a objetos. Primeiro, analisamos a possibilidade dessas anomalias ocorrerem no ambiente C#, considerando as salvaguardas que o compilador e a sintaxe do idioma já fornecem contra essas falhas. Em seguida, avaliamos, com base em nossa análise, se essas falhas são impactantes o suficiente para serem dignas de metodologias específicas de teste.pt_BR
dc.description.abstractTesting is an important quality assurance practice of the modern software development process. Since we cannot afford to test every aspect of a program, defining which aspects will be exercised is essential in order to make testing feasible for integration with the development process. This definition process is made even harder as more and more abstraction layers are incorporated into programming languages. While these new programming paradigms and constructs may augment the functionality of code, they also introduce new classes of language-specific faults, some of which are subtle and computationally difficult to test for. This leaves software testers with the additional task of judiciously establish if the severity of these new language specific faults substantiates the overhead of testing for them. In this work, we aim for a specific case of anomalies introduced by object-oriented programming, which are object oriented code anomalies. We first discover the likelihood of these anomalies occurring on the C# environment, considering the safeguards that both the compiler and language syntax already place against these faults. We then assess, based on our analysis, if these faults are impactful enough to be worthy of having their own testing methodology. We argue that our practical study of these faults can serve as guidelines for C# software testers, ellucidating the circumstances surrounding each fault, as well as their probability of occurence and possible countermeasures.en
dc.format.mimetypeapplication/pdfpt_BR
dc.language.isoporpt_BR
dc.rightsOpen Accessen
dc.subjectInformáticapt_BR
dc.subjectSoftware testingen
dc.subjectStatic analysisen
dc.subjectC#en
dc.titleDetecção de anomalias de orientação a objetos em C#pt_BR
dc.title.alternativeObject oriented anomalies analysis in C# en
dc.typeTrabalho de conclusão de graduaçãopt_BR
dc.identifier.nrb001117224pt_BR
dc.degree.grantorUniversidade Federal do Rio Grande do Sulpt_BR
dc.degree.departmentInstituto de Informáticapt_BR
dc.degree.localPorto Alegre, BR-RSpt_BR
dc.degree.graduationCiência da Computação: Ênfase em Ciência da Computação: Bachareladopt_BR
dc.degree.levelgraduaçãopt_BR


Ficheros en el ítem

Thumbnail
   

Este ítem está licenciado en la Creative Commons License

Mostrar el registro sencillo del ítem