Spelling suggestions: "subject:"productline"" "subject:"productlines""
81 |
JIndie: uma abordagem baseada no reuso de software e linha de produto de software para jogos construcionistas / JIndie: an approach based on software reuse and software product line for construcionists gamesLessa Filho, Carlos Alberto Correia 06 September 2016 (has links)
The education in Brazil shows a deficiency in the quality of teaching, so that many teachers and businessmen realize that students that complete the basic education are not ready to assume their role in society yet. One of the factors contributing to the low quality of education, according Papert, can be seen in the break of the incentive to search for new knowledge, which usually occurred when the student starts to go to school. A strategy adopted to motivate the student to search for new knowledge occurs through of constructionism, in which to learn about a particular content, the student needs to create some concrete material. The development of these concrete material may become easier through the use of computers and games that provide a virtual world in which the player has all the tools necessary to create an artifact about the subject studied. To facilitate the development of these games, which often fail to be completed due to the effort invested, the developers can use a Software Product Line, which is a software intensive production system for a particular domain. This paper presents an approach and the JIndie Software Product Line that aims to be a Software Product Line for developing constructionist games. To validate Software Product Line proposed in this work, a case study was carried out with the production of four games to assess the feasibility to implement constructionist games using JIndie, as well as to evaluate the performance and tools used in the process. The case study reveals a satisfactory result in game development capabilities, as well as a production with low complexity and effort by the game developer. / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / A educação no Brasil apresenta uma deficiência na qualidade de ensino, de forma que muitos professores e empresários sentem que os estudantes, ao se formarem ainda não estão prontos para assumir seu papel na sociedade. Um dos fatores que contribuem para a baixa qualidade do ensino, segundo Papert, pode ser observado na quebra do incentivo a busca de novos conhecimentos, ocorrida quando o estudante entra no colégio. Uma estratégia adotada para motivar o estudante buscar a novos conhecimentos ocorre através do construcionismo, no qual, o estudante para aprender sobre um determinado conteúdo por completo, necessita criar conteúdo concreto sobre o assunto estudado. O desenvolvimento desses conteúdos concretos pode se tornar mais fácil através do uso do computador e com jogos que permitem representar um mundo virtual no qual o jogador tenha todas as ferramentas necessárias para ter a liberdade de criar de sua forma um artefato concreto sobre o assunto estudado. Para facilitar o desenvolvimento desses jogos, que muitas vezes não chegam a ser concluídos devido ao esforço investido, pode-se optar pelo uso de uma Linha de Produto de Software, que se trata de um sistema de produção intensivo de softwares de um determinado domínio. Este trabalho apresenta uma abordagem e produção de uma Linha de Produto de Software, JIndie, que tem como objetivo ser uma Linha de Produto de Software para produção de jogos construcionistas. Para a avaliação da Linha de Produto proposta no trabalho, um estudo de caso foi realizado com a produção de quatro jogos com a finalidade de avaliar a viabilidade de desenvolver jogos construcionistas através do JIndie, como também avaliar o desempenho e as ferramentas utilizadas no processo. Os resultados do estudo de caso revelaram um feito satisfatório na capacidade de desenvolvimento dos jogos, como também uma produção com baixa complexidade e esforço por parte do desenvolvedor dos jogos.
|
82 |
Maintaining systems-of-systems fit-for-purpose : a technique exploiting material, energy and information source, sink and bearer analysisHinsley, Steven W. January 2017 (has links)
Across many domains, systems suppliers are challenged by the complexity of their systems and the speed at which their systems must be changed in order to meet the needs of customers or the societies which the systems support. Stakeholder needs are ever more complex: appearing, disappearing, changing and interacting faster than solutions able to address them can be instantiated. Similarly, the systems themselves continually change as a result of both external and internal influences, such as damage, changing environment, upgrades, reconfiguration, replacement, etc. In the event of situations unforeseen at design time, personnel (for example maintainers or operators) close to the point of employment may have to modify systems in response to the evolving situation, and to do this in a timely manner so that the system and/or System-of-Systems (SoS: a set of systems that have to interoperate) can achieve their aims. This research was motivated by the problem of designing-in re-configurability to the constituent systems of a SoS to enable the SoS and its systems to effectively and efficiently counter the effects of unforeseen events that adversely affect fitness-for purpose whilst operational. This research shows that a SoS does not achieve or maintain fitness-for-purpose because it cannot implement the correct, timely and complete transfer of Material, Energy and Information (MEI) between its constituents and with its external environment that is necessary to achieve a desired outcome; i.e. the purpose.
|
83 |
An investigation into the application of systematic software reuse in a project-centric organisationChapman, Mark Jonathon 31 January 2007 (has links)
The software development continues to become more competitive and demanding, placing pressure on developers. Changes in the international political climate have resulted in shrinking military budgets, putting developers of defence software under further pressure. At present, systematic reuse is probably the most realistic way of addressing this pressure by improving software development productivity and quality. Software product line (SPL) engineering provides a comprehensive approach to systematic software reuse and is becoming widely accepted.
The focus of this interpretive case study was ground station software development in a small multidisciplinary project-centric company which produces avionics systems for military aircraft. The purpose of the study was to investigate the potential implementation of systematic software reuse in the company.
The study consisted of three phases, a literature study, a contextualisation and a set of field interviews, and used elements of the Carnegie-Mellon Software Engineering Institute (SEI) Product Line Practice Framework to examine the suitability of SPL engineering for the company.
The findings of the study highlight the potential challenges that SPL engineering poses for the company, and emphasise how the company's project-centric structure could impede its implementation of systematic software reuse. / Computing / M.Sc. (Information Systems)
|
84 |
UbiComSPL : desenvolvimento baseado em MDA, de linha de produto de software no domínio de aplicações ubíquasOliveira, Raphael Pereira de 03 July 2009 (has links)
Made available in DSpace on 2016-06-02T19:05:38Z (GMT). No. of bitstreams: 1
2623.pdf: 2743696 bytes, checksum: cc0c40ac7065c499f2cd408b70711f1d (MD5)
Previous issue date: 2009-07-03 / Financiadora de Estudos e Projetos / This thesis presents an approach to Development based on Model-Driven Architecture, of Ubiquitous Applications Domain Software Product Lines. The approach uses Model-Driven Architecture to facilitate the modeling reuse of the same application in different architectures of the Ubiquitous Computing. With focus in the problem domain, the Software Product Lines core is developed and it is reused in the products construction. One of the assets that composed the Software Product Lines is the Ubiquitous Computing Framework, developed to attend the non functional requirements of Ubiquitous Computing. The CASE tool, called MVCASE, makes automatic part of the activities in the proposed approach. / Essa dissertação apresenta uma Abordagem para Desenvolvimento baseado em Model-Driven Architecture, de Linha de Produto de Software orientada a domínios de Aplicações Ubíquas. A abordagem utiliza a Model-Driven Architecture para melhor atender as diversidades de arquiteturas da Computação Ubíqua e facilitar o reuso. Com foco no domínio do problema, desenvolve-se o Core Asset, núcleo da Linha de Produto de Software, que é reutilizado na construção dos produtos derivados da linha. Um dos artefatos do Core Asset é Ubiquitous Computing Framework construído para atender os requisitos não funcionais da Computação Ubíqua. Uma ferramenta CASE, denominada MVCASE, automatiza grande parte do processo da Model-Driven Architecture, desde a modelagem até a geração parcial de código.
|
85 |
Multi-MOM : um middleware multi-paradigma, extensível e orientado a mensagens para computação móvelBezerra, Yuri Morais 16 August 2010 (has links)
Made available in DSpace on 2015-05-14T12:36:56Z (GMT). No. of bitstreams: 1
arquivototal.pdf: 2305795 bytes, checksum: 0e634264f2c488a816479aec2da0cc18 (MD5)
Previous issue date: 2010-08-16 / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Advances in wireless communication technologies and miniatuziation of mobile devices are leading to great opportunities in the development of applications to explore this new computing frontier. However, the development of applications for such scenarios introduces new challenges, as mobile applications run on resouce-scarce devices and communicate with each other by means of wireless networks, which are characterized by intermittent connections. In order to avoid having to deal with such issues in an ad hoc fashion for every application, middleware platforms are adopted, concealing difficulties raised by mobility from application engineers as much as possible. Due to the asynchronous and loosely coupled communication style, Message-oriented Middleware (MOM) platforms have been commonly adopted for supporting the development of networked mobile applications. However, one of the most significant limitations of current MOM for mobile platforms is that they typically support a single, predefined communication paradigm (e.g., publish/subscribe). Such a restriction limits the scope of applications supported by the middleware. In order to mitigate such a limitation, this paper presents a middleware for mobile devices capable of supporting an extensible set of message-oriented communication paradigms (e.g. tuple spaces, message queue, publish/subscribe). Supported by an integrated architecture, which has been conceived based on a Software Product Line (SPL) approach, the middleware encapsulates common features that deal with mobility issues and provides them as shared, reusable components. Evaluation results show that the overhead introduced by such a multi-paradigm approach is minimal, both in memory footprint and runtime performance. Additionally, an application scenario illustrates how mobile applications may benefit from such an approach. / Os avanços nas tecnologias de comunicação sem fio e a miniaturização dos dispositivos móveis de alta capacidade estão trazendo grandes oportunidades para o desenvolvimento de aplicações que explorem essas novas fronteiras da computação. Entretanto, o desenvolvimento de aplicações nestes cenários traz novos desafios, pois estas operam em dispositivos de recursos limitados e comunicam-se através de redes sem fio, caracterizadas por conexões intermitentes. Para evitar que esses desafios tenham que ser resolvidos de forma improvisada para cada aplicação, plataformas de middleware são utilizadas, liberando os desenvolvedores de aplicações das dificuldades trazidas pela mobilidade. Devido ao seu estilo de comunicação assíncrono e fracamente acoplado, plataformas de Middleware orientado a Mensagens (MOM) têm sido comumente adotadas nestes casos. Entretanto, uma das limitações mais significantes das atuais plataformas de MOM é que elas geralmente dão suporte a um paradigma de comunicação único e predefinido (ex.: publish/subscribe). Essa restrição limita o escopo de aplicações que o middleware pode dar suporte. Para lidar com essa limitação, esta dissertação propõe um middleware para dispositivos móveis capaz de dar suporte a um conjunto extensível de paradigmas de comunicação baseados em mensagens (ex.: espaço de tuplas, filas de mensagens, publish/subscribe). Através de uma arquitetura integrada, a qual foi concebida baseada numa abordagem de Linha de Produto de Software (LPS), o middleware encapsula funcionalidades comuns para lidar com os desafios trazidos pela mobilidade, provendo componentes reusáveis e compartilhados entre os diversos paradigmas. Os resultados da avaliação mostram que o overhead introduzido pela abordagem multi-paradigma é mínimo, tanto em termos de espaço ocupado em memória, quanto em desempenho em tempo de execução. Por fim, com o intuito de ilustrar como aplicações móveis podem se beneficiar dessa abordagem, um cenário de aplicação é descrito.
|
86 |
Avaliação de técnicas de Linha de Produto de Software no processo de adaptação e manutenção de sistemas customizáveisPassos, Fernanda Almeida 24 September 2014 (has links)
Customization of open source software systems, such as the development of specific artifacts that meet their functional and non-functional requirements, can be licensed to acquiring organizations. However, it brings future problems to system maintenance, which in parallel is in constant evolution by their creators. The biggest challenge on this scenery is handling the evolutions of the original system made by their creators, which usually impact the acquiring organizations artifacts. In this context, the application of Software Product Lines (SPL) techniques emerges as a proposal to provide support in customizing acquired software. This study aims to evaluate in a real context and through controlled experiments the process of adaptation and maintenance of customized systems by comparing the approach currently used in the customizations, performed directly on the base code of the original system with the LPS techniques AspectJ, FeatureHouse and XVCL. The selection of those techniques for evaluation was based on a comparative analysis of the techniques raised on a systematic study that was realized, taking as a premise the possibility of creating customizable artifacts and the implementation of the variations apart of the base code, keeping it intact. Finally, after the experiment proposed in this study, quantitative and qualitative results regarding the usage of the SPL techniques AspectJ, FeatureHouse and XVCL in the adaptation and maintenance of customizable systems were obtained. These results show that FeatureHouse and XVCL were considered equivalent to each other and to the current approach. AspectJ, though it proved feasible, requires a steep learning curve. However, the adoption of one of those SPL techniques brings qualitative gains due to the possibility of creating customizable software artifacts and to the separation of the variations from the system base code. / Customizações em sistema de software open-source, tais como o desenvolvimento de artefatos específicos que atendam seus requisitos funcionais e não funcionais, pode ser licenciada às organizações adquirentes. Contudo, traz problemas futuros à manutenção do sistema, o qual paralelamente está em constante evolução pelos seus criadores. O maior desafio neste cenário é lidar com as evoluções do sistema original realizadas pelos criadores, que normalmente impactam os artefatos das organizações adquirentes. Neste contexto, a aplicação de técnicas de Linha de Produto de Software (LPS) surge como uma proposta para prover suporte na customização de software adquirido. Este estudo objetiva avaliar em um contexto real e através de experimentos controlados, o processo de adaptação e manutenção de sistemas customizados, comparando a abordagem atualmente usada nas customizações realizadas diretamente no código base do sistema original com as técnicas LPS AspectJ, FeatureHouse e XVCL. A seleção dessas técnicas para avaliação foi baseada em uma análise comparativa das técnicas levantadas no estudo sistemático realizado, tomando como premissa a possibilidade de criação de artefatos customizáveis e a implementação das variações separada do código base, mantendo-o intacto. Finalmente, após o experimento proposto neste estudo, resultados quantitativos e qualitativos sobre o uso das técnicas de LPS AspectJ, FeatureHouse e XVCL na adaptação e manutenção de sistemas customizáveis foram obtidos. Estes resultados mostram que FeatureHouse e XVCL foram consideradas equivalentes entre si e à abordagem atual. AspectJ, embora tenha se provado viável, demanda uma acentuada curva de aprendizado. Entretanto, a adoção de uma destas técnicas de LPS traz ganhos qualitativos devido à possibilidade de criar artefatos de software customizáveis e a separação das variações do código base do sistema.
|
87 |
Um método de desenvolvimento de software combinando linha de produto de software com scrum: estudo de caso sistema de navegação de TVSantos Júnior, Antônio Ferreira dos 23 August 2010 (has links)
Made available in DSpace on 2015-04-22T22:00:52Z (GMT). No. of bitstreams: 1
Dissertacao_antonio_ver_12.pdf: 602549 bytes, checksum: f4b20bf4513c0983ee97d39a99a89a2d (MD5)
Previous issue date: 2010-08-23 / FAPEAM - Fundação de Amparo à Pesquisa do Estado do Amazonas / The industry, to reach more consumers, has adopted the mass customization concept to develop several and different products sharing the same components, in other words, launch similar products attending specific requirements from several market segments. The methodology used to develop software for mass customization is the software product line engineering (SPLE) that uses component reuse concepts in an efficient and systematic way, resulting on several software products sharing a common platform, which are part of a software product line (SPL). Scrum is an agile process that can be used to manage and control complex product and software development by using
iterative and incremental practices. It was invented to rapidly drive new products to market, and was designed for hyper productive teams where productivity increases by 5-10
times over industry averages and many collocated teams have achieved this effect. Both, SPLE and Scrum, are designed to develop software products in a productive way, but SPLE has adopted the systematic reuse as its main principle, and Scrum has adopted the self-management teams and agile manifesto. This M.Sc. thesis shows the ScrumPL, a method combining both SPLE and Scrum methodologies based on their input and output
needs and the Scrum lifecycle. This process was applied to develop a TV navigation system SPL, with one of the digital TV standards (ISDB-TB, DVB or ATSC), one language, for low-end, mid-end or high-end set-top-box market segment. / A indústria, para alcançar um número maior de consumidores, tem adotado o conceito de customização em massa, ou seja, lançar produtos similares, mas que atendam a requisitos específicos de vários nichos de clientes. A metodologia que trata de desenvolvimento de software voltado à customização em massa é a engenharia de linha de produto de software (SPLE), a qual busca reutilizar componentes de software de forma sistemática e eficiente resultando nas linhas de produto de software (SPL). Scrum é um método ágil usado para gerenciar e controlar o desenvolvimento de produtos e softwares
complexos através de um processo iterativo e incremental, que foi criado para introduzir novos produtos no mercado de forma rápida. Esse método tem apresentado ganhos de produtividade de 5 a 10 vezes maior que a média da indústria convencional de
desenvolvimento de software. Ambas as metodologias são projetadas para desenvolver produtos de software de forma produtiva, onde a SPLE adota o reuso sistemático de componentes como seu principal princípio, ao passo que o método Scrum lança mão de times auto-gerenciados e do manifesto ágil como os seus. Este trabalho apresenta e discute
um processo, denominado ScrumPL, que combina ambas as metodologias para o desenvolvimento de SPLs, baseando-se nas entradas e saídas de cada etapa do Scrum e da SPLE. Por fim é discutida a aplicação deste novo processo no desenvolvimento de uma linha de produto de software de um sistema de navegação de TV digital interativa voltada para três seguimentos de mercado, três padrões de TV digital (ISDB, DVB e ATSC) e vários idiomas.
|
88 |
Uma abordagem para linha de produtos de software científico baseada em ontologia e workflowCosta, Gabriella Castro Barbosa 27 February 2013 (has links)
Submitted by Renata Lopes (renatasil82@gmail.com) on 2017-05-31T17:53:13Z
No. of bitstreams: 1
gabriellacastrobarbosacosta.pdf: 2243060 bytes, checksum: 0aef87199975808e0973490875ce39b5 (MD5) / Approved for entry into archive by Adriana Oliveira (adriana.oliveira@ufjf.edu.br) on 2017-06-01T11:50:00Z (GMT) No. of bitstreams: 1
gabriellacastrobarbosacosta.pdf: 2243060 bytes, checksum: 0aef87199975808e0973490875ce39b5 (MD5) / Made available in DSpace on 2017-06-01T11:50:00Z (GMT). No. of bitstreams: 1
gabriellacastrobarbosacosta.pdf: 2243060 bytes, checksum: 0aef87199975808e0973490875ce39b5 (MD5)
Previous issue date: 2013-02-27 / CAPES - Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Uma forma de aprimorar a reutilização e a manutenção de uma família de produtos
de software é através da utilização de uma abordagem de Linha de Produtos de Software
(LPS). Em algumas situações, tais como aplicações científicas para uma determinada área,
é vantajoso desenvolver uma coleção de produtos de software relacionados, utilizando uma
abordagem de LPS. Linhas de Produtos de Software Científico (LPSC) diferem-se de Li
nhas de Produtos de Software pelo fato de que LPSC fazem uso de um modelo abstrato de
workflow científico. Esse modelo abstrato de workflow é definido de acordo com o domínio
científico e, através deste workflow, os produtos da LPSC serão instanciados. Analisando
as dificuldades em especificar experimentos científicos e considerando a necessidade de
composição de aplicações científicas para a sua implementação, constata-se a necessidade
de um suporte semântico mais adequado para a fase de análise de domínio. Para tanto,
este trabalho propõe uma abordagem baseada na associação de modelo de features e onto
logias, denominada PL-Science, para apoiar a especificação e a condução de experimentos
científicos. A abordagem PL-Science, que considera o contexto de LPSC, visa auxiliar
os cientistas através de um workflow que engloba as aplicações científicas de um dado
experimento. Usando os conceitos de LPS, os cientistas podem reutilizar modelos que
especificam a LPSC e tomar decisões de acordo com suas necessidades. Este trabalho
enfatiza o uso de ontologias para facilitar o processo de aplicação de LPS em domínios
científicos. Através do uso de ontologia como um modelo de domínio consegue-se fornecer
informações adicionais, bem como adicionar mais semântica ao contexto de LPSC. / A way to improve reusability and maintainability of a family of software products is
through the Software Product Line (SPL) approach. In some situations, such as scientific
applications for a given area, it is advantageous to develop a collection of related software
products, using an SPL approach. Scientific Software Product Lines (SSPL) differs from
the Software Product Lines due to the fact that SSPL uses an abstract scientific workflow
model. This workflow is defined according to the scientific domain and, using this abstract
workflow model, the products will be instantiated. Analyzing the difficulties to specify
scientific experiments, and considering the need for scientific applications composition for
its implementation, an appropriated semantic support for the domain analysis phase is
necessary. Therefore, this work proposes an approach based on the combination of feature
models and ontologies, named PL-Science, to support the specification and conduction
of scientific experiments. The PL-Science approach, which considers the context of SPL
and aims to assist scientists to define a scientific experiment, specifying a workflow that
encompasses scientific applications of a given experiment, is presented during this disser
tation. Using SPL concepts, scientists can reuse models that specify the scientific product
line and carefully make decisions according to their needs. This work also focuses on the
use of ontologies to facilitate the process of applying Software Product Line to scientific
domains. Through the use of ontology as a domain model, we can provide additional
information as well as add more semantics in the context of Scientific Software Product
Lines.
|
89 |
Collaborative PL-Science: utilizando elementos de colaboração em uma linha de produtos de software científicoPereira, Anrafel Fernandes 11 July 2014 (has links)
Submitted by Renata Lopes (renatasil82@gmail.com) on 2017-07-25T11:45:46Z
No. of bitstreams: 1
anrafelfernandespereira.pdf: 2313256 bytes, checksum: 6c0ecfc310a8132b96bf765825f34222 (MD5) / Approved for entry into archive by Adriana Oliveira (adriana.oliveira@ufjf.edu.br) on 2017-08-09T13:49:22Z (GMT) No. of bitstreams: 1
anrafelfernandespereira.pdf: 2313256 bytes, checksum: 6c0ecfc310a8132b96bf765825f34222 (MD5) / Made available in DSpace on 2017-08-09T13:49:22Z (GMT). No. of bitstreams: 1
anrafelfernandespereira.pdf: 2313256 bytes, checksum: 6c0ecfc310a8132b96bf765825f34222 (MD5)
Previous issue date: 2014-07-11 / CAPES - Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / A necessidade de colaboração no domínio científico vem sendo discutida em alguns
trabalhos. A sua relevância no contexto desta dissertação é justificada por problemas clássicos
neste domínio, como a falta de apoio para a composição de workflows científicos, dificuldade para
reutilização de aplicações científicas, dificuldade de cooperação e comunicação entre as equipes
de cientistas geograficamente distribuídas, entre outros. Abordagens como Linha de Produtos de
Software - LPS têm sido empregadas para apoiar os cientistas na concepção de workflows
científicos. Entretanto muitas informações relevantes sobre estas aplicações são perdidas ou
mesmo não fornecidas pelos cientistas. Esta dissertação apresenta uma abordagem denominada
Collaborative PL-Science, a qual é uma extensão de uma abordagem denominada PL-Science. Na
abordagem PL-Science os cientistas possuíam apenas os artefatos persistidos no núcleo da LPS
como componentes de trabalho. Com isso, o cientista desenvolvia um workflow científico baseado
apenas em seu conhecimento sobre o domínio. Nenhum histórico, ou "rationale", era gerado neste
ambiente, ficando todo o conhecimento sobre as funcionalidades dos artefatos, as experiências do
cientista e as tomadas de decisões por conta do usuário. Como proposta de solução para estes
problemas, a Collaborative PL-Science utiliza elementos de colaboração, tais como informações de
percepção, contexto e um mecanismo de suporte à comunicação, em uma Linha de Produtos de
Software Científico - LPSC. Com isso, espera-se gerar oportunidades de interação entre os
pesquisadores e contextualizá-los em sua atividade de concepção de workflows científicos. / The need for collaboration in the scientific field has been discussed in some papers. Its relevance in the context of this thesis is justified by classical problems in this area, such as lack of support for the composition of scientific workflows, difficult reuse to scientific applications, difficulty of cooperation and communication among geographically distributed teams of scientists, among others. Approaches to Software Product Line - SPL have been used to support scientists in the design of scientific workflows. However many relevant information about scientific applications are lost or even not provided by scientists. This paper presents an approach named Collaborative PL-Science, which is an extension of an approach called PL-Science. In the PL-Science approach scientists had only the artifacts persisted in the core of the SPL as components of work. No historical or "rationale" was generated in this environment. Therefore all the knowledge about the functionalities of the artifacts, the experiences of the scientist and the decisions made are attributed to the user. As a proposed solution to these problems, the Collaborative PL-Science uses collaboration elements, such as awareness and context information and a mechanism to support communication in a Scientific Software Product Line - SSPL. Thus, it is expected to generate opportunities for interaction between researchers and contextualize them in their activity of designing scientific workflows.
|
90 |
Evolução de arquiteturas de linhas de produtos baseadas em componentes e aspectos / Evolution of component and aspect-based product line architecturesTizzei, Leonardo Pondian, 1980- 07 June 2012 (has links)
Orientador: Cecília Mary Fischer Rubira / Tese (doutorado) ¿ Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-21T03:56:22Z (GMT). No. of bitstreams: 1
Tizzei_LeonardoPondian_D.pdf: 4801081 bytes, checksum: 4be6c243f0c9f62c50e330561161fcdd (MD5)
Previous issue date: 2012 / Resumo: Arquiteturas de linhas de produtos são essenciais para facilitar a evolução das linhas, pois ajudam a lidar com sua complexidade, abstraindo seus detalhes de implementação. A variabilidade arquitetural difere arquiteturas de linhas de produtos de arquiteturas de sistemas únicos. Ela reflete a existência de alternativas de projeto arquitetural e é expressa por meio de um conjunto de pontos de variação e variantes arquiteturais. A variabilidade arquitetural pode dificultar a evolução de arquiteturas de linhas produtos, pois a implementação da variabilidade software pode aumentar a complexidade da arquitetura com a possível adição de elementos e dependências extras. A variabilidade de linhas de produtos é usualmente capturada modelo de características e implementado pela arquitetura de linha de produtos. Entretanto, a implementação de características, pontos de variação e variantes podem estar espalhados por diversos elementos arquiteturais, o que dificulta a sua evolução. Em geral, cenários de evolução de linhas de produto envolvem adição e/ou remoção de características, mudança de uma característica obrigatória para opcional, entre outros. Quando cenários de evolução afetam características cujas implementações estão espalhadas na arquitetura, eles podem causar impacto de mudança em vários elementos arquiteturais. Estudos recentes exploram o uso de aspectos para modularizar a implementação de características em arquiteturas de linhas de produtos. Aspectos são usados para modularizar interesses transversais que, no contexto de linhas de produtos, são interesses que afetam diversas características. Contudo, esses estudos não consideram (i) arquiteturas componentizadas com interfaces explícitas e (ii) o uso integrado de componentes e aspectos para modularizar a implementação da variabilidade arquitetural. Idealmente aspectos devem ser modelados o mais cedo possível, de preferência, junto com o modelo de características para possibilitar a criação de arquiteturas bem estruturadas com aspectos. Todavia, não existem modelos que integrem o modelo de características e aspectos, nem métodos que consideram aspectos para gerar arquiteturas de linhas produtos a partir do modelo de características. A solução proposta nesta tese envolve inicialmente um estudo comparativo para mostrar a facilidade de evolução de arquiteturas de linhas de produtos propiciada pelo uso integrado de componentes e aspectos. Em seguida, é proposta uma visão estendida do modelo de características que permite representar características transversais. Essa visão, chamada de visão de características orientada a aspectos, é usada para criar arquiteturas de linhas de produtos orientadas a aspectos. Além disso, um modelo arquitetural de componentes é estendido para integrar aspectos para modularizar a variabilidade arquitetural. Por fim, o método FArM, que provê o mapeamento de modelo de características para modelos de arquitetura de linha de produtos, é estendido para considerar características transversais. Foram conduzidos dois estudos empíricos: um para avaliar se o uso integrado de componentes e aspectos facilita ou não a evolução de arquiteturas de linhas de produtos. O outro estudo empírico avalia a modelagem de características transversais e a extensão do método FArM propostos para projetar arquiteturas de linhas de produtos que sejam fáceis de evoluir. Os dois estudos apresentaram resultados promissores indicando que a solução proposta nesta tese facilita a evolução de arquiteturas de linhas de produtos / Abstract: Product line architectures are essential to facilitate the evolution of product lines, as they handle their complexity by abstracting implementation details. Architectural variability is what differs product line architectures from single system architectures. It reflects the existence of alternative design options and it is expressed by a set of architectural variation points and variants. Architectural variability can hinder product line architecture evolution because the implementation of software variability can increase architecture complexity by possibly adding extra elements and dependencies. Product line variability is usually captured in the feature model and it is implemented by product line architectures. However, the implementation of features, variation points, and variants may be scattered over architectural elements, which can hinder its evolution. In general, product line evolution scenarios involve feature addition/removal, changing a mandatory feature to an optional feature, and so forth. When evolution scenarios affect features whose implementations are scattered over architecture, they can cause a great change impact on several architectural elements. Recent studies have explored the use of aspects to modularize feature implementation in product line architectures. Aspects can modularize crosscutting concerns, which, in the context of product lines, are concerns that affect several features. Nevertheless, these studies do not consider (i) componentized architectures with explicit interfaces, and (ii) the integration of aspects and components to modularize the implementation of architectural variability. Ideally, aspects should be modeled as soon as possible, preferably, together with the feature model in order to enable the design of well structured product line architectures with aspects. However, there are neither models which integrate features and aspects, nor methods that considers aspects to design product line architectures from the feature model. The solution proposed in this thesis involves a comparative study that presents the support for product line architecture evolution provided by the integration of components and aspects. Then, it is proposed an extended view of the feature model which enables to represent crosscutting features. This view, called aspect-oriented feature view, is used to design product line architectures with aspects. Lastly, the FArM method, which provides guidelines to map from the feature model to the product line architecture model, is extended to consider crosscutting features. Two empirical studies were conducted: one to assess whether the integration of components and aspects facilitates product line architecture evolution. The other empirical study evaluates whether the crosscutting feature modeling and the FArM method extension proposed supports the design of evolvable product line architectures. Both studies presented promising results which indicate that the solution proposed in this thesis facilitates product line architecture evolution / Doutorado / Ciência da Computação / Doutor em Ciência da Computação
|
Page generated in 0.0653 seconds