• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 48
  • 30
  • 2
  • 1
  • Tagged with
  • 90
  • 90
  • 22
  • 19
  • 18
  • 17
  • 15
  • 14
  • 13
  • 13
  • 13
  • 12
  • 12
  • 10
  • 10
  • 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.
31

Especificação formal de uma ferramenta de reutilização de especificações de requisitos / Formal specification of a requirements reuse tool

Pimenta, Alexandre January 1998 (has links)
A Engenharia de Software vem, ao longo das últimas décadas, merecendo cada vez mais atenção da comunidade cientifica. A capacidade de construir software com qualidade, dentro dos prazos e orçamentos, atendendo a demanda do mercado, um dos objetivos almejados pelas pesquisas nesta área. Dentro deste contexto, os Métodos Formais e a Reutilização de Software tem sido utilizados para aumentar a qualidade e a produtividade de Software. Os métodos formais possibilitam o desenvolvimento e a verificação de software através de uma notação matemática rigorosa. Este rigor matemático permite que aspectos de consistência, completeza e exatidão possam ser avaliados sistematicamente. Para serem consistentes, fatos declarados em uma especificação não devem ser contraditos em outro lugar. A consistência é garantida matematicamente, provando que fatos iniciais podem ser formalmente traçados (usando-se regras de inferência). A reutilização de software a uma técnica de aproveitamento de informações produzidas durante desenvolvimentos de software anteriores, com o objetivo de reduzir o esforço necessário para o desenvolvimento de um novo sistema. 0 pressuposto básico da reutilização é produzir sistemas de maior qualidade e confiabilidade de forma mais produtiva. Assim, a produtividade é aumentada a medida que soluções de problemas anteriores podem ser aproveitadas para resolver novos problemas. Existe uma tendência de explorar a reutilização nas fases iniciais do desenvolvimento de software. Esta tendência se justifica pela grande importância dada a estas fases. Entretanto, os produtos das fases iniciais são fortemente relacionados com o domínio da aplicação, fazendo com que a reutilização de especificações, de modelos de requisitos ou estratégias de projeto só possa ser realizada com sucesso entre aplicações da mesma família, ou seja, aplicações que compartilhem requisitos e restrições. A noção de domínio é, pois, fundamental a reutilização nas fases iniciais. Um trabalho importante nesta área é o de Maiden, que pesquisou a analogia como um paradigma para reutilização de especificações de requisitos, e identificou 22 domínios abstratos representados por um conjunto de predicados. Este trabalho esta inserido no projeto PROSOFT, que a um ambiente de desenvolvimento de software construído no Grupo de Sistemas de Informação do CPGCC/UFRGS sob a coordenação do Prof. Dr. Daltro Jose Nunes e tem como objetivo apoiar o engenheiro de software desde a analise de requisitos ate a implementação do programa utilizando métodos formais. Ambientes de desenvolvimento de software que se propõem a ajudar o engenheiro de software não podem desprezar o potencial da reutilização, visto que esta técnica oferece condição de se produzir software com mais qualidade de forma mais produtiva Na atual fase de desenvolvimento do PROSOFT, não existe um modelo de reutilização. Se um usuário desejar construir um novo sistema, o ambiente não apresenta suporte para auxiliá-lo na localização e recuperação de especificações de requisitos já implementadas que poderiam ser adaptadas a uma nova solução. Portanto este trabalho tem como objetivo apresentar e especificar formalmente uma ferramenta de reutilização de requisitos para o ambiente PROSOFT. O modelo de reutilização de requisitos desenvolvido por Maiden, "reutilização de especificá-lo de requisitos por analogia" , foi utilizado como referência. / During the last decades Software Engeneering has caught the attention of the scientific community. The ability to develop Software with quality, in the time and cost estimated according to the marketing, is one of the desired goals in this research area. In this context, Formal Methods and Software Reuse have been used to improve Software's quality. Formal Methods enables the software development and verification through a rigorous mathematical notation. This mathematical rigidity allows the systematic assessment of aspects like consistency, completion and correction. The consistency is mathematicaly guaranteed, proving that initial facts are formaly traced (using inference rules). Software Reuse is a technique for making good use of the information produced in previous developments, with the purpose of reducing the efforts to develop new sytems . The basic goal in reusing is to produce systems with higher quality and robustness in a more efficient fashion. There is a tendency to explore the reuse in the initial phases of software development. This is justified by the great importance given to these phases. Nevertheless, the products of the initial phases are strongly related to the application domain, causing the specifications, requirements model or projects strategies reuse succeed only with applications of the same class, that is, applications sharing requirements and restrictions. The notion of domain is fundamental for reusability of software in the initial phases. An important work in this area is Maiden's doctoral thesis, which presents the research of the analogy as a paradigm of requirements specifications reusability , and the identification of 22 abstract domains represented by a predicate set. This work is part of the PROSOFT project, a software development environment built by the CPGCC/UFRGS Information Systems Group, with the purpose of supporting the software engineer, from the requirements analysis to the program implementation using formal methods. Software development environments that propose to help the software engineer cannot ignore the potential for reuse, as this technique offers conditions to produce higher quality software in a more productive way. In the PROSOFT's current development, there is no reuse model. If the user wants to build a new system, the environment does not have any support to help him/her in the identification and recovery of requirements specifications that could be adjusted to the new solution. Hence this work has the purpose of presenting and formaly specifying a requirement reuse tool for the PROSOFT environment. Maiden's requirement reuse model "Analogical Requirement Specification Reuse" was used as reference.
32

Improving reusability with Web Services

Persson, Anders January 2006 (has links)
This master’s thesis discusses the evolution of DataPartner’s application "Inventera". Inventera is designed to do inventory of stock on handheld computers and integartes with SPCS Administration. Inventera is enhanced with a wireless connection and the SPCS API is wrapped with Web Services. The theoretical part of this thesis examines diffrent possibilities to increase reusability by using web service technology when developing software. A case study of the SPCS API is used in order to study differences between using no Web Services at all, static web services or dynamic web services.
33

Especificação formal de uma ferramenta de reutilização de especificações de requisitos / Formal specification of a requirements reuse tool

Pimenta, Alexandre January 1998 (has links)
A Engenharia de Software vem, ao longo das últimas décadas, merecendo cada vez mais atenção da comunidade cientifica. A capacidade de construir software com qualidade, dentro dos prazos e orçamentos, atendendo a demanda do mercado, um dos objetivos almejados pelas pesquisas nesta área. Dentro deste contexto, os Métodos Formais e a Reutilização de Software tem sido utilizados para aumentar a qualidade e a produtividade de Software. Os métodos formais possibilitam o desenvolvimento e a verificação de software através de uma notação matemática rigorosa. Este rigor matemático permite que aspectos de consistência, completeza e exatidão possam ser avaliados sistematicamente. Para serem consistentes, fatos declarados em uma especificação não devem ser contraditos em outro lugar. A consistência é garantida matematicamente, provando que fatos iniciais podem ser formalmente traçados (usando-se regras de inferência). A reutilização de software a uma técnica de aproveitamento de informações produzidas durante desenvolvimentos de software anteriores, com o objetivo de reduzir o esforço necessário para o desenvolvimento de um novo sistema. 0 pressuposto básico da reutilização é produzir sistemas de maior qualidade e confiabilidade de forma mais produtiva. Assim, a produtividade é aumentada a medida que soluções de problemas anteriores podem ser aproveitadas para resolver novos problemas. Existe uma tendência de explorar a reutilização nas fases iniciais do desenvolvimento de software. Esta tendência se justifica pela grande importância dada a estas fases. Entretanto, os produtos das fases iniciais são fortemente relacionados com o domínio da aplicação, fazendo com que a reutilização de especificações, de modelos de requisitos ou estratégias de projeto só possa ser realizada com sucesso entre aplicações da mesma família, ou seja, aplicações que compartilhem requisitos e restrições. A noção de domínio é, pois, fundamental a reutilização nas fases iniciais. Um trabalho importante nesta área é o de Maiden, que pesquisou a analogia como um paradigma para reutilização de especificações de requisitos, e identificou 22 domínios abstratos representados por um conjunto de predicados. Este trabalho esta inserido no projeto PROSOFT, que a um ambiente de desenvolvimento de software construído no Grupo de Sistemas de Informação do CPGCC/UFRGS sob a coordenação do Prof. Dr. Daltro Jose Nunes e tem como objetivo apoiar o engenheiro de software desde a analise de requisitos ate a implementação do programa utilizando métodos formais. Ambientes de desenvolvimento de software que se propõem a ajudar o engenheiro de software não podem desprezar o potencial da reutilização, visto que esta técnica oferece condição de se produzir software com mais qualidade de forma mais produtiva Na atual fase de desenvolvimento do PROSOFT, não existe um modelo de reutilização. Se um usuário desejar construir um novo sistema, o ambiente não apresenta suporte para auxiliá-lo na localização e recuperação de especificações de requisitos já implementadas que poderiam ser adaptadas a uma nova solução. Portanto este trabalho tem como objetivo apresentar e especificar formalmente uma ferramenta de reutilização de requisitos para o ambiente PROSOFT. O modelo de reutilização de requisitos desenvolvido por Maiden, "reutilização de especificá-lo de requisitos por analogia" , foi utilizado como referência. / During the last decades Software Engeneering has caught the attention of the scientific community. The ability to develop Software with quality, in the time and cost estimated according to the marketing, is one of the desired goals in this research area. In this context, Formal Methods and Software Reuse have been used to improve Software's quality. Formal Methods enables the software development and verification through a rigorous mathematical notation. This mathematical rigidity allows the systematic assessment of aspects like consistency, completion and correction. The consistency is mathematicaly guaranteed, proving that initial facts are formaly traced (using inference rules). Software Reuse is a technique for making good use of the information produced in previous developments, with the purpose of reducing the efforts to develop new sytems . The basic goal in reusing is to produce systems with higher quality and robustness in a more efficient fashion. There is a tendency to explore the reuse in the initial phases of software development. This is justified by the great importance given to these phases. Nevertheless, the products of the initial phases are strongly related to the application domain, causing the specifications, requirements model or projects strategies reuse succeed only with applications of the same class, that is, applications sharing requirements and restrictions. The notion of domain is fundamental for reusability of software in the initial phases. An important work in this area is Maiden's doctoral thesis, which presents the research of the analogy as a paradigm of requirements specifications reusability , and the identification of 22 abstract domains represented by a predicate set. This work is part of the PROSOFT project, a software development environment built by the CPGCC/UFRGS Information Systems Group, with the purpose of supporting the software engineer, from the requirements analysis to the program implementation using formal methods. Software development environments that propose to help the software engineer cannot ignore the potential for reuse, as this technique offers conditions to produce higher quality software in a more productive way. In the PROSOFT's current development, there is no reuse model. If the user wants to build a new system, the environment does not have any support to help him/her in the identification and recovery of requirements specifications that could be adjusted to the new solution. Hence this work has the purpose of presenting and formaly specifying a requirement reuse tool for the PROSOFT environment. Maiden's requirement reuse model "Analogical Requirement Specification Reuse" was used as reference.
34

Cores assets development in software product lines - towards a practical approach for the mobile game domain

Nascimento, Leandro Marques do 31 January 2008 (has links)
Made available in DSpace on 2014-06-12T15:51:50Z (GMT). No. of bitstreams: 1 license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5) Previous issue date: 2008 / Os mais almejados objetivos da engenharia de software são basicamente alta produtividade, com alta qualidade a um baixo custo e uma possível forma de atingi-los é estabelecer reuso de software o processo de criar sistemas de software a partir de sistemas existentes ao invés de criar do início. Neste contexto, uma abordagem que pode habilitar reuso na prática é Linha de Produto de Software (LPS) um conjunto de sistemas de software que compartilham um conjunto comum e gerenciado de funcionalidades que satisfazem uma necessidade específica de um domínio, e que são desenvolvidas a partir de um conjunto de artefatos reusáveis. Um domínio em particular onde a adoção de tal abordagem pode trazer benefícios é o domínio de jogos móveis principalmente porque os jogos precisam executar em diversos dispositivos e existe uma grande quantidade de jogos do mesmo tipo sendo desenvolvidos com funcionalidades em comum. Entretanto, as características do domínio de jogos móveis geralmente criam barreiras para os processos de LPS na prática, tais como, restrições de memória e de tamanho da aplicação e diferentes implementações de API feitas por diferentes fabricantes. Além disso, os atuais processos de LPS ainda carecem de detalhes em fases relacionadas à implementação de artefatos reusáveis, dificultando a administração apropriada das características mencionadas. Dessa forma, este trabalho objetiva definir uma abordagem prática para implementação de artefatos reusáveis em uma LPS para o domínio de jogos móveis com base nas boas práticas do estado da arte na área. Além disso, com a intenção de avaliar a abordagem, um estudo experimental foi executado com três jogos de plataforma para construir a LPS e um quarto jogo foi derivado dela
35

Extending the riple-design process with quality attribute variability realization

Cavalcanti, Ricardo de Oliveira 31 January 2010 (has links)
Made available in DSpace on 2014-06-12T15:58:11Z (GMT). No. of bitstreams: 2 arquivo3303_1.pdf: 1930482 bytes, checksum: 5203b90b2f2248bb0739907c03b9a717 (MD5) license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5) Previous issue date: 2010 / Reúso de software é uma forma viável de obter ganhos de produtividade e melhoria no timeto- market tão desejados pelas empresas. O reúso não sistemático (Ad hoc) pode ser prejudicial, uma vez que a reutilização de artefatos de baixa qualidade pode diminuir a qualidade dos produtos finais. O reúso sistemático através da adoção de Linhas de Produto de Software (LPS) é uma boa alternativa para alcançar metas de qualidade e de redução de custos. Essa abordagem se tornou uma solução efetiva para gerar vantagem competitiva para as empresas. Arquiteturas de linhas de produto devem se beneficiar das comunalidades entre os produtos e possibilitar a variabilidade entre eles. Ao mesmo tempo, como uma arquitetura de software, precisa atender requisitos de atributos de qualidade. O desafio de atender atributos de qualidade em sistemas únicos (single systems) torna-se ainda mais complicada no contexto de linhas de produto porque a variabilidade pode ocorrer também nos atributos de qualidade. A variabilidade em atributos de qualidade é uma questão complexa. Entretanto, ela tem sido negligenciada ou ignorada pela maioria dos pesquisadores, uma vez que as atenções têm se mantido no alcance da variabilidade funcional. O foco deste trabalho é definir um processo para o design de arquiteturas de linhas de produto de software que possa lidar de forma eficaz com variabilidade em atributos de qualidade. O processo aprimora o RiPLE-Design com atividades e guias para o design com variabilidade de atributos de qualidade. Por fim, um estudo experimental é apresentado com o intuito de caracterizar e avaliar as melhorias propostas ao processo
36

Using multiple case studies to understanding the product derivation process in industrial settings

Souza, Leandro Oliveira de 31 January 2011 (has links)
Made available in DSpace on 2014-06-12T16:00:54Z (GMT). No. of bitstreams: 2 arquivo7075_1.pdf: 5003439 bytes, checksum: 070d65264679c7bfd03fc912be7cc61f (MD5) license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5) Previous issue date: 2011 / A indústria de software tem sido cada vez mais desafiada a melhorar suas praticas de engenharia com o objetivo de oferecer produtos de forma mais rápida e confiável. Assim, as práticas de desenvolvimento de software sofreram significativas mudanças nos últimos anos, uma vez que novas e acessíveis estratégias tem sido aplicadas de forma a alcançar tal desafio. Neste contexto, Engenharia de Linhas de Produto de Software surgiu como uma estratégia de engenharia de software destinada a fornecer à indústria oportunidades para alcançar os objetivos de negócio acima mencionados. No entanto, para garantir o retorno do investimento com uma abordagem de Linhas de Produto de Software, um processo de derivação de produtos bem definido é muito importante. Sem esse processo, os produtos podem ser instanciados de maneira não sistemática, aumentando o tempo e o custo de produção. Por outro lado, mesmo com esta relevância, quando comparado com a grande quantidade de pesquisas em desenvolvimento sobre linhas de produtos, relativamente poucos trabalhos tem sido dedicados ao processo de Derivação de Produtos. Alêm disso, ainda existem poucos relatórios disponíveis sobre como as organizações de desenvolvimento de software derivam seus produtos a partir de uma linha de produtos, e, em geral, os existentes têm sido realizados como estudos informais, sem rigor científico suficiente, tornando difícil a sua repetição e validação. Assim, esta dissertação tem como objetivo obter uma melhor compreensão sobre como derivação do produto é realizada e quais práticas são utilizadas na indústria. Reunimos descobertas através de dois estudos de caso realizados na indústria. Alem disso, as evidências obtidas a partir dos estudos de caso, foram comparados entre os casos através da análise Cross-case, com o objetivo de identificar padrões entre eles. A definição do estudo e relatório foram estruturados com base nas diretrizes consolidadas para estudos empíricos de acordo com orientações bem definidas, o que permite a replicação dos estudos e extensão
37

SPLMT-TE: a software product lines system test case tool

Lima Neto, Crescencio Rodrigues 31 January 2011 (has links)
Made available in DSpace on 2014-06-12T16:01:17Z (GMT). No. of bitstreams: 2 arquivo7562_1.pdf: 3512712 bytes, checksum: d7dd3b157b1e7c89309ff683efdc8a2f (MD5) license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5) Previous issue date: 2011 / Atualmente a decisão de trabalhar, ou não, com Linhas de Produtos de Software (LPS) se tornou um requisito obrigatório para o planejamento estratégico das empresas que trabalham com domínio específico. LPS possibilita que as organizações alcancem reduções significativas nos custos de desenvolvimento e manutenção, melhorias quantitativas na produtividade, qualidade e satisfação do cliente. Por outro lado, os pontos negativos em adotar LPS são demanda extra de investimentos para criar os artefatos reusáveis, fazer mudana¸s organizacionais, etc. Além disso, teste é mais complicado e crítico em linhas de produtos do que em sistemas simples. Porém, continua sendo a forma mais efetiva para garantia de qualidade em LPS. Por isso, aprender a escolher as ferramentas certas para teste em LPS é um benefício que contribui pra redução de alguns desses problemas enfrentados pelas empresas. Apesar do crescente número de ferramentas disponíveis, teste em LPS ainda necessita de ferramentas que apoiem o nível de teste de sistema, gerenciando a variabilidade dos artefatos de teste. Neste contexto, este trabalho apresenta uma ferramenta de teste de linhas de produtos de software para construir testes de sistema a partir dos casos de uso que endereçam desafios para teste em LPS identificados na revisão literária. A ferramenta foi desenvolvida com o intuito de reduzir o esforço necessário para realizar as atividades de teste no ambiente de LPS. Além disso, esta dissertação apresenta um estudo exploratório sistemático que tem como objetivo investigar o estado da arte em relação a ferramentas de teste, sintetizando as evidências disponíveis e identificar lacunas entre as ferramentas, disponíveis na literatura. Este trabalho também apresenta um estudo experimental controlado para avaliar a eficácia da ferramenta proposta
38

Bellatrix : um ambiente para suporte arquitetural ao desenvolvimento baseado em componentes / Bellatrix : an environment for providing architectural support to component-based development

Tomita, Rodrigo Teruo 28 July 2006 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-07T08:32:32Z (GMT). No. of bitstreams: 1 Tomita_RodrigoTeruo_M.pdf: 1541819 bytes, checksum: d7021974c65c2128adcf055870fd8c95 (MD5) Previous issue date: 2006 / Resumo: O desenvolvimento baseado em componentes (DBC), que se baseia na construção de software através da integração planejada de componentes reutilizáveis, tem conquistado ampla aceitação para o desenvolvimento de sistemas de software. O desenvolvimento centrado na arquitetura de software _e complementar ao DBC, com a responsabilidade pela integração dos componentes de forma que atributos de qualidade, como confiabilidade e distribuição, desejados para o sistema final sejam obtidos. Assim, processos de DBC também devem ser centrados na arquitetura de software, possibilitando um maior grau de abstração, organização, manutenibilidade e reuso. Para possibilitar a automatização de tarefas e aumentar a produtividade no uso dos conceitos de arquitetura de software e DBC, são necessárias ferramentas que apóiem atividades de arquitetos e desenvolvedores de software. Os ambientes integrados de desenvolvimento existentes atualmente apóiam, em geral, a modelagem UML e a implementação de componentes e de sistemas orientados a objetos. Entretanto, eles não apóiam a prática de modelagem de arquiteturas de componentes e DBC. Ferramentas para modelagem de arquiteturas de software existentes não dão suporte ao mapeamento da arquitetura para código, possuem um foco específico na modelagem e não são apoiadas por um processo de desenvolvimento. Nesse trabalho é proposto o ambiente Bellatrix, um ambiente integrado de desenvolvimento que apóia o DBC com ênfase na arquitetura de software e estende o ambiente integrado de desenvolvimento Eclipse. O ambiente pode ser usado em conjunto com um processo de DBC e utiliza o COSMOS, um modelo de implementação de componentes que faz o mapeamento dos conceitos de arquiteturas de software para linguagens de programação orientadas a objetos. Este trabalho se concentra na especificação e projeto do ambiente Bellatrix, partindo de seus requisitos e protótipos de interface com usuário. Seus principais componentes foram especificados, bem como um modelo de implementação dos mesmos, integrando o modelo COSMOS ao ambiente Eclipse. Uma primeira implementação do ambiente contendo suas principais funcionalidades foi desenvolvida / Abstract: Component-based development (CBD), which is based on the assembly of software systems through planned integration of reusable components, is gaining wide acceptance for developing software systems. Software architecture centric development complements the CBD paradigm because it is responsible for the component integration, achieving the final system's desired quality requirements, such as dependability and distribution. Thus, CBD processes should also be software architecture centric, promoting a higher abstraction level, system organization, maintainability, and reuse. In order to allow tasks automation and increase the productivity in using software architecture and CBD concepts, tools that support architects and software developers are needed. Most of the existing integrated development environments support UML modeling, object-oriented and component implementation. However, many of them do not support the practice of component architecture and CBD modeling. Existing software architecture modeling tools lack the ability to translate the architecture to code, have a specific focus on modeling, and are not guided by a development process. In this work, we describe the Bellatrix environment, an integrated development environment that supports CBD with emphasis on software architecture and extends the Eclipse integrated development environment. The proposed environment can be guided by a CBD process and uses COSMOS, a component implementation model that materializes the elements of a software architecture using the concepts available in object-oriented programming languages. This work focuses on the general description of Bellatrix, starting from its requirements and user interface prototypes. Its main components has been specified, as well as an implementation model integrating the COSMOS model with the Eclipse environment. An initial version containing basic functionalities has been developed. / Mestrado / Sistemas de Informação / Mestre em Ciência da Computação
39

Uma infra-estrutura de suporte a evolução para repositorios de componentes / An infrastructure to support evolution in component repositories

Tizzei, Leonardo Pondian, 1980- 03 February 2007 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas,Instituto de Computação / Made available in DSpace on 2018-08-08T19:35:35Z (GMT). No. of bitstreams: 1 Tizzei_LeonardoPondian_M.pdf: 1173368 bytes, checksum: dd09b9de9a47db9f4f82b8f63dcf35a7 (MD5) Previous issue date: 2007 / Resumo: No contexto do Desenvolvimento Baseado em Componentes(DBC), o elo de ligação entre desenvolvedores e consumidores de componentes de software são os repositórios de componentes, onde eles são adicionados por seus desenvolvedores e recuperados pelos integradores de sistemas. Considerando um cenário de evolução, onde componentes são modificados, são imprescindíveis modelos de evolução de componentes para definir uma abordagem sistemática de mudanças. Elas podem ocorrer, por exemplo, na especificação ou implementação de um componente e o repositório de componentes deve dar apoio à evolução uma vez que ela é parte inerente do processo de desenvolvimento de software. Contudo, assim como o software, modelos de evolução são modificados para acompanhar o desenvolvimento tecnológico e as necessidades de seus usuários. Além disso, diferentes produtores de componentes podem possuir modelos distintos. Este trabalho apresenta uma infra-estrutura de suporte à evolução em um repositório de componentes, para apoiar serviços de DBC, como a conversão de componentes para outros modelos de implementação, extração de metainformação de código-fonte de componentes, evolução de componentes e verificação de modelos de implementação de componentes. No caso particular desta dissertação, o repositório de componentes escolhido é o Rigel, que foi estendido para dar suporte à evolução de componentes. O repositório Rigel oferece as condições necessárias para adoção de um modelo de evolução de componentes, através da utilização de um padrão de metadados de componentes chamado RAS. Ferramentas de software ajudam a aumentar a produtividade de desenvolvedores e evitar tarefas repetitivas. Além disso, atividades de modificação são sujeitas a erros humanos. Portanto, foram desenvolvidas quatro ferramentas para dar suporte ao modelo de evolução SACE e ao modelo de implementação de componentes COSMOS. As ferramentas foram construÍdas com base em um framework de componentes baseado em regras que usa um motor de inferência chamado Drools. Este framework de componentes externaliza as regras da aplicação, garatindo uma maior modificabilidade, característica que é essencial para que as ferramentas possam evoluir em conformidade com os modelos apóiam / Abstract: In the Component-Based Development (CBD), the link between software component developers and consumers are component repositories where software components are checkedin by their developers and checked-out by their systems integrators. Considering an evolution scenario, when components are modified, it is essential component evolution models in order to define a systematic approach to component changes. These modifications can occur, for instance, in the component specification and implementation, and component repositories should support these kind of evolutions. However, component evolution models themselves can be modified to follow technological development and different user's needs. Furthermore, different component producers may also have distinct models. This work presents an infrastructure to support evolution in component repositories, to support various CBD services, such as component conversion to other implementation models, extraction of metainformation from the source code of components, component evolution and check implementation models. Particularly, in this work, the component reposítory chosen was Rigel (developed at IC-UNICAMP), which was extended to support component evolution. The Rigel repository provides necessary conditions to adopt a component evolution model, by using an extensibIe component metadata pattern called RAS specification. Software tools heIp to increase developer's productivity and to avoid repetitive tasks. Furthermore, human modification activities are error prone. Therefore, we have developed four tools to support the SACE evolution model and the COSMOS component implementation model. These tools were developed using a rule-based framework which is based on an inference engine called Drools. This component framework is important to externalize the application rules, to guarante a greater modifiability, which is essential for the evolution of the tools in conformity with the models they support / Mestrado / Mestre em Ciência da Computação
40

Towards a Mobile Learning Software Ecosystem

Pettersson, Oskar January 2011 (has links)
The ability to carry communication services around, combined with the ubiquitous presence of computing technology, affects everything we do from how we pay for things to how we expect to interact with public institutions such as schools. There are now plenty of systems that convey education by utilizing mobile devices. As an extension of technology moving towards ubiquity, there are efforts aiming to bring this to an educational use as well. Efforts in this direction are channelized in the field of mobile learning. The speed of technological development, and the possibilities it brings introduces a large number of challenges when implemented in educational settings. These challenges can be related to for example pedagogical aspects, tools, implementations and organizations. Recent developments including the notions of learning ecosystems, learning landscapes and organizations suggest that the domain of mobile learning can be negatively affected from the lack of a systematic reuse approach. This thesis pursues these challenges by investigating how systematic reuse can be promoted in mobile learning systems. A collection of five peer-reviewed publications that elaborates on the different stages of the research process pursuing the main research question forms the core of this thesis. This research process includes a survey stage, elaborating on different aspects related to reuse and mobile learning, an analysis stage that resulted in a descriptive model and several additional domain models; and finally a stage where the descriptive model is refined into a reference model for mobile learning ecosystems. The outcomes of these activities and the analysis of these results provide some fundamental building blocks regarding how to approach the challenge of reuse in mobile learning systems. The proposed reference model can be considered as the first step towards the creation of a common vocabulary that can be used to compare Software Ecosystems within the domain of mobile learning.

Page generated in 0.1619 seconds