Reuso Apresentação de artigos By Nicomedes L. C. Jr Agenda Apresentação dos artigos Abordagens utilizadas Conclusões Apresentação dos artigos Sixteen Question About Software Reuse William B. Frakes and Christopher J. Fox, Communications on the ACM, Vol. 38, No. 6, 06/1995. Success and Failure Factors in Software Reuse Maurizio Morisi, Member IEEE Computer Society, Michel Ezran, and Colin Tully, Member IEEE, IEEE Transactions on Software Engineering, Vol. 28, No. 4, 04/2004 Abordagens utilizadas Sixteen Question About Software Reuse Questionário respondido por membros de 29 organizações sendo 28 localizadas nos EUA e uma na Europa Success and Failure Factors in Software Reuse 32 Projetos (Process Improviment Experiments - PIE) europeus selecionados da European Commission. Os dados foram conseguidos através de entrevistas estruturadas, envolvendo pessoas como lideres de projeto A duração variou de 2 a 3 horas para que se pudesse extrair mais informações. Abordagens utilizadas Os dois artigos embora tendo abordagem metodológicas distintas convergem quanto a metas e resultados. O que se procurou elucidar nesses trabalhos foi quais dentre as diversas variáveis(características) presentes numa organização de software influenciam para que ela tenha sucesso ou não ao tentar implantar uma política de Reuso de artefatos. Abordagens utilizadas Sixteen Question About Software Reuse, tentou achar respostas para as seguintes questões: How widely reused are common assets? -Há diferentes percepção de valor e de uso desses assets. -Por razões como: falta de informação, educação, qualidade dos assets, acesso fácil. Abordagens utilizadas Does programming language affect reuse? -Tentou-se relacionar o percentual de artefatos gerados a partir de partes reusados, com o ranking de linguagens mais usadas -A conclusão é que está variável não afetaria o nível de reuso das organizações Abordagens utilizadas Correlação de Spearman entre linguagens e nível de reuso. Uma alto valor negativo de correlação indicaria que a linguagem promove reuso. Abordagens utilizadas Do CASE tools promote reuse? -Em geral as pessoas sentiam que essas ferramentas não promoviam reuso entre projetos -Possíveis causas: Elas não estão sendo usadas, ou não usadas corretamentes; ou não são capazes de promover reuso mesmo usadas corretamente Do Developers prefer to build from scratch or to reuse? -72% dos participantes não tinha a síndrome NIH Abordagens utilizadas Does perceived economic feasibility influence reuse? -Para implementar Reuso é preciso que as pessoas na organização acreditem que ele é economicamente viável Abordagens utilizadas Does reuse education influence reuse? -Ter recebido educação na escola ou na empresa influencia o nível de reuso Abordagens utilizadas Does software engineering experience influence reuse? Does a common software process promote reuse? Do legal problems inhibit reuse? Does having a reuse repository improve code reuse? Is reuse more common in certain industries? Abordagens utilizadas Does software engineering experience influence reuse? - A maioria das pessoas envolvidas na pesquisa tinham em média 12.2 anos de experiência, por questões mostradas antes experiência não se reflete em nível de Reuso de artefatos. Do recognition rewards increase reuse? - A recompensa não faz diferença significante - Um experimento da GTE mostrou, contudo, que dinheiro é um motivador necessário para Reuso. Abordagens utilizadas Does a common software process promote reuse? - Há mais reuso em organizações com um processo comum de software que promove Reuso - No entanto à época da pesquisa muitas organizações ainda tinham processos imaturos Abordagens utilizadas Abordagens utilizadas Abordagens utilizadas Do legal problems inhibit reuse? - Para mais de 68% das pessoas impedimentos legais são poucos relevantes para impedir o Reuso. Does having a reuse repository improve code reuse? - Repositório só não basta Abordagens utilizadas Is reuse more common in certain industries? - Notou-se que a Indústria de Telecomunicações liderava enquanto a Aeroespacial ficou no fim da fila. Abordagens utilizadas Abordagens utilizadas Are company, division, or project sizes predictive of organazional reuse? - A conclusão é que o tamanho da organização ou projeto não prediz nível de Reuso. - Organizações de qualquer tamanho podem ter sucesso ou não em implantar Reuso sistemático. Are quality concerns inhibiting reuse? - O Estudo apontou uma falta de correlação entre qualidade de assets e nível de Reuso porque a qualidade até o momento foi satisfatória Abordagens utilizadas Are organizations measuring reuse, quality, and productivity? - Embora seja essencial medir reuso para determinar se um programa está tendo sucesso poucas organizações o faziam. - 14% mediam Reuso, 42% mediam Qualidade, 32% mediam Produtividade Does reuse measurement influence reuse? - Muitas organizações não estavam usando as suas medições para melhorar os respectivos programas de Reuso. Abordagens utilizadas Success and Failure Factors in Software Reuse Abordagens utilizadas Success and Failure Factors in Software Reuse Dos 32 projetos selecionados, os dados só puderam ser obtidos de 24 Projetos sombreados na tabela anterior são aqueles que falharam em implementar Reuso Os dados foram organizados no formato anterior sendo aquela tabela chamada de LowLevel Control Variables e ainda havendo 2 outras tabelas: State Variables e High-Level Control Variables Abordagens utilizadas Success and Failure Factors in Software Reuse Nesse artigo a metodologia foi tentar relacionar os “tipos” de dados anteriores para encontrar alguma relação entre aquelas variáveis levantadas e o sucesso de Reuso nos projetos Conclusões Sixteen Question About Software Reuse Conclusões Success and Failure Factors in Software Reuse Conclusões Success and Failure Factors in Software Reuse (passos básicos para introdução em empresas): Verificar potencial de reuso Modificar o processo geral Adicionar processo especifico para reuso Dar foco a fatores humanos Configurar um repositório