291 |
Identificando dificuldades e benefícios do uso do PSP apoiado por ferramentas de 3ª. geraçãoMontebelo, Renan Polo 22 May 2008 (has links)
Made available in DSpace on 2016-06-02T19:05:47Z (GMT). No. of bitstreams: 1
3388.pdf: 1949798 bytes, checksum: 1a2073d52b18588ac8cb15ca66beb5d9 (MD5)
Previous issue date: 2008-05-22 / Universidade Federal de Sao Carlos / Background: The Personal Software ProcessTM (PSP) is a methodology that can be used by software developers to improve the predictability, the productivity and the quality of their personal work. However, the great number of activities and metrics involved in the PSP makes its application very laborious and difficult. Several PSP supporting tools have been proposed in order to make its application more feasible, and such tools evolved as more experiments were conducted with the PSP. There are now three generations of PSP supporting tools, whereas third generation supporting tools are characterized by being able to collect and analyze Software Engineering metrics automatically and unobtrusively. Objective: This study s objective is to determine the difficulties and benefits of using third generation tools to support the PSP application. Method: The GQM paradigm was used to set up two Case Studies, one being in the academic environment with undergraduate students and another in a small software development company. Both case studies featured the PSP application supported by third generation tools. Results: Results show that third generation supporting tools have some advantages over previous generations tools, especially in the coding phase. However, third generation tools have limited PSP activities support and introduce new adoption problems. Conclusion: For a successful long-term PSP application, it is necessary that the supporting tools are completely adapted and integrated in the developers work environment, with both second and third generations tools characteristics. / Cenário: O Personal Software ProcessTM (PSP) é uma metodologia que pode ser usada por desenvolvedores de software para melhorar a previsibilidade, a produtividade e a qualidade de seu trabalho pessoal. No entanto, a grande quantidade de atividades e métricas envolvidas no PSP torna a sua aplicação bastante trabalhosa e difícil. Várias ferramentas de apoio foram propostas com o intuito de facilitar a aplicação da metodologia, sendo que tais ferramentas evoluíram à medida que estudos sobre a aplicação do PSP eram realizados. Assim, existem hoje três gerações de ferramentas de apoio ao PSP, sendo que as ferramentas de 3ª geração caracterizam-se por coletar e analisar métricas de Engenharia de Software automaticamente, sem a necessidade de intervenção direta do desenvolvedor. Objetivo: O objetivo deste trabalho é determinar as dificuldades e os benefícios do uso de ferramentas de 3ª geração para o apoio à aplicação do PSP. Método: Utilizando o paradigma GQM, foram elaborados dois estudos de caso, sendo um em ambiente acadêmico e outro em uma pequena empresa de desenvolvimento de software. Ambos os estudos de caso envolveram a aplicação do PSP com o apoio de ferramentas de 3ª geração. Resultados: Os resultados mostram que ferramentas de 3ª geração apresentam algumas vantagens em relação às ferramentas de gerações anteriores, especialmente na fase de codificação. No entanto, tais ferramentas apóiam um número limitado de atividades do PSP, além de introduzirem novos problemas de adoção. Conclusão: Para que a aplicação do PSP tenha sucesso em longo prazo é necessário que a ferramenta de apoio seja completamente adaptada e integrada ao ambiente de trabalho do desenvolvedor, apresentando tanto características de ferramentas de 2ª quanto de 3ª gerações.
|
292 |
A proposal for the evolution of model-driven software / Uma proposta para a evolução da engenharia de software dirigida por modelosThiago Gottardi 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.
|
293 |
Uma contribuição para a melhoria colaborativa e distribuída de processos de software / A contribution to a collaborative and distributed software processes improvementPinho, Viviane Dias Malheiros de 01 June 2010 (has links)
A área de melhoria de processos de software (MPS) tem sido investigada sistematicamente, dadas as evidências de que a qualidade do processo pode influenciar significativamente na qualidade do produto final. Modelos e guias com boas práticas para a MPS têm sido sintetizados. Ainda assim, a literatura carece de trabalhos que estabeleçam estratégias de como implementar as boas práticas sugeridas por tais modelos e guias na indústria. Em paralelo, o desenvolvimento distribuído de software (DDS) tornou-se uma realidade, aumentando a complexidade e a importância do processo de desenvolvimento de software e demandando estratégias que permitam uma MPS também distribuída. O objetivo deste trabalho é investigar estratégias e mecanismos que possam promover uma MPS distribuída e colaborativa. A ColabSPI, uma estratégia colaborativa e distribuída para MPS, é proposta para apoiar a evolução estruturada do processo; o tratamento de propostas de melhorias de processo; e a comunicação e participação dos desenvolvedores na MPS. Durante a investigação, fatores que podem influenciar a MPS foram identificados e a relação entre eles foi mapeada, tanto a partir da literatura quanto a partir de um estudo em campo. Dois contextos foram explorados durante a investigação: (i) a MPS em uma organização de grande porte, com unidades distribuídas; e (ii) a MPS no desenvolvimento de software livre (SL). Contribuições para a MPS no desenvolvimento de SL foram geradas no contexto do projeto internacional Qualipso, com a co-autoria do Qualipso Open Source Maturity Model (OMM) e a adequação de ColabSPI para evoluir o OMM. Em ambiente industrial, estudos experimentais foram conduzidos para validar a aplicação de ColabSPI e revelaram que algumas práticas do desenvolvimento de software, inclusive do DDS e do desenvolvimento de SL, podem ser aplicadas com sucesso à MPS, trazendo ganhos de eficácia e eficiência para a melhoria de um processo de desenvolvimento de software. A estratégia proposta está sendo base também para a definição do ambiente de MPS do processo Demoiselle, um processo livre para desenvolvimento de software / Software Process Improvement (SPI) has become an active research field, given the evidences that the quality of software processes can significantly influence the final product quality. Therefore, SPI models and guides have been disclosed. Still, there is a lack of studies establishing strategies on how to implement SPI models\' best practices. Meanwhile, distributed software development (DSD) is becoming widespread, increasing the complexity and importance of software processes and demanding distributed SPI strategies. This study aims to investigate strategies and mechanisms to promote a distributed and collaborative SPI. ColabSPI, a collaborative and distributed approach to SPI is proposed to supporting process evolution, handling process improvement proposals, and promoting the developers participation in SPI and communication. Accordingly, during the investigation possible influences to SPI programs were explored and the relationship between them has been mapped, both from the literature and from a field study. SPI was investigated in two contexts: (i) a large organization, counting on distributed development units; and (ii) the FLOSS development environment. Contributions to SPI in the FLOSS development environment took place in the international project Qualipso resulting on a ColabSPI customization to evolve the Qualipso Open Source Maturity Model (OMM) and in the co-authoring of the model. In industrial environment, experimental studies were conducted to validate ColabSPI, revealing that some of the software development practices, including DSD and FLOSS practices, can be successfully applied to SPI and yield a more efficient and effective improvement of the software development process. ColabSPI features are also being considered to the definition of a SPI environment to the Demoiselle process, an open process for software development
|
294 |
Sistema de automação e controle para aquisição de espectros de correlação angular gama-gama / Control system and automation of the spectrum acquisition for a perturbed gamma-gamma angular correlation spectrometerStachowski, Ademir Francisco Abade 15 February 2019 (has links)
Este trabalho relata os resultados de um projeto de automação de aquisição de dados de um dos espectrômetros de correlação angular perturbada gama-gama (PAC) do laboratório de interações hiperfinas (LIH) do IPEN. O espectrômetro é constituído de quatro detectores de cintilação (BaF3). Basicamente registra-se a diferença de temporal entre a detecção de quaisquer dois raios gamas emitidos em cascata (do núcleo de prova) incidentes em quaisquer dois detectores do espectrômetro. Dependendo das condições, o núcleo de prova ocupa determinados sítios de uma rede cristalina ou de uma macromolécula onde se pretende estudar as características elétricas e/ou magnéticas do meio nas áreas de física da matéria condensada ou biofísica. Para realização deste trabalho utilizou-se a linguagem Java por se tratar de uma linguagem de programação multiplataforma e orientada a objetos, possuindo, portanto, portabilidade e maior tempo de vida do software e devido à facilidade de implementação dos periféricos. Por fim, o software possui uma interface amigável e intuitiva, com o usuário podendo operar o sistema manualmente ou automaticamente, com aquisições de tempo de até 100 horas consecutivas. No modo automático, Antes de cada aquisição, o software seta a temperatura (do controlador), previamente definida pelo usuário, aguarda a estabilidade, processa a aquisição, registra os dados em arquivos diferentes (para temperaturas diferentes). Além disso, o software também salva em um arquivo todas as informações de parâmetros relevantes durante a aquisição. / This work reports results from the automation of data acquisition for a gamma-gamma perturbed angular correlation (PAC) spectrometer located in the hyperfine interactions laboratory (LIH) of IPEN. A PAC spectrometer comprises usually four scintillation detectors (BaF3). Basically, the time difference between the detection of any two gamma emitted rays (of the probe nuclei) incident on any two spectrometer detectors is recorded. Depending on the conditions, the probe nuclei occupies certain sites of a crystalline lattice or a macromolecule where it is intended to study the electrical and / or magnetic characteristics of the medium in the areas of condensed or biophysical matter physics. In order to perform this work, the Java language was used because it is a multiplatform and object-oriented programming language, thus having portability and longer software life and due to the ease of implementation of the peripherals. Finally, the software has a friendly and intuitive interface with the user being able to operate the hardware manually or automatically with time acquisitions up to 100 consecutive hours. In automatic mode, the software sets the temperature (controller) previously set by the user, awaits stability, processes the acquisition, and records the data in different files (for different temperatures) before each acquisition. In addition, the software also saves to a file all relevant parameter information during acquisition.
|
295 |
Uma abordagem para apoiar o projeto detalhado de sistemas multiagentes na metodologia tropos.Inaldo Capistrano Costa 30 November 2007 (has links)
A metodologia Tropos para o desenvolvimento de Sistemas Multiagentes é uma das metodologias que vem despertando interesse de diversos grupos de pesquisa. Apesar desse interesse e das pesquisas em andamento, alguns aspectos podem ser melhorados. Esta tese de mestrado apresenta uma abordagem para apoiar a consistência dos artefatos que compõem o projeto de Sistemas Multiagentes na metodologia Tropos. Para tanto, são propostas técnicas baseadas em cenários e objetivos em conjunto com heurísticas para elaboração e consistência dos artefatos de projeto que usa a metodologia Tropos, tendo como motivações a falta de uma sistematização que facilite a consistência dos artefatos gerados desde a fase de requisitos até o projeto detalhado. A abordagem foi experimentada em sistemas multiagentes, resultados preliminares indicam a obtenção dos benefícios esperados.
|
296 |
Framework para sistemas hipertexto na Web.Leonardo Botelho Battaglia 21 February 2008 (has links)
A área de estudo relacionada aos sistemas Hipertexto recebe atenção especial nestes últimos tempos motivada pelo crescimento da Internet, mas ainda assim é difícil encontrar na literatura uma arquitetura de software que permita ao software ser reutilizável, flexível e escalável. O principal objetivo desta tese é prover esta arquitetura modular reutilizável para o desenvolvimento de Sistemas Hipertexto para a Web, propiciando a implementação de aplicações desta natureza de forma coesa, ágil, eficiente e livre de falhas. Um framework hipertexto para sistemas Web foi criado utilizando a arquitetura proposta como um guia de desenvolvimento. O intuito do framework é a validação desta nova arquitetura oferecendo um sistema pré-moldado, facilitando a implementação de novas aplicações Hipertexto para a Web. Utilizou-se a tecnologia Java para permitir eventuais extensões ao framework e conseqüentemente de sua arquitetura. Pela necessidade de certificar o que foi proposto e construído, aplicou-se o framework a um estudo de caso, o sistema Web do projeto João de Barro. Este projeto tem por finalidade principal o desenvolvimento de um módulo criptográfico para a emissão das chaves públicas e privadas da AC-Raiz baseando-se em princípios de software livre. A justificativa ao uso do framework hipertexto para este projeto é garantir um meio de disponibilizar o acesso às informações e ao código fonte, viabilizando a possibilidade do estudo ao conteúdo gerado durante o projeto, sendo este um dos princípios para a afirmação do software como sendo livre.
|
297 |
RUP extension for development of distributed systems.Carlos Eduardo de Barros Paes 13 May 2008 (has links)
The increasing number of distributed systems results from the progress of computing and communication technology. This progress contributed to the expansion of Internet, increasing both availability and decentralization of the storage and processing. Nowadays the development of mature software for those systems is accomplished through the use of good practices of software engineering. The software engineering discipline provides processes, methods, techniques and tools that allow a suitable organization of the development process, as well as a quality result. Security, performance and fault tolerance are considered essential requirements for distributed systems. In this way, it is important that during the system development that these quality requirements be considered from the initial to end phases of software development lifecycle. Most of the software development processes were proposed before this understanding and they do not provide appropriate support for the development of distributed systems yet. RUP (Rational Unified Process) is a well-known software engineering process that provides a disciplined approach to assigning tasks and responsibilities; however, it has little support for development of distributed systems. The proposal of this work is to propose an extension to RUP for the development of distributed systems. In this proposal we considered security, fault tolerance and performance as important aspects of distributed systems design. All these aspects are embodied in RUP as a knowledge area (discipline), named distributed systems, with activities and roles defined according to the architecture of process engineering UMA (Unified Method Architecture). Examples were elaborated to clarify and show the feasibility of the proposal for both each knowledge areas and all the knowledge areas.
|
298 |
Um estudo de caso da aplicabilidade de técnicas de programação orientada a aspectos com a metodologia de programação extrema.Rosenclever Lopes Gazoni 07 August 2008 (has links)
A busca por mecanismos que propiciem a construção de sistemas de software com qualidade e rapidez é uma constante dentro do seu processo de desenvolvimento. Métodos de produção de sistemas que norteiem os desenvolvedores têm sido propostos para que esta qualidade possa fazer parte dos produtos gerados pela indústria de software. Ferramentas e técnicas de programação são disponibilizadas para que se atinjam, com maior precisão, os fatores de qualidade que um software deva ter. Atualmente, as metodologias ágeis têm alcançado lugar de destaque e obtido uma aceitação entre os desenvolvedores. Dentre as diferentes metodologias ágeis, a Programação Extrema (XP) vem alcançando uma maior parte deste público. Paralelamente, técnicas de programação têm emergido para aumentar a qualidade e eficiência e elevar a manutenibilidade dos softwares desenvolvidos. A Programação Orientada a Aspectos (POA) entra neste cenário como uma evolução natural da Orientação a Objetos, a fim de resolver algumas falhas diagnosticadas nesta abordagem, melhorando a qualidade do software produzido. Esta pesquisa propiciou a exploração de práticas de projeto, de software aplicando em conjunto conceitos de desenvolvimento ágil, utilizando a metodologia de Programação Extrema (XP) e Programação Orientada a Aspectos (POA). Este trabalho proporcionou também a verificação de uma relação entre XP e POA e a identificação dos principais benefícios e dificuldades encontradas a partir da união das duas. Nele, observou-se que sua utilização conjunta é aplicável e que elas contribuem mutuamente para a melhoria uma da outra. Para isto, foi produzido um estudo de caso que gerou uma aplicação web, utilizando a linguagem de programação PHP, que não é comumente citada em exemplos de XP e POA, mas por outro lado está presente em muitos portais da web, gerando um exemplo real de desenvolvimento de testes de unidade e construção de aspectos em PHP. Ao final desta investigação, pôde-se concluir que as duas técnicas aplicadas em conjunto propiciam redução de tempo, custo e complexidade no desenvolvimento de sistemas de software sem, entretanto, comprometer sua qualidade.
|
299 |
Teste baseado em arquitetura de software e modelo de estados.Augusto Maia Gonçalves 21 December 2009 (has links)
Em sistemas grandes e complexos, a necessidade de formalizar a atividade de testes tende a crescer. Fazendo-se uso da ADL (Architectural Description Language), pode-se obter uma descrição de alto nível do software que pode originar um conjunto alternativo de informações para teste. Neste trabalho, apresenta-se uma proposta para organizar a atividade de teste a partir da descrição arquitetural por meio de um mapeamento entre ADL Wright e diagrama de estados da UML. Neste sentido, desenvolveu-se uma ferramenta, chamada WC2UML, que implementa tal mapeamento e permite a sua visualização gráfica. Ao final, com base em métodos da literatura, é possível gerar sequências de testes a partir dos diagramas obtidos.
|
300 |
Um método que integra métricas funcionais, COCOMO II e técnica do valor agregado com guia PMBOK.Carlos Augusto Lombardi Garcia 24 March 2009 (has links)
Atualmente, Pontos de Função e Pontos de Casos de Uso têm sido amplamente adotados na indústria de software para medir o tamanho do trabalho de desenvolvimento de projetos de software. Tais métricas deveriam ser usadas em conjunto com técnicas de estimativa, tais como COCOMO. Existe também um interesse crescente no monitoramento e controle do desempenho dos projetos. Técnica do Valor Agregado é conhecida como uma técnica fácil de ser entendida e que ajuda a monitorar e controlar o desempenho dos projetos. Esse trabalho apresenta uma seqüência de passos que permitem a integração das métricas funcionais de software, COCOMO II e Técnica do Valor Agregado nos processos recomendados pelo Guia PMBOK para planejamento e controle dos projetos de desenvolvimento de software. O objetivo de tal seqüência de passos é fornecer aos gerentes de projetos de software um método efetivo de gerenciamento utilizando o Guia PMBOK e as métricas funcionais de software. Um estudo de caso foi elaborado utilizando dados de projetos reais para validação dessa proposta. Um componente para a ferramenta de planejamento Microsoft Project foi desenvolvido para apoiar a automatização do método proposto.
|
Page generated in 0.0236 seconds