Reuso De IHC Orientado a Padrões Concretos De Interação E Dirigido Por Casos De Uso
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM COMPUTAÇÃO AUGUSTO ABELIN MOREIRA Reuso de IHC Orientado a Padrões Concretos de Interação e Dirigido por Casos de Uso Dissertação apresentada como requisito parcial para a obtenção do grau de Mestre em Ciência da Computação Prof. Dr. Marcelo Soares Pimenta Orientador Porto Alegre, abril de 2007. CIP – CATALOGAÇÃO NA PUBLICAÇÃO Moreira, Augusto Abelin Reuso de IHC Orientado a Padrões Concretos de Interação e Di- rigido por Casos de Uso / Augusto Abelin Moreira – Porto Alegre: Programa de Pós-Graduação em Computação, 2007. 181 f.:il. Dissertação (mestrado) – Universidade Federal do Rio Grande do Sul. Programa de Pós-Graduação em Computação. Porto Ale- gre, BR – RS, 2007. Orientador: Marcelo Soares Pimenta. 1.Reuso. 2.IHC. 3.Caso de Uso. I. Pimenta, Marcelo Soares. II. Título. UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL Reitor: Prof. José Carlos Ferraz Hennemann Vice-Reitor: Prof. Pedro Cezar Dutra Fonseca Pró-Reitora de Pós-Graduação: Profa. Valquiria Linck Bassani Diretor do Instituto de Informática: Prof. Flávio Rech Wagner Coordenadora do PPGC: Profª. Luciana Porcher Nedel Bibliotecária-Chefe do Instituto de Informática: Beatriz Regina Bastos Haro AGRADECIMENTOS Agradeço às mulheres da minha vida - minha esposa Karin e minha filha Ana Luiza - pelo apoio, incentivo e compreensão ao longo desta jornada. SUMÁRIO LISTA DE ABREVIATURAS E SIGLAS............................................................ 7 LISTA DE FIGURAS.......................................................................................... 9 LISTA DE TABELAS ....................................................................................... 11 RESUMO ......................................................................................................... 12 ABSTRACT...................................................................................................... 13 1 INTRODUÇÃO ........................................................................................... 14 2 REUSO DE SOFTWARE: DEFINIÇÕES E PRÁTICAS ............................. 16 2.1 Reuso: conceito..................................................................................................... 16 2.2 Benefícios do reuso............................................................................................... 16 2.3 Problemas do reuso.............................................................................................. 17 2.4 Práticas de reuso na engenharia de software .................................................... 18 2.5 Assets: Uma especificação de artefatos reusáveis ............................................. 21 2.6 Processos de reuso................................................................................................ 25 3 DESENVOLVIMENTO DE SOFTWARE COM UML E CASOS DE USO .. 28 3.1 O uso da UML para a modelagem de sistemas ................................................. 28 3.2 Casos de uso: fundamentos ................................................................................. 29 3.2.1 Conceito .............................................................................................................. 29 3.2.2 Elementos............................................................................................................ 31 3.2.3 Estrutura básica de descrição.............................................................................. 39 3.3 Processo de desenvolvimento dirigido a casos de uso....................................... 39 3.4 Abordagens para reuso de casos de uso............................................................. 41 3.4.1 Casos de uso reusáveis........................................................................................ 41 3.4.2 Casos de uso parametrizados .............................................................................. 43 3.4.3 Padrões de casos de uso (use case patterns)....................................................... 43 3.4.4 Padrões de domínio............................................................................................. 46 4 PROJETO E REUSO DE INTERFACES COM O USUÁRIO ..................... 47 4.1 Projeto de interface com o usuário no processo de desenvolvimento ............. 47 4.2 Modelos de especificação de interface com o usuário....................................... 49 4.2.1 Protótipos............................................................................................................ 49 4.2.2 Modelos de Interface de Usuário ........................................................................ 53 4.2.3 Um modelo de referência para IUs ..................................................................... 55 4.2.4 Linguagens de descrição de interfaces com o usuário........................................ 59 4.3 Abordagens para reuso de IHC.......................................................................... 63 4.3.1 Recomendações e guias de estilo........................................................................ 63 4.3.2 Padrões de interação e linguagens de padrões .................................................... 64 4.3.3 Geradores de interface ........................................................................................ 70 4.3.4 Componentização................................................................................................ 71 5 ABORDAGEM PROPOSTA....................................................................... 72 5.1 Árvore de Reificação de IU ................................................................................. 73 5.2 Padrão Concreto de Interação (CIP) ................................................................. 77 5.3 Padrão Concreto de Caso de Uso (CUCP)......................................................... 79 5.4 Padrão de Interface de Gerenciamento do Sistema (SMUIP) ......................... 82 5.5 Processos de reuso na abordagem proposta ...................................................... 85 5.5.1 Processo de consumo .......................................................................................... 86 5.5.2 Processo de identificação.................................................................................... 91 5.5.3 Processo produção .............................................................................................. 93 5.5.4 Processo de gerenciamento................................................................................. 94 5.6 Considerações sobre ferramentas de suporte à abordagem ............................ 95 5.6.1 Modelagem de casos de uso e demais modelos da UML ................................... 95 5.6.2 Modelagem de IU ............................................................................................... 95 5.6.3 Repositório de assets .......................................................................................... 96 5.6.4 Ferramentas de transformação ............................................................................ 96 6 EXEMPLO DE APLICAÇÃO ...................................................................... 97 6.1 Planejamento do estudo de caso ......................................................................... 97 6.1.1 Objetivo .............................................................................................................. 97 6.1.2 Características da empresa onde foi executado o estudo de caso ....................... 97 6.1.3 Escopo da aplicação da abordagem .................................................................... 99 6.1.4 Plano de atividades ............................................................................................. 99 6.2 Descrição do sistema a ser desenvolvido.......................................................... 100 6.3 Identificação dos artefatos reusáveis................................................................ 100 6.4 Praticando o reuso ............................................................................................. 101 6.4.1 Análise de reuso de casos de uso ...................................................................... 101 6.4.2 Análise de reuso de interação ........................................................................... 104 6.5 Considerações sobre os resultados obtidos...................................................... 110 6.5.1 Quanto às limitações do estudo de caso............................................................ 110 6.5.2 Quanto à integração dos processos de reuso no processo de desenvolvimento 111 6.5.3 Quanto à produtividade no processo de desenvolvimento................................ 111 6.5.4 Quanto aos efeitos na qualidade da interação................................................... 117 7 CONCLUSÃO........................................................................................... 119 7.1 Contribuições ..................................................................................................... 120 7.2 Perspectivas de trabalhos futuros .................................................................... 121 7.3 Lista de publicações ........................................................................................... 121 REFERÊNCIAS.............................................................................................. 123 ANEXO A O PADRÃO “PARTS SELECTOR”............................................. 131 ANEXO B DTD DE PADRÃO DE INTERAÇÃO ........................................... 132 APÊNDICE A DTD DE PADRÃO CONCRETO DE INTERAÇÃO...............