@MASTERSTHESIS{ 2009:1993852736, title = {Estratégia para especificação e geração de casos de teste a partir de modelos UML}, year = {2009}, url = "http://tede2.pucrs.br/tede2/handle/tede/5041", abstract = "Com a expansão dos sistemas computacionais e com a popularização dos serviços providos pela Internet, é crescente a preocupação dos engenheiros de software com a segurança dos sistemas que desenvolvem. O volume de informações confidenciais que trafega pela Internet é cada vez maior, tornando essencial a avaliação de segurança destes sistemas antes de entregá-los a seus usuários. Entretanto, o tempo que dedicam em seus projetos à realização de testes para avaliar este aspecto é pequeno, fazendo com que softwares inseguros sejam liberados no mercado. Verificar o nível de segurança de um software não é trivial. É preciso considerar este aspecto desde a fase de projeto do sistema, quando o modelo ainda está sendo elaborado. Uma limitação é a deficiência existente na área de segurança, seja em relação aos modelos, que provêem poucas estruturas para representar este aspecto, ou à pouca quantidade de ferramentas, documentos e checklists explicando como conduzir a execução de testes de segurança. Neste contexto, vem se tornando popular uma técnica conhecida como teste baseado em modelos. Nesta, os testes a serem realizados são definidos automaticamente a partir do modelo da aplicação, de acordo com os aspectos desejados. Diversos trabalhos propõem modelos para especificar os mais variados requisitos, como funcionais e de desempenho, mas poucos se dedicam a definir uma forma de descrever aspectos de segurança. Sendo assim, este trabalho propõe alguns estereótipos UML para especificar situações que podem comprometer a segurança de um software, além de um algoritmo que analisa estes e gera, automaticamente, casos de teste a partir do modelo. Desta forma, é possível assinalar, através da inserção de estereótipos no modelo, partes do sistema que podem conter vulnerabilidades, e, posteriormente, executar os casos gerados para verificar a ocorrência destas no software final. A elaboração deste trabalho tem dois objetivos principais: auxiliar durante a fase de implementação do software, prevendo situações que possam comprometer sua segurança e orientando os desenvolvedores, e permitir a geração automatizada de casos de teste de segurança a partir das informações inseridas.", publisher = {Pontifícia Universidade Católica do Rio Grande do Sul}, scholl = {Programa de Pós-Graduação em Ciência da Computação}, note = {Faculdade de Informáca} }