281 |
Uma abordagem para a definição de valores de referência de métricas de software baseada em contexto usando redes Bayesianas.SANTOS, Leonardo da Costa. 28 March 2018 (has links)
Submitted by Lucienne Costa (lucienneferreira@ufcg.edu.br) on 2018-03-28T20:50:30Z
No. of bitstreams: 1
LEONARDO DA COSTA SANTOS - DISSERTAÇÃO (PPGCC) 2017.pdf: 1052959 bytes, checksum: 86527931b8f10cbdea926396a36e5169 (MD5) / Made available in DSpace on 2018-03-28T20:50:30Z (GMT). No. of bitstreams: 1
LEONARDO DA COSTA SANTOS - DISSERTAÇÃO (PPGCC) 2017.pdf: 1052959 bytes, checksum: 86527931b8f10cbdea926396a36e5169 (MD5)
Previous issue date: 2017 / Métricas possuem um papel fundamental no processo de gerenciamento da qualidade de
software. Apesar dos seus potenciais benefícios, elas geralmente são utilizadas apenas para quantificação, não oferecendo suporte adequado à tomada de decisão durante o ciclo de vida do software. Para potencializar a utilização das métricas, é essencial definir valores de referência significativos (i.e., thresholds), atribuindo, assim, significado para os números coletados. O objetivo deste trabalho é apresentar uma abordagem para definição de valores de referência de métricas de software de acordo com o contexto do projeto. A abordagem consiste em definir os fatores de contexto que influenciam os valores de referência da métrica em questão a partir de conhecimento elicitado de especialistas. Essas informações são utilizadas para construir uma rede Bayesiana que pode ser utilizada para auxiliar na tomada de decisão. A solução proposta foi avaliada por meio de um estudo piloto realizado com três gerentes de projetos reais de desenvolvimento de software. Os dados foram coletados com os profissionais para construir redes Bayesianas, para identificar e validar os valores de referência para as métricas Número de Bugs Minor, Número de Alertas de Análise Estática e Porcentagem de Cobertura de Código. A abordagem proposta mostrou-se promissora para auxiliar os profissionais a identificar valores de referência representativos, potencializando tomadas de decisões mais assertivas no processo de gerenciamento de projetos de software / Metrics play a key role in the software quality management process. Despite their potential benefits, they are generally only used for quantification, not providing adequate support to the decision-making process during the software’s life cycle. To enhance the use of metrics, it is essential to define meaningful reference values (i.e., thresholds), thus giving meaning to the data collected. This work aims to propose an approach to define the software metrics’ reference values according to the project’s context. The approach consists of using the specialists’ elicited knowledge to define context factors that influence the metric’s reference values. This information is used to build a Bayesian network that can be used to aid in the decision-making process. The proposed solution was evaluated through a pilot study conducted with three managers of real software development projecst. Data were collected from the software project managers in order to build Bayesian networks to identify and validate reference values for the Number of Minor Bugs, the Number of Static Analysis Alerts, and the Code Coverage Percentage metrics. Each metric was validated in three scenarios. The proposed approach has shown to be promising in helping professionals to identify representative reference values, promoting a more assertive decision making when it comes to the software project management process
|
282 |
Gerenciamento de energia em ambientes corporativos.BARROS, Zeus Cunha. 21 May 2018 (has links)
Submitted by Maria Medeiros (maria.dilva1@ufcg.edu.br) on 2018-05-21T13:02:03Z
No. of bitstreams: 1
ZEUS CUNHA BARROS - DISSERTAÇÃO (PPGCC) 2016.pdf: 1422347 bytes, checksum: ee3e072fb6b10fe4a471f66f2eb55ec7 (MD5) / Made available in DSpace on 2018-05-21T13:02:03Z (GMT). No. of bitstreams: 1
ZEUS CUNHA BARROS - DISSERTAÇÃO (PPGCC) 2016.pdf: 1422347 bytes, checksum: ee3e072fb6b10fe4a471f66f2eb55ec7 (MD5)
Previous issue date: 2016 / Capes / Gerenciamento de energia é uma atividade fundamental a ser implementada em todos os sistemas computacionais na busca pela sustentabilidade na área de TI (TI Verde). Considerando- se o desempenho e o orçamento para o período como restrições a esse gerenciamento é possível alcançar eficiência energética. Neste estudo, é apresentada uma metodologia de gerenciamento de energia,na qual por meio da adaptação dinâmica atrelada à troca de estados de energia dos componentes, proporciona-se um menor consumo de energia,combinando as necessidades dos usuários e as restrições de orçamento. / Energy management is a key activity to be implemented in all computer systems in the search for sustainability in IT (green IT). Considering the performance and the power budget for the period as constraints to this management, is possible to achieve energy efficiency. In this study, it is presented a methodology for power management, in which by means of dynamic adaptation tied to the exchange of energy States of components, provides a lower power consumption, combining the needs of users and budget constraints.
|
283 |
Métricas como Ferramenta de Auxílio para o Gerenciamento de Dívida Técnica em Produtos de SoftwareCavalcanti Júnior, Antonio Luiz de Oliveira 01 November 2012 (has links)
Submitted by Daniella Sodre (daniella.sodre@ufpe.br) on 2015-03-09T12:50:30Z
No. of bitstreams: 2
Dissertacao Antonio Cavalcanti.pdf: 1847589 bytes, checksum: d68a6d0a8cf07180e223791edb011bfb (MD5)
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) / Made available in DSpace on 2015-03-09T12:50:30Z (GMT). No. of bitstreams: 2
Dissertacao Antonio Cavalcanti.pdf: 1847589 bytes, checksum: d68a6d0a8cf07180e223791edb011bfb (MD5)
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
Previous issue date: 2012-11-01 / É amplamente aceito que o custo de manutenção de um software representa mais de 90% do custo total do produto durante todo seu ciclo de vida. O custo de desenvolvimento do produto tende a se tornar insignificante principalmente em softwares com longos ciclos de vida. Softwares perdem sua importância e tendem a cair em desuso caso não sejam evoluídos. Naturalmente, durante esse processo de evolução diversas forças externas e internas corroboram para o decaimento da qualidade do código fonte do software, como por exemplo, pressões do mercado, diminuição dos orçamentos para manutenção, mudanças no time de desenvolvedores, dentre outros. Apesar de existirem técnicas para acompanhar a qualidade do código fonte de um software utilizando-‐se métricas, nenhuma leva em consideração o contexto e decisões tomadas que levaram à diminuição da qualidade se tornando então técnicas reativas. Para explicar esse decaimento de qualidade, inserir informações contextuais sobre as decisões tomadas, permitir planejamento preventivo e acompanhar o aumento dos custos de manutenção em softwares com código fonte já comprometido, é utilizada a metáfora de Dívida Técnica. A metáfora de Dívida Técnica é uma analogia ao conceito de empréstimo financeiro. Ao comprometer a qualidade do código fonte do sistema em detrimento a algum benefício imediato, contrai-‐se uma dívida onde o valor do empréstimo é o esforço economizado na execução da tarefa. Como toda dívida, são aplicados juros sobre o empréstimo contraído e se a dívida não for adequadamente controlado, no futuro a maior parte do esforço de manutenção e evolução será gasto amortizando os custos da dívida. Apesar de intuitiva, muito popular na comunidade de profissionais de software e útil para diminuir a distância entre o vocabulário técnico e o gerencial, a metáfora tem sua definição em evidências anedóticas, por isso se faz necessário estudos que possam descrever o fenômeno com rigor científico. Nesse contexto, o objetivo desse estudo é caracterizar a metáfora de Dívida Técnica sob a ótica de métricas de software, descrevendo relações existentes entre as tomadas de decisões e os impactos causados na qualidade, utilizando-‐se de suítes clássicas de métricas, fundamentado em 7 anos de dados históricos de projetos reais e companhamento por 8 meses de um projeto vivo.
|
284 |
Transferência de tecnologia entre academia e indústria em engenharia de software: um mapeamento sistemáticoTenório, Ramon Nobrega 30 April 2014 (has links)
Submitted by Luiz Felipe Barbosa (luiz.fbabreu2@ufpe.br) on 2015-03-10T17:18:26Z
No. of bitstreams: 2
DISSERTAÇÃO Ramon Nobrega Tenório.pdf: 1455668 bytes, checksum: ca6a4170a2a084801f077bd2e8267772 (MD5)
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) / Made available in DSpace on 2015-03-11T17:35:39Z (GMT). No. of bitstreams: 2
DISSERTAÇÃO Ramon Nobrega Tenório.pdf: 1455668 bytes, checksum: ca6a4170a2a084801f077bd2e8267772 (MD5)
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
Previous issue date: 2014-04-30 / A transferência de tecnologia é o processo pelo qual a indústria se mantém em constante evolução e competitividade. Esta atividade proporciona um modo em que as empresas possam alcançar maior efetividade no uso de seus recursos, provendo informação e auxílio, que conduz a melhorias em diversas áreas do negócio. Em engenharia de software, o processo tende a ser laborioso, dependente de condução rigorosa e de fatores (ou influenciadores), que geralmente estão inclinados a assumir papel decisivo quando do momento da adoção. Evidência contundente, benefício claro, apoio organizacional e treinamento são alguns dos muitos fatores que podem atuar com protagonismo e mudar o curso da atividade. A parceria entre academia e indústria é propensa a ser uma fonte fértil para inovações tecnológicas de forma a saciar o anseio do mercado e impulsionar a criação de novas ideias e visões renovadas. Este estudo tem como objetivo a coleta e investigação do conhecimento disponível na literatura, de forma sistemática, que tenham relação com fatores que influenciam positiva ou negativamente a transferência de tecnologia entre academia e indústria no campo da engenharia de software, assim como as abordagens existentes. De modo a alcançar o objetivo, foi utilizado, como método de pesquisa, o estudo de mapeamento sistemático. Este mapeamento obteve um total de 6228 estudos, por meio de buscas automatizadas e manuais, dentre os quais 87 estudos primários foram identificados como relevantes e classificados de acordo com as perguntas de pesquisa. Com base na análise realizada, conclui-se que a transferência de tecnologia em engenharia de software é uma atividade que envolve fatores tecnológicos, organizacionais, culturais e sociais e que estes têm influência em todo o processo. Além disso, fatores pouco explorados foram identificados, proporcionando abertura à condução de novos estudos
|
285 |
Replicação de estudos empíricos em engenharia de software: extensão de um mapeamento sistemático.BEZERRA, Roberta Moraes Monteiro 05 May 2014 (has links)
Submitted by Luiz Felipe Barbosa (luiz.fbabreu2@ufpe.br) on 2015-03-10T17:58:34Z
No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
DISSERTAÇÃO Roberta Moraes Monteiro Bezerra.PDF: 1091395 bytes, checksum: 97b21b9ce126c1c662fb69cb1cbaf288 (MD5) / Made available in DSpace on 2015-03-11T17:37:53Z (GMT). No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
DISSERTAÇÃO Roberta Moraes Monteiro Bezerra.PDF: 1091395 bytes, checksum: 97b21b9ce126c1c662fb69cb1cbaf288 (MD5)
Previous issue date: 2014-05-05 / Contexto: Pesquisadores das ciências empíricas relatam a necessidade de realizar replicações
dos estudos empíricos, inclusive na Engenharia de Software. Os primeiros estudos de
replicação na Engenharia de Software Empírica são da década de 1990, sendo uma área
relativamente recente. A Engenharia de Software Empírica ainda não conseguiu definir os
termos e conceitos básicos de replicação, estando este debate em estágio inicial. Também não
existe uma vasta literatura com material de replicação.
Objetivo: Estender a pesquisa de (Silva et al., 2011) analisando os estudos relacionadas a
replicação na Engenharia de Software Empírica e publicadas nos anos de 2011 e 2012.
Método: A realização de um mapeamento sistemático sobre o estado atual dos trabalhos
de replicação na Engenharia de Software Empírica, para extrair e analisar os novos dados
dos artigos selecionados e depois comparar os resultados dos dois mapeamentos sistemáticos.
Resultados: Nesse estudo foram analisados mais de 7.000 artigos, a partir dos quais foram
selecionados 39 artigos referente a replicações executadas, com 51 replicações, executadas em
2011 e 2012, e 35 estudos originais. Também foram selecionados 10 artigos referente a
trabalhos teóricos sobre replicação. 53% das replicações são consideradas externas; há uma
forte concentração de replicações de quasi-experimentos, que utilizam “Acadêmicos” como
unidade de análise e que confirmam o estudo original. Os conjuntos de replicação com apenas
uma replicação para cada estudo original representam 80% dos conjuntos. Os tópicos de
Design de Software, Teste de Software e Qualidade de Software concentram 58,8% das
replicações.
Conclusões: Considerando os números do primeiro mapeamento e do atual, percebe-se um
aumento proporcional no número de replicações que retratam estudos empíricos na
Engenharia de Software, entretanto, o número de replicações ainda é pequeno, sendo preciso
incentivos para aumentar o número de replicações e a qualidade dos seus resultados. Quando
analisado os resultados desta extensão e do primeiro mapeamento, percebe-se que as maiores
mudanças estão entre as replicações externas.
|
286 |
VIDAese: processo de visualização exploratória para apoio a estudos empíricos em verificação, validação e teste de software / VIDAese: visual exploratory process to support empirical studies in software verification, validation and testRogério Eduardo Garcia 02 October 2006 (has links)
A Engenharia de Software evolui gradativamente para uma disciplina científica baseada em observação, formulação teórica e experimentação. Nesse contexto, estudos experimentais têm sido conduzidos para proporcionar evidências sobre a qualidade e a produtividade de técnicas, ferramentas e métodos de desenvolvimento de software. Porém, resultados obtidos a partir de pesquisas experimentais são úteis somente se os pesquisadores puderem consolidá-las em um contexto significativo de conhecimento. O projeto Readers: A Collaborative Research to Develop, Validate and Package Reading Techniques for Software Defect Detection aborda diversos aspectos envolvidos na construção de um corpo significativo de resultados a partir de experimentos controlados. Nesse contexto, sustenta-se que a aplicação de meios alternativos de análise e exploração de dados dos experimentos conduzidos pode colaborar para a evolução do Pacote de Laboratório, e como efeito colateral, contribuir com a formação do corpo de conhecimento almejado. Este projeto propõe mecanismos para integrar técnicas de visualização exploratória à análise de dados de experimentos controlados. Para isso, foram propostas adequações ao processo de experimentação, bem como um processo de visualização para Engenharia de Software Experimental ? V iDAESE. Para ilustrar o V iDAESE, ciclos de análises são apresentados, juntamente com as conclusões obtidas em cada um. As análises visuais apóiam o processo de consolidação de conhecimento a partir dos dados e a melhoria do Pacote de Laboratório. Adicionalmente, uma abordagem para simulação de dados experimentais foi proposta, permitindo explorar cenários que apóiem o planejamento de experimento. / A Engenharia de Software evolui gradativamente para uma disciplina científica baseada em observação, formulação teórica e experimentação. Nesse contexto, estudos experimentais têm sido conduzidos para proporcionar evidências sobre a qualidade e a produtividade de técnicas, ferramentas e métodos de desenvolvimento de software. Porém, resultados obtidos a partir de pesquisas experimentais são úteis somente se os pesquisadores puderem consolidá-las em um contexto significativo de conhecimento. O projeto Readers: A Collaborative Research to Develop, Validate and Package Reading Techniques for Software Defect Detection aborda diversos aspectos envolvidos na construção de um corpo significativo de resultados a partir de experimentos controlados. Nesse contexto, sustenta-se que a aplicação de meios alternativos de análise e exploração de dados dos experimentos conduzidos pode colaborar para a evolução do Pacote de Laboratório, e como efeito colateral, contribuir com a formação do corpo de conhecimento almejado. Este projeto propõe mecanismos para integrar técnicas de visualização exploratória à análise de dados de experimentos controlados. Para isso, foram propostas adequações ao processo de experimentação, bem como um processo de visualização para Engenharia de Software Experimental ? V iDAESE. Para ilustrar o V iDAESE, ciclos de análises são apresentados, juntamente com as conclusões obtidas em cada um. As análises visuais apóiam o processo de consolidação de conhecimento a partir dos dados e a melhoria do Pacote de Laboratório. Adicionalmente, uma abordagem para simulação de dados experimentais foi proposta, permitindo explorar cenários que apóiem o planejamento de experimento.
|
287 |
Metricas objetivas para consistencia de interface : explorando a relação entre interação humano-computador e engenharia de softwareMeneghetti, Luciano Krob 15 July 1998 (has links)
Orientador: Beatriz Mascia Daltrini / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Eletrica e de Computação / Made available in DSpace on 2018-08-12T00:47:44Z (GMT). No. of bitstreams: 1
Meneghetti_LucianoKrob_M.pdf: 9234989 bytes, checksum: 53ae26f5efc7008d030e8d8dd49aba20 (MD5)
Previous issue date: 1998 / Resumo: Avaliar a interface de um software, antes de entregá-Io ao usuário final, é muito importante. O uso de ferramentas CASE construtoras de interface para auxílio ao designer de interface não é condição suficiente para garantir uma interface consistente. Essas ferramentas, no máximo, conseguem garantir a disponibilização de widgets através de uma toolkit pré-definida. Em outras palavras, incorporam somente conceitos da Engenharia de Software (ES), ignorando conceitos de Interação Humano-Computador (IHC). Como esses conceitos de IHC não são incorporados na fase de desenvolvimento da interface, através de ferramentas CASE construtoras de interface, essa dissertação pretende disponibilizá-Ios para que sejam incorporados em ferramentas CASE para avaliação de interface, oferecendo uma base de métricas. Mais especificamente, o objetivo dessa dissertação é explorar a relação entre as grandes áreas de ES e IHC, através da geração de uma base de métricas objetivas, cuja meta é favorecer (não necessariamente garantir) a usabilidade do produto final que chegará às mãos do usuário. Palavras-Chave: Engenharia de Software, Interação Humano-Computador, ferramentas CASE, interface, métricas. ...Observação: O resumo, na íntegra, poderá ser visualizado no texto completo da tese digital / Abstract: Evaluating the software interface before delivering it to the end user is very important. Using interface builders CASE tools for helping interface designer is not a sufficient condition to guarantee a consistent interface. These tools, at most, guarantee widgets available through a pre-Ciefinedtoolkit. In other words, it incorporates only software engineering (SE) concepts, ignoring human-computer interaction (HCI) concepts. As the HCI concepts are not incorporated in interface development phase in interface builders CASE tools, this thesis intends to let them available, 50that they can be incorporated in interface evaluation CASE tools, offering a metrics repository. More specifically, the thesis goal is to exploit the relation between SE and HCI areas, by the generation of a repository of objective metrics. Its intention is to favour (not necessarily guarantee) the final product usability that will be given to the end user. Keywords: Software Engineering, Human-Computer Interaction, CASE tools, interface, metrics. ...Note: The complete abstract is available with the full electronic digital thesis or dissertations / Mestrado / Mestre em Engenharia Elétrica
|
288 |
Desenvolvimento de ferramentas computacionais para analise estrutural em fadiga e geração de malhas de elementos finitosFerreira, Wallace Gusmão, 1977- 28 February 2002 (has links)
Orientador : Marco Lucio Bittencourt / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Mecanica / Made available in DSpace on 2018-08-01T16:50:37Z (GMT). No. of bitstreams: 1
Ferreira_WallaceGusmao_M.pdf: 8465867 bytes, checksum: 43bfa97c360052855e2188e207de0c0d (MD5)
Previous issue date: 2002 / Resumo: O presente trabalho tem por objetivo desenvolver a análise estrutural em problemas de fadiga mecânica, usando o Método dos Elementos Finitos (MEF) e recursos de Engenharia de Software. Inicialmente é feita uma revisão dos conceitos básicos de fadiga mecânica, descrevendo as frentes atuais de pesquisa e as metodologias convencionais de projeto. O modelo constitutivo de material para o tratamento de fadiga é definido com base na Mecânica do Dano e a solução numérica do problema de equilíbrio é feita através do MEF. Os resultados obtidos com a implementação do modelo de dano e da análise estrutural de componentes submetidos à fadiga são compatíveis com aqueles apresenta dos na literatura. Os programas computacionais são implementados usando conceitos de Engenharia de Software. Como exemplo da aplicação desses conceitos, é desenvolvido um ambiente gráfico para geração de malhas de elementos finitos, utilizando componentes de software disponíveis comercialmente / Abstract: This work deals with the structural analisys of problems involving mechanical fatigue using the Finite Element Method and Software Engineering concepts. Initially, the basic concepts of mechanical fatigue, the conventional design techniques and the major research areas are reviewed. The material constitutive model to treat the fatigue process is developed based on Damage Mechanics and the numerical solution for the equilibrium equation is obtained by the Finite Element Method. The results obtained with the implementation of the constitutive mo deI and for structural analisys have good agreement with the literature references. All the computational programs are implemented using the concepts of Software Engineering. As example of the application of these concepts, a graphical environment for finite element mesh generation is developed based on third party software components / Mestrado / Mecanica dos Sólidos e Projeto Mecanico / Mestre em Engenharia Mecânica
|
289 |
A proposal for the evolution of model-driven software / Uma proposta para a evolução da engenharia de software dirigida por modelosGottardi, Thiago 19 March 2018 (has links)
In the Model-Driven Software Engineering (MDSE) context, software production can be performed by defining models. Despite the advantages of this methodology, different domains require specific support tools and modeling languages, which, in turn, must be developed along with the final software. Because of this, developers face problems when applying the method. The objective of this work is twofold: 1) to identify the most critical problems when developing with this method; 2) discuss and provide possible solutions to those problems. The critical problems were identified by performing a systematic mapping, empirical studies, collaborations and interviews with specialists. It has been identified that MDSE, according to basic literature, has an excessively high abstraction level which leads to a lack of adequate processes and developer training, besides the need for modeling tools. A new method is necessary to allow developers to treat models and source-code differently. Therefore, in this thesis, the need for evolving MDSE processes is discussed. In this manner, this work introduces a new development method described as a possible concrete evolution of MDSE that defines a paradigm for software development. This method is defined along with domain specific languages, a tool-chain and sample software systems. After conducting analytic and experimental studies, it has been concluded that these applications also represent a valuable contribution for implementing service-oriented systems which can be employed in real world applications. / No contexto da Engenharia de Software Dirigida por Modelos (MDSE), a produção de software pode ser realizada por meio de definições de modelos. Apesar dos benefícios desse método de desenvolvimento, diferentes domínios exigem a especificação de linguagens de modelagem e ferramentas específicas, que, por sua vez, precisam ser desenvolvidos em conjunto com o software final. Desta forma, desenvolvedores encontram problemas ao utilizar este método. Este trabalho possui duplo objetivo: 1) identificar os problemas mais críticos deste método; 2) discutir e fornecer possíveis soluções aos problemas. A identificação de problemas foi realizada por meio de um mapeamento sistemático, estudos empíricos, colaborações e entrevistas com especialistas. Foi identificado que MDSE, de acordo com a literatura básica, possui um nível de abstração excessivamente alto, acarretando em carência de processos adequados e de treinamento de desenvolvedores que vão além de problemas de necessidade de ferramentas de modelagem. Portanto, nesta tese, discute-se a necessidade de evoluir processos de MDSE que permita aos desenvolvedores uma nova forma de tratar modelos e código-fonte. Para tanto, neste trabalho também é descrito um novo método de desenvolvimento, descrito como uma possível evolução concreta do MDSE, o qual define um paradigma para desenvolver software. Este método é exemplificado em várias aplicações dentro deste trabalho. Após conduzir estudos analíticos e experimentais, concluiu-se que estas aplicações também possibilitam uma contribuição significativa no domínio de software orientado a serviços que podem ser empregadas em software do mundo real.
|
290 |
Caracterização da Complexidade Estrutural em Sistemas de SoftwareAzevedo Terceiro, Antonio Soares de 25 January 2013 (has links)
Submitted by Santos Davilene (davilenes@ufba.br) on 2013-01-25T12:17:33Z
No. of bitstreams: 1
Tese - Antonio Terceiro.pdf: 2349378 bytes, checksum: 0242ae36220a231a40a42d851ee9142c (MD5) / Made available in DSpace on 2013-01-25T12:17:33Z (GMT). No. of bitstreams: 1
Tese - Antonio Terceiro.pdf: 2349378 bytes, checksum: 0242ae36220a231a40a42d851ee9142c (MD5) / Esta tese propõe uma teoria para caracterizar a complexidade estrutural em sistemas de software. Esta teoria busca identificar (i) a contribuição de diversos fatores para a variação da complexidade estrutural e (ii) os efeitos da complexidade estrutural sobre projetos de software. Possíveis fatores na variação da complexidade estrutural incluem: fatores humanos, como experiência geral dos desenvolvedores e a sua familiaridade com as diferentes partes do sistema; fatores relacionados às mudanças realizadas no sistema, como variação no tamanho, espalhamento das mudanças; e fatores organizacionais, como maturidade do processo de desenvolvimento e a estrutura de comunicação do projeto. Efeitos da complexidade estrutural incluem maior esforço, e consequentemente maior custo, em atividades de compreensão e manutenção de software.
Para testar a validade da teoria proposta, foram realizados quatro estudos experimentais, utilizando mineração de dados em repositórios de projetos de software livre. Foram analisados dados históricos de mudanças realizadas em 13 sistemas de diferentes domínios de aplicação e escritos em diferentes linguagens de programação.
Os resultados destes estudos indicaram que todos os fatores estudados influenciaram significativamente a variação da complexidade estrutural em pelo menos um dos projetos, mas projetos diferentes foram influenciados por conjuntos diferentes de fatores. Modelos construídos foram capazes de descrever até 93% da variação na complexidade estrutural nos projetos estudados. / Salvador
|
Page generated in 0.0374 seconds