• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 16
  • 6
  • 1
  • Tagged with
  • 23
  • 23
  • 10
  • 10
  • 9
  • 7
  • 6
  • 6
  • 6
  • 5
  • 4
  • 4
  • 4
  • 4
  • 4
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Aiding exploratory testing with pruned GUI models

REIS, Jacinto Filipe Silva 22 February 2017 (has links)
Submitted by Pedro Barros (pedro.silvabarros@ufpe.br) on 2018-06-25T19:50:01Z No. of bitstreams: 2 license_rdf: 811 bytes, checksum: e39d27027a6cc9cb039ad269a5db8e34 (MD5) DISSERTAÇÃO Jacinto Filipe Silva Reis.pdf: 3426697 bytes, checksum: 1785cceb1a3f11d1a46ed89506bff902 (MD5) / Made available in DSpace on 2018-06-25T19:50:01Z (GMT). No. of bitstreams: 2 license_rdf: 811 bytes, checksum: e39d27027a6cc9cb039ad269a5db8e34 (MD5) DISSERTAÇÃO Jacinto Filipe Silva Reis.pdf: 3426697 bytes, checksum: 1785cceb1a3f11d1a46ed89506bff902 (MD5) Previous issue date: 2017-02-22 / Exploratory testing is a software testing approach that emphasizes the tester’s experience in the attempt to maximize the chances to find bugs and minimize the time effort applied on satisfying such a goal. It is naturally a GUI-oriented testing activity for GUI-based systems. However, inmost cases,exploratory testing strategies may not be accurate enough to reach changed code regions. To reduce this gap, in this work, we propose a way of aiding exploratory testing by providing a GUI model of the regions impacted by internal code changes (for example, as result of change requests to fix previous bugs as well as for software improvement). We create such a delimited GUI model by pruning an original GUI model, quickly built by static analysis, using a reachability relation between GUI elements (i.e., windows, buttons, text fields, etc.) and internal source code changes (classes and methods). To illustrate the idea we provide promising data from two experiments, one from the literature and another from our industrial partner. / Teste exploratório é uma abordagem de teste de software que enfatiza a experiência do testador na tentativa de maximizar as chances de encontrarbugs e minimizar o esforço de tempo aplicado na satisfação desse objetivo. É naturalmente uma atividade de testes orientada à GUI aplicada em sistemas que dispõem de GUI. No entanto, na maioria dos casos, as estratégias de testes exploratórios podem não ser suficientemente precisas para alcançar as regiões de código alteradas. Para reduzir esta lacuna, neste trabalho nós propomos uma forma de auxiliar os testes exploratórios, fornecendo um modelo de GUI das regiões impactadas pelas mudanças internas de código (por exemplo, como resultado de solicitações de mudanças para corrigirbugs anteriores, bem como, para realização de melhorias do software). Criamos um modelo de GUI delimitado, podando um modelo de GUI original, construído rapidamente através de análise estática, usando uma relação de alcançabilidade entre elementos de GUI (janelas, botões, campos de textos) e alterações de código interno (classes e métodos). Para ilustrar a ideia, nós fornecemos dados promissores de dois experimentos, um da literatura e outro de nosso parceiro industrial.
2

DEPAnalyzer: um modelo de análise estática de dependências para programas orientados a objetos

Azevedo, Silvana Campos de January 2002 (has links)
Este trabalho apresenta um modelo de análise estática de programas orientados a objetos, o qual se denomina DEPAnalyzer (DEPendencies Analyzer). O modelo realiza a análise das dependências entre as classes de um programa, ou seja, os relacionamentos estabelecidos entre estas. As classes representam as entidades estáticas, as quais em tempo de execução darão origem a conjuntos de objetos. Através da simulação do programa o modelo consegue obter as informações sobre quem se relaciona com quem e qual é a intensidade destes relacionamentos. Estas informações visam auxiliar no processo de escalonamento de um programa em uma arquitetura distribuída. Para expressar estes relacionamentos podem ser gerados dois grafos, o grafo de dependências e o grafo de invocações. A geração de um ou de ambos depende do propósito de utilização, ou seja, alocação inicial ou redistribuição dos objetos. O grafo de dependências apresenta uma versão resumida dos relacionamentos. Este adequa-se a auxiliar no processo de distribuição inicial por propiciar um panorama geral dos relacionamentos sem considerar a ordenação de ocorrência das ações. Por sua vez o grafo de invocações tem como propósito a discriminação da ordem de ocorrência das ações de uma aplicação. Viabilizando a utilização deste por parte do processo de redistribuição dos objetos.
3

DEPAnalyzer: um modelo de análise estática de dependências para programas orientados a objetos

Azevedo, Silvana Campos de January 2002 (has links)
Este trabalho apresenta um modelo de análise estática de programas orientados a objetos, o qual se denomina DEPAnalyzer (DEPendencies Analyzer). O modelo realiza a análise das dependências entre as classes de um programa, ou seja, os relacionamentos estabelecidos entre estas. As classes representam as entidades estáticas, as quais em tempo de execução darão origem a conjuntos de objetos. Através da simulação do programa o modelo consegue obter as informações sobre quem se relaciona com quem e qual é a intensidade destes relacionamentos. Estas informações visam auxiliar no processo de escalonamento de um programa em uma arquitetura distribuída. Para expressar estes relacionamentos podem ser gerados dois grafos, o grafo de dependências e o grafo de invocações. A geração de um ou de ambos depende do propósito de utilização, ou seja, alocação inicial ou redistribuição dos objetos. O grafo de dependências apresenta uma versão resumida dos relacionamentos. Este adequa-se a auxiliar no processo de distribuição inicial por propiciar um panorama geral dos relacionamentos sem considerar a ordenação de ocorrência das ações. Por sua vez o grafo de invocações tem como propósito a discriminação da ordem de ocorrência das ações de uma aplicação. Viabilizando a utilização deste por parte do processo de redistribuição dos objetos.
4

DEPAnalyzer: um modelo de análise estática de dependências para programas orientados a objetos

Azevedo, Silvana Campos de January 2002 (has links)
Este trabalho apresenta um modelo de análise estática de programas orientados a objetos, o qual se denomina DEPAnalyzer (DEPendencies Analyzer). O modelo realiza a análise das dependências entre as classes de um programa, ou seja, os relacionamentos estabelecidos entre estas. As classes representam as entidades estáticas, as quais em tempo de execução darão origem a conjuntos de objetos. Através da simulação do programa o modelo consegue obter as informações sobre quem se relaciona com quem e qual é a intensidade destes relacionamentos. Estas informações visam auxiliar no processo de escalonamento de um programa em uma arquitetura distribuída. Para expressar estes relacionamentos podem ser gerados dois grafos, o grafo de dependências e o grafo de invocações. A geração de um ou de ambos depende do propósito de utilização, ou seja, alocação inicial ou redistribuição dos objetos. O grafo de dependências apresenta uma versão resumida dos relacionamentos. Este adequa-se a auxiliar no processo de distribuição inicial por propiciar um panorama geral dos relacionamentos sem considerar a ordenação de ocorrência das ações. Por sua vez o grafo de invocações tem como propósito a discriminação da ordem de ocorrência das ações de uma aplicação. Viabilizando a utilização deste por parte do processo de redistribuição dos objetos.
5

Simulação computacional, desenvolvimento de modelos matemáticos, localização e quantificação de falhas via observador de estado em torres de transmissão /

Bertão, Lucas Ferreira. January 2017 (has links)
Orientador: Gilberto Pechoto de Melo / Resumo: Monitorar a integridade de estruturas, sejam elas, máquinas ou equipamentos mecânicos, consiste em um ramo de estudo que está se firmando. As técnicas que englobam esse monitoramento fazem uso da combinação de sensores e rotinas computacionais para pode extrair os dados necessários da maneira que o operador/analista desejar. Uma das áreas carentes desse tipo de análise/controle é a de distribuição de energia. Todos os anos são noticiados casos envolvendo acidentes envolvendo torres de transmissão que vêm ao chão por, não um, mas vários fatores. Em meio as técnicas de monitoramento, a dos observadores de estado é a que se destaca mais. Contudo, apesar do destaque, a técnica dos observadores de estado possui restrições que motivam novas abordagens. Outro método numérico utilizado amplamente na área de análises em engenharia é o Método dos Elementos Finitos. Este conhecido método, que já possui base mais sólida de desenvolvimento, atualmente faz uso de softwares para a realização dos cálculos de análise estática e/ou dinâmica. O presente trabalho, em conjunto com os observadores de estado e o método dos elementos finitos, mostra uma abordagem, ainda que simples, de uma área pouco explorada com o método – a de detecção e localização de falhas em torres de transmissão via observadores de estados aliado ao método dos elementos finitos. / Mestre
6

Ranking source code static analysis warnings for continuous monitoring of free/libre/open source software repositories / Ranqueamento de avisos de análise estática de código fonte para monitoramento de repositórios de software livre

Ribeiro, Athos Coimbra 22 June 2018 (has links)
While there is a wide variety of both open source and proprietary source code static analyzers available in the market, each of them usually performs better in a small set of problems, making it hard to choose one single tool to rely on when examining a program. Combining the analysis of different tools may reduce the number of false negatives, but yields a corresponding increase in the number of false positives (which is already high for many tools). An interesting solution, then, is to filter these results to identify the issues least likely to be false positives. This work presents kiskadee, a system to support the usage of static analysis during software development by providing carefully ranked static analysis reports. First, it runs multiple static analyzers on the source code. Then, using a classification model, the potential bugs detected by the static analyzers are ranked based on their importance, with critical flaws ranked first, and potential false positives ranked last. To train kiskadee\'s classification model, we post-analyze the reports generated by three tools on synthetic test cases provided by the US National Institute of Standards and Technology. To make our technique as general as possible, we limit our data to the reports themselves, excluding other information such as change histories or code metrics. The features extracted from these reports are used to train a set of decision trees using AdaBoost to create a stronger classifier, achieving 0.8 classification accuracy (the combined false positive rate from the used tools was 0.61). Finally, we use this classifier to rank static analyzer alarms based on the probability of a given alarm being an actual bug. Our experimental results show that, on average, when inspecting warnings ranked by kiskadee, one hits 5.2 times less false positives before each bug than when using a randomly sorted warning list. / Embora exista grande variedade de analisadores estáticos de código-fonte disponíveis no mercado, tanto com licenças proprietárias, quanto com licenças livres, cada uma dessas ferramentas mostra melhor desempenho em um pequeno conjunto de problemas distinto, dificultando a escolha de uma única ferramenta de análise estática para analisar um programa. A combinação das análises de diferentes ferramentas pode reduzir o número de falsos negativos, mas gera um aumento no número de falsos positivos (que já é alto para muitas dessas ferramentas). Uma solução interessante é filtrar esses resultados para identificar os problemas com menores probabilidades de serem falsos positivos. Este trabalho apresenta kiskadee, um sistema para promover o uso da análise estática de código fonte durante o ciclo de desenvolvimento de software provendo relatórios de análise estática ranqueados. Primeiramente, kiskadee roda diversos analisadores estáticos no código-fonte. Em seguida, utilizando um modelo de classificação, os potenciais bugs detectados pelos analisadores estáticos são ranqueados conforme sua importância, onde defeitos críticos são colocados no topo de uma lista, e potenciais falsos positivos, ao fim da mesma lista. Para treinar o modelo de classificação do kiskadee, realizamos uma pós-análise nos relatórios gerados por três analisadores estáticos ao analisarem casos de teste sintéticos disponibilizados pelo National Institute of Standards and Technology (NIST) dos Estados Unidos. Para tornar a técnica apresentada o mais genérica possível, limitamos nossos dados às informações contidas nos relatórios de análise estática das três ferramentas, não utilizando outras informações, como históricos de mudança ou métricas extraídas do código-fonte dos programas inspecionados. As características extraídas desses relatórios foram utilizadas para treinar um conjunto de árvores de decisão utilizando o algoritmo AdaBoost para gerar um classificador mais forte, atingindo uma acurácia de classificação de 0,8 (a taxa de falsos positivos das ferramentas utilizadas foi de 0,61, quando combinadas). Finalmente, utilizamos esse classificador para ranquear os alarmes dos analisadores estáticos nos baseando na probabilidade de um dado alarme ser de fato um bug no código-fonte. Resultados experimentais mostram que, em média, quando inspecionando alarmes ranqueados pelo kiskadee, encontram-se 5,2 vezes menos falsos positivos antes de se encontrar cada bug quando a mesma inspeção é realizada para uma lista ordenada de forma aleatória.
7

Optimização das torres para o projecto da ponte atirantada da terceira travessia do Tejo : comparação entre uma torre em H e V invertido

Rodrigues, Vincent Gomes January 2010 (has links)
Tese de mestrado integrado. Engenharia Civil (Especialização em estruturas). Faculdade de Engenharia. Universidade do Porto. 2010
8

Análise estática e dinâmica de estruturas de veículos

Oliveira, Carlos Alberto Bragança de January 1987 (has links)
Dissertação apresentada para obtenção do grau de Mestre em Engenharia Mecânica, na Faculdade de Engenharia da Universidade do Porto, sob a orientação da Prof.ª Doutora Lúcia Dinis
9

Finite and infinite elements in static and dynamic structural analysis

Marques, José Manuel Mota Couto January 1984 (has links)
Thesis submitted for obtain the degree of Doctor of Philosophy, at the University of Wales
10

Context-sensitive analysis of x86 obfuscated executables

Boccardo, Davidson Rodrigo [UNESP] 09 October 2009 (has links) (PDF)
Made available in DSpace on 2014-06-11T19:30:32Z (GMT). No. of bitstreams: 0 Previous issue date: 2009-10-09Bitstream added on 2014-06-13T18:40:52Z : No. of bitstreams: 1 boccardo_dr_dr_ilha.pdf: 1178776 bytes, checksum: cdd885f0beff962757e3b9de59ce0832 (MD5) / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) / Ofusca c~ao de c odigo tem por nalidade di cultar a detec c~ao de propriedades intr nsecas de um algoritmo atrav es de altera c~oes em sua sintaxe, entretanto preservando sua sem antica. Desenvolvedores de software usam ofusca c~ao de c odigo para defender seus programas contra ataques de propriedade intelectual e para aumentar a seguran ca do c odigo. Por outro lado, programadores maliciosos geralmente ofuscam seus c odigos para esconder comportamento malicioso e para evitar detec c~ao pelos anti-v rus. Nesta tese, e introduzido um m etodo para realizar an alise com sensitividade ao contexto em bin arios com ofuscamento de chamada e retorno de procedimento. Para obter sem antica equivalente, estes bin arios utilizam opera c~oes diretamente na pilha ao inv es de instru c~oes convencionais de chamada e retorno de procedimento. No estado da arte atual, a de ni c~ao de sensitividade ao contexto est a associada com opera c~oes de chamada e retorno de procedimento, assim, an alises interprocedurais cl assicas n~ao s~ao con aveis para analisar bin arios cujas opera c~oes n~ao podem ser determinadas. Uma nova de ni c~ao de sensitividade ao contexto e introduzida, baseada no estado da pilha em qualquer instru c~ao. Enquanto mudan cas em contextos a chamada de procedimento s~ao intrinsicamente relacionadas com transfer encia de controle, assim, podendo ser obtidas em termos de caminhos em um grafo de controle de uxo interprocedural, o mesmo n~ao e aplic avel para mudan cas em contextos a pilha. Um framework baseado em interpreta c~ao abstrata e desenvolvido para avaliar contexto baseado no estado da pilha e para derivar m etodos baseado em contextos a chamada de procedimento para uso com contextos baseado no estado da pilha. O metodo proposto n~ao requer o uso expl cito de instru c~oes de chamada e retorno de procedimento, por em depende do... / A code obfuscation intends to confuse a program in order to make it more di cult to understand while preserving its functionality. Programs may be obfuscated to protect intellectual property and to increase security of code. Programs may also be obfuscated to hide malicious behavior and to evade detection by anti-virus scanners. We introduce a method for context-sensitive analysis of binaries that may have obfuscated procedure call and return operations. These binaries may use direct stack operators instead of the native call and ret instructions to achieve equivalent behavior. Since de nition of context-sensitivity and algorithms for context-sensitive analysis has thus far been based on the speci c semantics associated to procedure call and return operations, classic interprocedural analyses cannot be used reliably for analyzing programs in which these operations cannot be discerned. A new notion of context-sensitivity is introduced that is based on the state of the stack at any instruction. While changes in calling-context are associated with transfer of control, and hence can be reasoned in terms of paths in an interprocedural control ow graph (ICFG), the same is not true for changes in stackcontext. An abstract interpretation based framework is developed to reason about stackcontext and to derive analogues of call-strings based methods for the context-sensitive analysis using stack-context. This analysis requires the knowledge of how the stack, rather the stack pointer, is represented and on the knowledge of operators that manipulate the stack pointer. The method presented is used to create a context-sensitive version of Venable et al.'s algorithm for detecting obfuscated calls. Experimental results show that the contextsensitive version of the algorithm generates more precise results and is also computationally more e cient than its context-insensitive counterpart.

Page generated in 0.0438 seconds