925 resultados para software engineering practices
Resumo:
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)
Resumo:
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)
Resumo:
Pós-graduação em Ciência da Computação - IBILCE
Resumo:
Este trabalho apresenta uma nova abordagem para avaliação automática de consultas SQL. Essa abordagem propõe uma solução para o desafio de estimular o aprendiz a aperfeiçoar a sua solução: buscando, além de uma resposta que retorna o resultado correto, uma consulta com complexidade próxima da solução ótima. Essa proposta pode ser utilizada em ambientes de educação a distancia ou na educação presencial em atividades de laboratório, incluindo as avaliações. A solução proposta tem como vantagens: (1) o aprendiz recebe um feedback instantâneo durante a atividade prática de programação, o qual permite ao aprendiz refatorar a sua solução em direção a uma solução ótima; (2) completa integração entre o ensino de conceitos de programação com exemplo de fragmentos de programas executáveis on-line; (3) monitoramento das atividades do aprendiz (quantos exemplos foram executados; em cada exercício quantas tentativas de execução foram feitas, etc). Este trabalho é um primeiro passo na direção de construção de um ambiente totalmente assistido (por exemplo com avaliação automática) para ensino da linguagem de programação SQL, onde o professor é liberado do árduo trabalho de correção de comandos SQL podendo realizar tarefas pedagógicas mais relevantes. O método, fundamentado em estatística e métricas da Engenharia de Software, pode ser adaptado para outras linguagens tais como Java e Pascal. Além disso, o LabSQL serve com um laboratório para experimentação de duas novas técnicas, uma de avaliação e outra de acompanhamento, que estão sendo pesquisadas em trabalhos em paralelos: (a) avaliação automática de questões conceituais discursivas, além de permitir as tradicionais perguntas objetivas, (b) método de acompanhamento através de montagem de uma rubrica de avaliação.
Resumo:
Neste trabalho, é implementada uma interface gráfica de usuários (GUI) usando a ferramenta Qt da Nokia (versão 3.0). A interface visa simplificar a criação de cenários para a realização de simulações paralelas usando a técnica numérica Local Nonorthogonal Finite Difference Time-Domain (LN-FDTD), aplicada para solucionar as equações de Maxwell. O simulador foi desenvolvido usando a linguagem de programação C e paralelizado utilizando threads. Para isto, a biblioteca pthread foi empregada. A visualização 3D do cenário a ser simulado (e da malha) é realizada por um programa especialmente desenvolvido que utiliza a biblioteca OpenGL. Para melhorar o desenvolvimento e alcançar os objetivos do projeto computacional, foram utilizados conceitos da Engenharia de Software, tais como o modelo de processo de software por prototipagem. Ao privar o usuário de interagir diretamente com o código-fonte da simulação, a probabilidade de ocorrência de erros humanos durante o processo de construção de cenários é minimizada. Para demonstrar o funcionamento da ferramenta desenvolvida, foi realizado um estudo relativo ao efeito de flechas em linhas de baixa tensão nas tensões transitórias induzidas nas mesmas por descargas atmosféricas. As tensões induzidas nas tomadas da edificação também são estudadas.
Resumo:
Pós-graduação em Engenharia Elétrica - FEIS
Resumo:
With the technology evolution for school proposals, became necessary the creation and modifica- tion of the pedagogical paradigms applied in the classroom. With this in mind, this monograph attempts to explain clearly and succinctly how to develop a complete game, following the precepts of appropriate pedagogy and software engineering steps, explaining the main entertainment devices and graphics suitable for the student’s intellectual development. Therefore, it is studied throughout this academic work, the complete process of development, making use of the development language ActionScript 3.0 , aided by some other technologies, show- ing that the use of technology articles in the classroom is possible and highly indicated
Resumo:
With the advancement of the gaming industry in the market, became evident the need for professionals working in this area. With this in mind, this paper attempts to create an environment where aspirants and professionals in creating games can interact. To get to this point, was built one system based on current technologies, and parad igms of software engineering system. So throughout this monograph the process of the system development is studied, using different technologies, and showing how it can work, the exchange of information and knowledge among the games creation lovers
Resumo:
This work seeks to demonstrate the advantages in functional software test automation using Sikuli tool, which uses image recognition to find the graphical elements of a system, in addition to using a custom library with methods made to automate the summarization of obtained results through the tests and their evidence
Resumo:
Pós-graduação em Ciência da Computação - IBILCE
Resumo:
Different vocabularies and contexts are barriers to the communication between people or software systems. It is necessary a common understanding in the domain that is talked about, so it can be obtained a correct interpretation of the information. An ontology formally models the structure of a domain and turn explicit the shared understanding in the form of concepts and relations that emerge from its observation. Constitutes a sort of framework used in the mapping to the meaning of the information that is talked about. The formal accuracy in which they are defined, by means of axioms, allow machine processing, implicating in systems interoperability. Structured this way, the knowledge is easily transferred between people or systems from different contexts. Ontologies present several applications nowadays. They are considered the infra-structure to the Semantic Web, which is composed by Web resources with embedded meaning. Thereby, the automatic execution of complex tasks is allowed, with the benefit from the effective communication between Web software agents. Among other applications, they also have been used to structure the knowledge generated from several areas, like Biology and Software Engineering.
Resumo:
Mashups are becoming increasingly popular as end users are able to easily access, manipulate, and compose data from several web sources. To support end users, communities are forming around mashup development environments that facilitate sharing code and knowledge. We have observed, however, that end user mashups tend to suffer from several deficiencies, such as inoperable components or references to invalid data sources, and that those deficiencies are often propagated through the rampant reuse in these end user communities. In this work, we identify and specify ten code smells indicative of deficiencies we observed in a sample of 8,051 pipe-like web mashups developed by thousands of end users in the popular Yahoo! Pipes environment. We show through an empirical study that end users generally prefer pipes that lack those smells, and then present eleven specialized refactorings that we designed to target and remove the smells. Our refactorings reduce the complexity of pipes, increase their abstraction, update broken sources of data and dated components, and standardize pipes to fit the community development patterns. Our assessment on the sample of mashups shows that smells are present in 81% of the pipes, and that the proposed refactorings can reduce that number to 16%, illustrating the potential of refactoring to support thousands of end users developing pipe-like mashups.
Resumo:
The broad goals of verifiable visualization rely on correct algorithmic implementations. We extend a framework for verification of isosurfacing implementations to check topological properties. Specifically, we use stratified Morse theory and digital topology to design algorithms which verify topological invariants. Our extended framework reveals unexpected behavior and coding mistakes in popular publicly available isosurface codes.
Resumo:
The irregular shape packing problem is approached. The container has a fixed width and an open dimension to be minimized. The proposed algorithm constructively creates the solution using an ordered list of items and a placement heuristic. Simulated annealing is the adopted metaheuristic to solve the optimization problem. A two-level algorithm is used to minimize the open dimension of the container. To ensure feasible layouts, the concept of collision free region is used. A collision free region represents all possible translations for an item to be placed and may be degenerated. For a moving item, the proposed placement heuristic detects the presence of exact fits (when the item is fully constrained by its surroundings) and exact slides (when the item position is constrained in all but one direction). The relevance of these positions is analyzed and a new placement heuristic is proposed. Computational comparisons on benchmark problems show that the proposed algorithm generated highly competitive solutions. Moreover, our algorithm updated some best known results. (C) 2012 Elsevier Ltd. All rights reserved.
Resumo:
In this work we introduce a relaxed version of the constant positive linear dependence constraint qualification (CPLD) that we call RCPLD. This development is inspired by a recent generalization of the constant rank constraint qualification by Minchenko and Stakhovski that was called RCRCQ. We show that RCPLD is enough to ensure the convergence of an augmented Lagrangian algorithm and that it asserts the validity of an error bound. We also provide proofs and counter-examples that show the relations of RCRCQ and RCPLD with other known constraint qualifications. In particular, RCPLD is strictly weaker than CPLD and RCRCQ, while still stronger than Abadie's constraint qualification. We also verify that the second order necessary optimality condition holds under RCRCQ.