Spelling suggestions: "subject:"reengenharia dde software"" "subject:"reengenharia dee software""
1 |
Reengenharia da interface de ferramenta para criação de modelo de domínio em cursos adaptativosPublio, Gustavo Correa January 2014 (has links)
Orientador: Prof. Dr. Edson Pinheiro Pimentel / Dissertação (mestrado) - Universidade Federal do ABC, Programa de Pós-Graduação em Engenharia da Informação, 2014. / A necessidade de uma educação mais personalizada de modo a atender as lacunas
específicas de cada aprendiz parece ser um consenso. A educação mediada por tecnologias,especialmente quando apoiada por uso de computadores, cria um cenário propício para a personalização, mas seu uso ainda é muito tímido. No contexto deste trabalho foca-se no problema da autoria de conteudos que possibilitem a personalização. Mais especifcamente, considera-se a autoria de conteudos a partir de ferramentas disponíveis no framework GRAPPLE, cujo mecanismo de adaptação se integra a ambientes bastante utilizados como o Moodle e Sakai. Neste sentido, o presente trabalho buscou analisar e tratar problemas encontrados no processo de autoria de conteúdos a partir da ferramenta GAT do framework GRAPPLE. Uma nova ferramenta para criação do Modelo de
Domínio foi desenvolvida de modo a tornar esta importante etapa, mais simples e ágil,
principalmente para uso de educadores comuns, ou seja, sem conhecimentos de programação de computadores. Espera-se que os resultados do trabalho possam contribuir para o aperfeiçoamento da ferramenta de autoria GAT do framework GRAPPLE e futuramente
propiciar o aumento da criação de cursos adaptativos. / The need of a more personalised education in order to support the specifc gaps of
each learner seems to be a consensus. The technology-mediated education, specially when
supported by the use of computers, creates a favorable environment for personalisation,
but its use is still been made in low scale. In the context of this work the focus is the
problem of authoring content that allows the customisation. More specifically, we consider
the authorship of content through the use of tools available in GRAPPLE framework,
whose adaptation mechanism integrates with widely used environments such as Moodle
and Sakai. In this sense, the present work sought to analyse and address issues found in
content authoring process through the GAT tool of GRAPPLE framework. A new tool for
Domain Model design was developed to make this important step leaner and more agile,
specially for use of ordinary educators, i.e., without knowledge of computer programming.
It is expected that the results of this work may contribute to the improvement of the GAT
authoring tool of the GRAPPLE framework and in the future provide the increase of
creation of adaptive courses.
|
2 |
Proposta de processo de migração para um estilo SOAMorgado, Pedro Miguel Barros January 2010 (has links)
Tese de Mestrado Integrado. Engenharia Informática e Computação. Universidade do Porto. Faculdade de Engenharia. 2010
|
3 |
Uma abordagem de reengenharia interativa orientada a características para sistemas embutidos legadosRamos, Marcelo Augusto 28 October 2007 (has links)
Made available in DSpace on 2016-06-02T19:05:27Z (GMT). No. of bitstreams: 1
1694.pdf: 901058 bytes, checksum: e514a96a13b1c36a4d60a8b5b7008adb (MD5)
Previous issue date: 2007-10-28 / To reduce costs, to minimize risks, to anticipate deadlines and to optimize resources of new
product designs it is recommended, whenever possible, to reuse artifacts of existing
successful similar products. However, these artifacts must be of easy adaptation to meet the
requirements of the new products with a few or no need of re-design or re-coding. This work
describes a feature oriented iterative reengineering approach to concomitantly achieve both
the revitalization of embedded legacy systems and the incremental creation of a core of
reusable artifacts, to support the development of other similar systems, members of a product
family. Such systems are generally small and pass through frequent maintenances to support
the evolution of the hardware they integrate, accelerating the natural software degradation
process. The accomplishment of a reengineering process can extend the life cycle of these
systems, improving their structural properties for a better adaptation to changes. Agile
principles and techniques are applied throughout the process, providing continuous
interactions with the customer and deliveries of executable and tested partially modernized
versions in short and frequent intervals, with documentation in appropriate level and prepared
for future modifications. Software Product Line techniques are used for the domain modeling
and for the design of generic software components. Its activities are accomplished without the
need of code freezing or duplication and allow maintenances and interruptions at anytime,
without prejudice of the enhancements already developed in all previously ended iterations. A
case study is presented to exemplify the proposed approach in a real environment and to
evaluate its results. / Para reduzir custos, minimizar riscos, antecipar prazos e otimizar recursos de projetos de
novos produtos recomenda-se, sempre que possível, a reutilização de artefatos de produtos
similares e bem sucedidos existentes. Porém, esses artefatos devem ser de fácil adaptação para
que satisfaçam aos requisitos desses novos produtos com pouca ou nenhuma necessidade de
re-projeto ou de re-codificação. Este trabalho descreve uma abordagem de reengenharia
iterativa orientada a características para realizar concomitantemente a revitalização de
sistemas embutidos legados e a criação incremental de um núcleo de artefatos reutilizáveis,
para apoiar o desenvolvimento de outros sistemas similares, membros de uma família de
produtos. Tais sistemas são geralmente pequenos e sofrem constantes manutenções para
apoiarem a evolução do hardware que integram, acelerando o processo natural de degradação
do software. A realização de um processo de reengenharia pode prolongar a vida útil desses
sistemas, melhorando suas propriedades estruturais para uma melhor adaptação a mudanças.
Princípios e técnicas ágeis são aplicados ao longo de todo o processo, provendo interações
contínuas com o cliente, entregas de versões executáveis testadas e parcialmente
modernizadas em intervalos curtos e freqüentes, com documentação em nível apropriado e
preparadas para modificações futuras. Técnicas de Linha de Produtos de Software são
utilizadas para a modelagem de domínio e para o projeto de componentes genéricos de
software. Suas atividades são realizadas sem a necessidade de congelamentos ou duplicações
de código e permitem que manutenções e paralisações ocorram a qualquer instante, sem
prejuízo das melhorias já desenvolvidas nas iterações previamente concluídas. Um estudo de
caso é apresentado para exemplificar a aplicação da abordagem proposta em um ambiente real
e para avaliar os seus resultados.
|
4 |
GRENJ: um framework obtido por um processo iterativo de reengenharia aplicando TDDDurelli, Vinícius Humberto Serapilha 21 May 2008 (has links)
Made available in DSpace on 2016-06-02T19:05:36Z (GMT). No. of bitstreams: 1
1977.pdf: 7827443 bytes, checksum: b7d5ce8bc5bb133ce610c499fdd47f85 (MD5)
Previous issue date: 2008-05-21 / Financiadora de Estudos e Projetos / Software systems must satisfy the users requeriments and use current technologies. Thus, these systems are in constant evolution and several software maintenance tasks are carried out in order to adapt them to the user s requirements as well as to the current technologies. When there is a change in the technology used by these systems, an approach to their revitalization is reengineering, which is classified as a preventive maintenance. This research project presents the iterative process applied during the reengineering of the GREN framework, which is built based on the GRN pattern language. The GREN framework was originally implemented in Smalltalk, a very spread programming language, mainly within the academic community. In the proposed reengineering process the JavaTMlanguage and AspectJ, which is an aspect-oriented JavaTMextension, were used during the framework implementation resulting from the reengineering process. This new framework is called GRENJ. The proposed process can be used to reengineer systems developed with OO paradigm, in order to change its implementation language to another OO language. That process is iterative, incremental, and applies reverse engineering patterns, test-driven development and refactoring. The GRENJ framework has approximately twenty-eight thousand source code lines, of which approximately ten thousand are related to tests created during the development. The GRENJ framework documentation was generated using the javadoc tool. A hypothetical system that satisfies the basics requirements of a rental video store was instantiated using the GRENJ framework. / Os sistemas de software devem atender aos requisitos dos usuários utilizar as tecnologias atuais. Dessa forma, esses sistemas permanecem em constante evolução e passam por várias atividades de manutenção a fim de se adequar tanto às necessidades dos usuários quanto às tecnologias. Quando há mudança de tecnologia, uma das formas de revitalizar esses sistemas é com a aplicação de reengenharia, classificada como manutenção preventiva. Este projeto de pesquisa apresenta o processo iterativo usado durante a realização da reengenharia do framework caixa-branca GREN (Gerenciamento de REcursos de Negócios), construído com base na linguagem de padrões GRN (Gerenciamento de Recursos de Negócios). O framework GREN foi implementado originalmente em Smalltalk, linguagem de programação muito difundida, principalmente, na comunidade acadêmica. No processo de reengenharia proposto, as linguagem JavaTMe AspectJ, extensão da linguagem JavaTMpara programação orientada a aspectos, foram utilizadas para implementação da nova versão do framework, denominada GRENJ (Gerenciamento de REcursos de Negócios em JavaTM). O processo de reengenharia proposto pode ser utilizado na reengenharia de outros sistemas desenvolvidos com o paradigma OO, em que a mudança de linguagem de programação é desejada, pois é iterativo, incremental, utiliza padrões de engenharia reversa, desenvolvimento guiado por testes (Test-Driven Development, TDD) e refatoração. O framework GRENJ tem aproximadamente vinte e oito mil linhas de código fonte, das quais pouco mais de dez mil estão relacionadas aos testes criados durante o desenvolvimento. A documentação desse framework foi produzida utilizando a ferramenta javadoc. Um sistema hipotético que atende aos requisitos básicos de uma locadora de DVDs foi instanciado usando o GRENJ.
|
5 |
Apoio de gerência de configuração de software ao ARAGAwCReBorges, Simone de Sousa 22 August 2008 (has links)
Made available in DSpace on 2016-06-02T19:05:37Z (GMT). No. of bitstreams: 1
2182.pdf: 4421179 bytes, checksum: 63de133f5bf22386eb28a4d02f879274 (MD5)
Previous issue date: 2008-08-22 / Software systems suffer countless modifications during all its life cycle. Software Configuration Management (SCM) is concerned with organizing, controlling and managing the development and evolution of those systems. GAwCRe is a web application generator built based on Software Product Line for the rehabilitation clinics management domain. The generator instantiation is made through a Modelling Language that is based on the pattern language SiGCli. An ad hoc process has been proposed in order to apply the GAwCRe application generator within Arcabouço de Reengenharia Ágil (ARA). The ARA has the purpose of migrating small and medium procedural systems to the OO paradigm. This research presents an approach of SCM along with ARA to support the Processo de Reengenharia Ágil de Sistemas Legados Utilizando Geradores de Aplicações. The proposed approach uses a process, that is based on the standard IEEE 828-2005, to guide the planning of the SCM activities. Three systems were used: version control, changes control and build management. Other systems and tools are foreseen to provide the integration of the work spaces. The proposed approach supports the employ of the Processo Ágil de Reengenharia Utilizando Geradores de Aplicações associated with the ARA, other generators of applications built based in pattern languages also can be used to aid the design and implementation of the resulting system. Two legacy systems were partially reengineered applying the proposed approach. / Sistemas de software passam por inúmeras modificações o longo de seu ciclo de vida. Gerência de Configuração de Software (GCS) preocupa-se em organizar, controlar e gerenciar o desenvolvimento e a evolução desses sistemas. GAwCRe é um gerador de aplicações para a Web desenvolvido com base em Linha de Produtos de Software, no domínio de clínicas de reabilitação física (Fisioterapia, Terapia Ocupacional e Educação Física). A instanciação do gerador é feita a partir de uma Linguagem de Modelagem de Aplicação definida com base na linguagem de padrões SiGCli. Por um processo ad hoc foi proposta a utilização do gerador GAwCRe como ferramenta de apoio junto ao Arcabouço de Reengenharia Ágil (ARA). ARA apóia a migração de sistemas legados procedimentais para o paradigma orientado a objetos utilizando recursos como: reúso de projeto e de código, processos, linguagens de padrões de análise, práticas de métodos ágeis e ferramentas. Esta dissertação apresenta uma abordagem de GCS junto ao ARA para apoiar o Processo de Reengenharia Ágil de Sistemas Legados Utilizando Geradores de Aplicações. A abordagem proposta utiliza processo baseado na norma IEEE 828-2005 para guiar o planejamento das atividades de GCS. Foram empregados três sistemas: controle de versões, controle de mudanças e gerenciamento de construções. Outros sistemas e ferramentas são previstos para prover a integração dos espaços de trabalho. A abordagem proposta apóia o emprego do Processo Ágil de Reengenharia Utilizando Geradores de Aplicações em associação ao ARA, assim, outros geradores de aplicações construídos com base em linguagens de padrões podem ser utilizados para auxiliar a obtenção do projeto e para a implementação do sistema alvo. A reengenharia de dois sistemas legados foi parcialmente realizada apoiada pela abordagem proposta.
|
6 |
Utilização de geradores de aplicação em processos ágeis de reengenharia.Freitas, Raquel Gonçalves de 18 December 2006 (has links)
Made available in DSpace on 2016-06-02T19:05:24Z (GMT). No. of bitstreams: 1
DissRGF.pdf: 1653383 bytes, checksum: f72c00a10a4cce587d382c3b6d2245c0 (MD5)
Previous issue date: 2006-12-18 / Agile methods, through their principles and values, propose to make software
development more flexible, thus satisfying the customer in a rapid and customized way.
Quality has a fundamental role both in software development and in software maintenance. It
is known that, for a product to have quality, guidelines have to be followed along the whole
development process as well as software maintenance. Software reengineering is a solution
for those systems in which maintenance grew difficult with time. Some reengineering
processes use software patterns which provide success solutions for recurrent problems
and, also seek agility, avoiding the waterfall process model. Application generators provide
agility in software development, as they help the process automation for a certain domain.
This dissertation aims to use application generators, more specifically GawCRe (Gerador de
aplicações para web de Clínicas de Reabilitação web application generator for rehabilitation
clinics) together with ARA (Arcabouço de Reengenharia Ágil Agile Reengineering
Approach), instead of the GREN (Gestão de REcursos de Negócio Business Resource
Management) framework. Through a prospective case study, conducted with four legacy
systems belonging to the medical clinics domain, it has been observed that ARA supports that
applications generators use, although it is necessary to make an adaptation in order to allow it.
This is true even though the legacy systems domain is not the same as that of the application
generator. The generator adaptation has been easier because it is specified in XML. As the
code that it generates is in Java, it has been possible to use the Eclipse environment though to
produce the classes diagrams necessary to future maintenance. This enforced the
reengineering process adaptation so that the classes diagrams production commended to be
prepared before code generation passed to be produced after that generation. / Métodos ágeis, através de seus princípios de valores, propõem tornar o
desenvolvimento de software mais flexível, satisfazendo assim o cliente de modo rápido e
personalizado. Qualidade tem papel fundamental tanto em desenvolvimento quanto em
manutenção de software. Sabe-se que, para um produto ter qualidade, diretrizes devem ser
seguidas ao longo de todo o processo de desenvolvimento bem como de manutenção de
software. Reengenharia de software é solução para aqueles sistemas nos quais a manutenção
tornou-se difícil ao longo do tempo. Alguns processos de reengenharia usam padrões de
software que fornecem soluções de sucesso para problemas recorrentes e, também buscam
agilidade evitando o modelo de processo em cascata. Geradores de aplicação possibilitam
agilidade no desenvolvimento de software, pois ajudam a automação do processo para um
certo domínio. Esta dissertação visa usar geradores de aplicação, mais especificamente
GAwCRe (Gerador de aplicações para web de Clínicas de Reabilitação) junto com o ARA
(Arcabouço de Reengenharia Ágil) em vez do framework GREN (Gestão de REcursos de
Negócio). Por meio de um estudo de caso prospectivo, conduzido com quatro sistemas
legados pertencentes ao domínio de clínicas médicas, foi observado que o ARA apóia o uso
de geradores de aplicação, apesar de ser necessário fazer uma adaptação para permiti-lo. Isso
é verdade apesar do domínio dos sistemas legados não ser o mesmo que o do gerador de
aplicações. A adaptação do gerador foi facilitada porque ele é especificado em XML. Como o
código por ele gerado é em Java, foi possível usar o ambiente Eclipse para obter os diagramas
de classes necessários para futura manutenção. Isso obrigou a adaptação do processo de
reengenharia de modo que a produção dos diagramas de classes preconizada para ser feita
antes da geração de código passasse a ser realizada após essa geração.
|
7 |
Formalização de um modelo de processo de reengenharia centrado no usuário para conversão de aplicações desktop em RIAsBuzatto, David 12 May 2010 (has links)
Made available in DSpace on 2016-06-02T19:05:42Z (GMT). No. of bitstreams: 1
2997.pdf: 4158163 bytes, checksum: 540ba66fcb2c536c7a72d8add391f0b3 (MD5)
Previous issue date: 2010-05-12 / Financiadora de Estudos e Projetos / The software reengineering becomes important because of the need that organizations have in adjusting to new trends, technologies and user requirements. The term organization should be understood like universities or companies that develop software for use by a large number of people. Thinking about the adequacy of users requirements, is presented in this work the reengineering process of a software called Cognitor, which is a tool designed to support teachers in the process of creating electronic teaching materials. The need to reengineer Cognitor was perceived through a case study where several changes were pointed by users. Some of these changes are: text editor improvement, preview of the images that are inserted in the content pages, feedback to the users, among others. During the reengineering of this software, it was formalized a software reengineering process model, user-centered, for the conversion of desktop applications in RIAs (Rich Internet Application), called UC-RIA (User Centered Rich Internet Application). The process model was named as UC-RIA due to the participation of the potential users during the application s reengineering process, because they were involved in prototyping and in validation of the graphical interfaces of the new version. The results of this study show the capability of the proposed software reengineering model to be used as a support in organizations for the reengineering of their software, mainly because it inserts the users in the reengineering process during the application s Prototyping phase, bringing software to users real needs. / A reengenharia de software se faz importante devido à necessidade que as organizações têm em se adequar às novas tendências, tecnologias e exigências dos usuários. Inclui-se ao termo organizações , empresas ou universidades que desenvolvem softwares para serem utilizados por um grande número de pessoas. Pensando na adequação das exigências dos usuários, este trabalho apresenta a reengenharia de um software chamado Cognitor, que é uma ferramenta criada para apoiar os educadores no processo de criação de material didático eletrônico. A percepção da necessidade da reengenharia do Cognitor se deu através de um estudo de caso onde foram relatadas várias alterações que o software deveria sofrer, tais como: melhoria no editor de texto, pré-visualização das imagens que são inseridas nas páginas de conteúdo, feedback ao usuário, entre outras. Durante a reengenharia desse software, consequentemente, foi formalizado um modelo de processo de reengenharia de software, centrado no usuário, para a conversão de aplicações desktop em RIAs (Rich Internet Application), denominado UC-RIA (User Centered Rich Internet Application). Foi dado o nome de UC-RIA ao modelo de processo devido à participação dos potenciais usuários da aplicação durante o processo de reengenharia, pois estes estiveram envolvidos tanto na prototipação, quanto na validação das interfaces gráficas da nova versão. Os resultados obtidos neste trabalho mostram a potencialidade do modelo de reengenharia de software UC-RIA em ser utilizado como apoio às organizações durante a reengenharia de seus softwares, principalmente por inserir os usuários no processo de reengenharia durante a fase de Prototipação da aplicação, aproximando os softwares às reais necessidades dos usuários.
|
8 |
Recuperação de modelos de classes orientados a aspectos a partir de sistemas orientados a objetos usando refatorações de modelos.Parreira Júnior, Paulo Afonso 27 May 2011 (has links)
Made available in DSpace on 2016-06-02T19:05:51Z (GMT). No. of bitstreams: 1
3771.pdf: 2012363 bytes, checksum: beac2e75d3e67d4b8d96a9b1c3ce98ef (MD5)
Previous issue date: 2011-05-27 / Universidade Federal de Sao Carlos / Aspect-Oriented Programming allows encapsulating the so-called "Crosscutting Concerns (CCC) - software requirements whose implementation is tangled and scattered throughout the functional modules - into new abstractions, such as Aspects, Pointcuts, Advices and Inter-type Declarations. The reengineering of an OO software to an AO is not an easy task due to the existence of different abstractions in these technologies. We develop a set of nine refactorings of annotated OO class models to AO class models. In the context of this work, "annotated class models" are UML class diagrams whose elements (classes, interfaces, attributes and methods) are annotated with stereotypes representing the existing CCC in the application source code. The set of refactorings developed is divided into: i) generic refactorings; and ii) specific refactorings. Three generic refactorings and six specific refactorings to the persistence (which is divided into management and connections, transaction and synchronization) and logging concerns and to the Singleton and Observer design patterns were created. The generic refactorings are responsible for transforming an annotated OO model with indications of CCC into a partial AO model. This model is called partial because it is usually not fully modularized, i.e., there are remaining software elements stereotyped with indications of particular concerns. These refactorings are applicable to any kind of CCC; this is possible, because what is taken into consideration is the scenario in which these concerns appear in the class model. The specific refactorings are responsible for transforming partial AO models into final ones, whose CCC have been fully modularized in aspects. For that, each refactoring has a set of specific steps for modularization of a particular kind of concern. An Eclipse plug-in, called MoBRe was developed to assist the software engineer in the tasks of refactoring application. As a major contribution, the refactorings proposed in this paper allow obtaining well designed AO models. This is so because: i) they provide a step-by-step guide to the modularization of certain CCC and can avoid that software engineers choose inappropriate strategies for modularization of these CCC; and ii) they were prepared based on good design practices recommended by the scientific community. Thus, besides, the models the use of refactorings can lead to generation of better-quality code, for example, free of bad smells. A case study was conducted to assess the applicability of the proposed refactorings in order to compare an AO model generated by them with an AO model obtained from the literature. / Orientação a Aspectos (OA) permite encapsular Interesses Transversais (ITs) - requisitos de software cuja implementação encontra-se entrelaçada e espalhada pelos módulos funcionais - em novas abstrações, tais como, Aspectos, Conjuntos de Junção, Adendos e Declarações Inter-tipo. A reengenharia de um software OO para um OA não é uma atividade trivial em consequência da existência de abstrações diferentes entre as tecnologias envolvidas. Neste trabalho é proposto um conjunto de refatorações que pode ser aplicado sobre modelos de classes OO anotados com indícios de ITs para obtenção de modelos de classes OA. Modelos de classes anotados são diagramas de classes da UML cujos elementos (classes, interfaces, atributos e métodos) são anotados com estereótipos referentes aos ITs existentes no software. O conjunto de refatorações desenvolvido é subdivido em: i) refatorações genéricas; e ii) refatorações específicas. As refatorações genéricas são responsáveis por transformar um modelo OO anotado com indícios de ITs em um modelo OA parcial - modelo cujos ITs existentes não são completamente modularizados. Essas refatorações são aplicáveis a qualquer tipo de IT existente no software, considerando o cenário que esses interesses apresentam no modelo de classes. As refatorações específicas são responsáveis por transformar modelos de classes OA parciais em modelos de classes OA finais - modelos nos quais os ITs foram completamente modularizados em aspectos. Para que isso aconteça, cada refatoração possui um conjunto de passos específicos para modularização de um determinado tipo de interesse. Três refatorações genéricas e seis refatorações específicas foram elaboradas para os interesses de persistência (subdividido em: gerenciamento de conexões, de transações e sincronização), de logging e para os padrões de projeto Singleton e Observer. Um plug-in Eclipse, denominado MoBRe, foi desenvolvido para auxiliar o Engenheiro de Software na tarefa de aplicação das refatorações. Como principal contribuição, a utilização das refatorações propostas neste trabalho pode permitir a obtenção de modelos OA que representam bons projetos arquiteturais, pois: i) fornecem um guia para modularização de determinados ITs, podendo evitar que Engenheiros de Software escolham estratégias inadequadas para modularização; e ii) foram elaboradas com base em boas práticas de projeto OA preconizadas pela comunidade científica. Assim, além dos modelos a utilização das refatorações pode levar à geração de códigos de melhor qualidade, por exemplo, livre da presença de bad smells. Um estudo de caso foi conduzido para verificar a aplicabilidade das refatorações propostas e os modelos OA resultantes foram equivalentes aos modelos obtidos na literatura.
|
9 |
Uma abordagem de linhas de produtos de software para apoiar e-Science / A software product lines approach to support e-ScienceFoschiani, Fernanda Yara dos Santos, 1983- 22 August 2018 (has links)
Orientador: Cecília Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-22T06:21:21Z (GMT). No. of bitstreams: 1
Foschiani_FernandaYaradosSantos_M.pdf: 49651686 bytes, checksum: 9c6b109c2f901376bfd10d30c1ea12c3 (MD5)
Previous issue date: 2013 / Resumo: Com o aumento da demanda por software no mercado, a fim de reduzir custos e esforço em desenvolvimento e reduzir o tempo de entrega de software, diversas técnicas vêm sendo utilizadas e entre elas estão as Linhas de Produtos de Software (LPS). Por outro lado, os recursos computacionais vêm sendo muito utilizados não são na indústria, mas também em ambientes de pesquisa, facilitando o compartilhamento de dados e serviços computacionais. Este contexto, em que a computação torna-se parte integrante e fundamental para o sucesso na realização de pesquisas científicas, é chamado de e-Science. A diversidade de programas, simuladores e dados computacionais envolvidos em experimentos levam a necessidade de ambientes que forneçam facilidades para o uso e combinação das tecnologias, como por exemplo, ambientes de workflows científicos. A solução proposta nesta dissertação é uma infraestrutura para a execução de workflows científicos, que permite a pesquisadores criarem seus fluxos de trabalho de maneira personalizada, podendo utilizar componentes disponibilizados pela equipe de desenvolvimento, assim como componentes criados por eles mesmos, independentemente da linguagem de programação utilizada. A base para esta infraestrutura é uma linha de produtos baseada em componentes, desenvolvida a partir de sistemas legados. O método proposto para o desenvolvimento da linha de produtos é apoiado pelo arcabouço da Reengenharia Orientada a Características, separado em quatro fases. A primeira fase, Engenharia Reversa do Sistema Legado, extrai informações do código legado a fim de entender o domínio da aplicação e coletar as características que deverão existir na linha de produtos. A segunda fase do método, Análise da LPS, refina o modelo de características obtido na fase anterior e, utilizando técnicas de modelagem do método PLUS, desenvolve artefatos de software baseados em casos de uso. A fase de Projeto da LPS, terceira fase, aplica o método FArM para obter um mapeamento do modelo de características para modelos de arquitetura de linha de produtos baseada em componentes e especifica as interfaces dos componentes, gerando assim a arquitetura final. A quarta e ultima fase trata do desenvolvimento da linha de produtos. Para o desenvolvimento dos componentes foi utilizado o padrão COSMOS* de componentização, e código legado. Foram realizados três estudos de caso: os dois primeiros para avaliar se a solução proxi posta é capaz de substituir o sistema legado e também avaliar o reuso de componentes, e o terceiro estudo para avaliar a capacidade de customização da linha de produtos, a partir da adição de um novo componente desenvolvido em MatLab. Os três estudos apresentaram resultados positivos, indicando que a solução proposta nesta dissertação facilita a modificação da linha de produtos, além de permitir aos pesquisadores a customização de fluxos de trabalho, auxiliando assim o processo de pesquisa científica / Abstract: With the increasing demand for software in order to reduce development costs and effort, and to reduce the time-to-market, several techniques are being used, including the Software Product Line (SPL). Computational resources are commonly used in the research field, in order to facilitate data and computational services sharing. The context in which computing becomes a fundamental for the success of scientific research is called e-Science. The systems diversity, simulators and computational data involved in experiments leads to the necessity of environments that provide facilities for technology use and matching, for example the scientific workflow environment. The proposed solution in this thesis is a scientific workflow environment that allows the researchers to create their own personalized workflows, using components provided by the development team as well as components developed by themselves, regardless of the language being used. The basis for this workflow environment is a component based software product line, developed from legacy systems. The proposed method for the software product line development is supported by the Feature-oriented Reengineering framework, which is divided into four steps. The first one, SPL Reverse Engineering, extracts information about the legacy system in order to understand the application domain and collect the features that need to exist in the product line. The second step, SPL Analysis, refines the feature model obtained in the previous step and, using PLUS modeling techniques, develops software assets based on use cases. The SPL Project step, which is the third approach step, applies the FArM method to obtain a mapping of the feature model to architectural components, and specifies the components' interface, creating the final architecture. The last step is the product line development. For the components development we used the COSMOS* model and legacy code. We performed three case studies: two of them to evaluate if the product line is capable of replacing the legacy system and enhance components reuse, and the third one to evaluate the workflow customization capability, by the addition of a component developed in MatLab. All the case studies had a positive result, showing that the proposed solution of this ix thesis facilitates the product line architectures evolution and allows the researchers to customize their workflows, aiding the research process / Mestrado / Ciência da Computação / Mestra em Ciência da Computação
|
10 |
Abordagem RPN para a recuperação de processos de negócio baseada na análise estática do código fonteRabelo, Luiz Alexandre Pacini 02 September 2015 (has links)
Submitted by Izabel Franco (izabel-franco@ufscar.br) on 2016-10-03T18:14:47Z
No. of bitstreams: 1
DissLAPR.pdf: 4492395 bytes, checksum: 3cbeb71e7d3159ff9f8b260e4486c81d (MD5) / Approved for entry into archive by Marina Freitas (marinapf@ufscar.br) on 2016-10-20T19:18:44Z (GMT) No. of bitstreams: 1
DissLAPR.pdf: 4492395 bytes, checksum: 3cbeb71e7d3159ff9f8b260e4486c81d (MD5) / Approved for entry into archive by Marina Freitas (marinapf@ufscar.br) on 2016-10-20T19:18:51Z (GMT) No. of bitstreams: 1
DissLAPR.pdf: 4492395 bytes, checksum: 3cbeb71e7d3159ff9f8b260e4486c81d (MD5) / Made available in DSpace on 2016-10-20T19:18:57Z (GMT). No. of bitstreams: 1
DissLAPR.pdf: 4492395 bytes, checksum: 3cbeb71e7d3159ff9f8b260e4486c81d (MD5)
Previous issue date: 2015-09-02 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) / Over time, Business Processes have become a key asset for organizations since it allows
managing what happens within their environments. It is possible to automate some activities
of business processes resorting to the use of Information Systems and accordingly
decrease the execution time and increase the production. However, Information systems
often suffer maintenance over time and become obsolete in their technologies and a reengineering
process becomes necessary. In this case, the Business Knowledge, located more
accurately the reality in information system source code, should be mantained. Thereof, in
this work, we propose an Approach to support the Business Process Recovery from Source
Code. The approach, entitled RPN, uses a static analysis technique of source code because
it allows to analyze the source code without the need to modify and run the information
system source code. Furthermore, the approach uses the Knowledge Discovery Metamodel
(KDM) standard with a set of Heuristic rules to identify relevant code elements to the business
layer. As result, Business Process Models are generated according to Business Process
Model and Notation (BPMN) standard specification. This models, together with other software
artifacts, provide more subsidies to the Software Reengineering process. To evaluate
the proposed approach, a case study was performed in Academic Domain to measure the
effectiveness of the approach compared to the other approaches and the manual process.
The results exceeded expectations and prove that the approach is effective. / Ao longo do tempo, processos de negócio se tornaram um artefato chave para organizações,
visto que esses processos permitem gerenciar o que acontece dentro de seus ambientes.
É possível automatizar algumas atividades de processos de negócio recorrendo ao uso de
sistemas de informação e, dessa forma, diminuir o tempo de execução dessas atividades e
aumentar a produção. Entretanto, ao longo do tempo, sistemas de informação sofrem diversas
manutenções e tornam-se obsoletos em suas tecnologias e um processo de reengenharia
torna-se necessário. Nesse caso, o conhecimento do negócio, localizado mais precisamente
à realidade no código fonte do sistema de informação, deve ser mantido. Por este motivo,
este trabalho propõe uma abordagem para apoiar a recuperação de processos de negócio a
partir do código fonte. A abordagem, nomeada RPN, recorre à técnica de análise estática
do código fonte, uma vez que essa técnica permite analisar o código fonte de um sistema
sem a necessidade de modificá-lo e executá-lo. Além disso, a abordagem utiliza o padrão
Knowledge Discovery Metamodel (KDM) com um conjunto de regras de heurísticas para
recuperar elementos de código relevantes à camada de negócio. Como resultado, são gerados
modelos de processos de negócio de acordo com a especificação padrão Business
Process Model and Notation (BPMN). Esses modelos, em conjunto com outros artefatos de
software, fornecem maiores subsídios para o processo de reengenharia de software. Para
avaliar a abordagem proposta, foi realizado um estudo de caso no domínio acadêmico para
mensurar a eficácia da abordagem comparado às outras abordagens e ao processo manual.
Os resultados obtidos foram satisfatórios e a abordagem RPN mostrou-se muito eficaz e
eficiente para executar seu propósito.
|
Page generated in 0.0981 seconds