Spelling suggestions: "subject:"desenvolvimento orientador a modelos""
1 |
Uma abordagem orientada por modelos para o desenvolvimento de software na computação ubíquaSantana, Eduardo Felipe Zambom 01 July 2010 (has links)
Made available in DSpace on 2016-06-02T19:05:45Z (GMT). No. of bitstreams: 1
3216.pdf: 2165958 bytes, checksum: e44fc4f80159088729eb51cd6068d912 (MD5)
Previous issue date: 2010-07-01 / With the advancement of hardware capability and key technologies of software and networking, ubiquitous computing is becoming a reality. The term ubiquitous computing refers to environments saturated with computing devices and communication networks that integrate naturally to human activity. According to Mark Weiser, the father of ubiquitous computing, "the most profound technologies are those that disappear." In this sense, ubiquitous computing can be considered the opposite of virtual reality. While the second one the user enters the virtual world, the first computing is penetrating into the user's physical world, building the connection between the two worlds. Research in different areas have been undertaken to improve the process of software development in ubiquitous computing. In software engineering, this new paradigm, mainly due to the amount and diversity of devices and platforms, present problems, such as applications development in manual and on-demand, and difficulties in maintenance and development of applications to meet the new requirements and monitor changes platforms. These problems have motivated the search for methods, processes, techniques and tools for modeling, implementing, testing to support the development of ubiquitous applications. Motivated to search for a solution to these problems, this project developed a model-driven approach to building software in ubiquitous computing. The approach is based on Domain-Specific Modeling (DSM) and Model-Driven Architecture (MDA). With a focus on reuse of software at different levels in the life cycle of software from the application modeling through implementation, the approach provides a productivity gain in application development that must be performed on different architectures of ubiquitous computing, as the numerous mobile devices such as cellphones, PDAs and others. The main mechanisms that automate part of the activities of a Software Engineer in implementing the approach are: a CASE tool, a code generator for the modeling of specific applications of a field, the IDE (Integrated Development Environment) Eclipse is a framework for science context and content adaption. Case studies in the field of medical education were developed to test and evaluate the proposed approach. / Com o avanço da capacidade de hardware e de tecnologias chaves de software e de redes, a Computação Ubíqua está se tornando uma realidade. O termo Computação Ubíqua referese a ambientes saturados de dispositivos computacionais e redes de comunicação, que se integram naturalmente à atividade humana. Segundo Mark Weiser, o pai da computação ubíqua, as mais profundas tecnologias são as que desaparecem . Neste sentido a Computação Ubíqua pode ser considerada o oposto da Realidade Virtual. Enquanto na segunda o usuário penetra no mundo virtual, na primeira é a computação que penetra no mundo físico do usuário, construindo a ligação entre os dois mundos. Pesquisas, em diferentes áreas, têm sido realizadas para melhorar processo de desenvolvimento de software na Computação Ubiqua. Na Engenharia de Software, este novo paradigma, principalmente devido à quantidade e diversidade de dispositivos e plataformas, apresenta problemas, como: desenvolvimento das aplicações de forma manual e sob demanda; e dificuldade de manutenção e evolução das aplicações para atender aos novos requisitos e acompanhar as mudanças de plataformas. Esses problemas têm motivado a pesquisa de métodos, processos, técnicas e ferramentas para modelagem, implementação, testes para apoiar o desenvolvimento de aplicações ubíquas. Motivados em pesquisar uma solução para esses problemas, este projeto desenvolveu uma abordagem orientada por modelos para a construção de software na computação ubíqua. A abordagem baseia-se na Modelagem Específica de Domínio (Domain Specific Modeling DSM) e na Arquitetura Orientada por Modelos (Model- Driven Architecture - MDA). Com foco na reutilização de software, em diferentes níveis do ciclo de vida do software desde a modelagem da aplicação até sua implementação, a abordagem possibilita um ganho de produtividade no desenvolvimento de aplicações que devem ser executadas em diferentes arquiteturas da computação ubíqua, conforme os inúmeros dispositivos móveis, como celulares, PDAs e outros. Os principais mecanismos que automatizam parte das atividades do Engenheiro de Software na execução da abordagem são: uma ferramenta CASE, um gerador de código para a modelagem de aplicações específicas de um domínio, a IDE (Integrated Development Environment) Eclipse e um framework para ciência de contexto e adapatação de conteúdo. Estudos de casos no domínio da Educação Médica foram desenvolvidos para testar e avaliar a abordagem proposta.
|
2 |
Uma abordagem de desenvolvimento de linha de produtos orientada a modelos para a construção de famílias de sistemas embarcados críticos / A model-driven product line development approach to build safety-critical embedded familiesQueiroz, Paulo Gabriel Gadelha 20 January 2015 (has links)
Sistemas embarcados críticos (SEC) correspondem aos sistemas embarcados para aplicações críticas, que são aplicações nas quais falhas podem por vidas em perigo. A crescente imersão deste tipo de sistema em nossas atividades cotidianas aumentou sua demanda, e consequentemente, a necessidade por novas técnicas de desenvolvimento que possam aumentar a produtividade dos desenvolvedores. Linha de produtos (LP) é uma técnica de reúso, na qual famílias de produtos similares são desenvolvidos em conjunto, e portanto, objetiva-se o desenvolvimento em larga escala. Com a utilização de LP, pode-se reusar requisitos e arquitetura de forma sistemática. Entretanto, o reúso no domínio de sistemas embarcados críticos ainda é visto de forma cética. Por outro lado, o domínio de SEC tem obtido avanços de desenvolvimento por meio de técnicas orientadas a modelo. A Engenharia orientada a modelos (MDE) concentra-se na importância de modelos no ciclo de vida do sistema, tornando-os parte do produto final. Assim, mantêm-se os modelos simples, e a maioria da complexidade do software passa a pertencer às transformações, que podem ser obtidas automaticamente por motores de transformação. Isso ajuda a aumentar a qualidade do produto final, bem como facilitar a futura evolução do software, que poderá ser feita mudando-se os modelos de alto nível e obtendo-se, de forma automática, o novo produto. MDE é particularmente útil no domínio de SEC, pois a partir de modelos corretos do problema, a chance de introdução de erros durante a codificação é menor se geradores de aplicações forem utilizados em vez de codificação manual. Além disso, o aumento no nível de abstração proporcionado pelo MDE permite que técnicas de validação e verificação sejam usadas desde os estágios iniciais de desenvolvimento, tais como co-design e co-simulação. Portanto, este trabalho visa defender a tese de que é possível oferecer os benefícios do desenvolvimento em larga escala para o domínio de SEC e ainda continuar se beneficiando de técnicas de MDE. Para corroborar esta tese, define-se uma abordagem de desenvolvimento de linha de produtos de sistema com uso de técnicas de engenharia orientada a modelos para o desenvolvimento de famílias de sistemas embarcados críticos. Além disso, apresenta-se um estudo de caso de marca-passo elaborado segundo as indicações da abordagem proposta que indicam a viabilidade de sua utilização. / Safety-critical embedded systems (SCES) correspond to embedded systems for critical applications, i.e., applications where lives can be lost if they fail. The increasing immersion of this type of system in our daily activities increased their demand and, consequently, the need for new development techniques that can increase developers productivity. Product Line (LP) is a promising technique for reuse, in which families of similar products are developed together and, therefore, it aims at large-scale development. With the use of LP we can reuse requirements and architecture systematically. However, developers remain sceptical about reuse in the SCES domain, mainly due to problems in the past, such as the failure of the spacecraft Ariane 5. In addition, advances in development of techniques for the SEC domain have been obtained, for example through model-driven engineering (MDE) approaches. MDE focuses on the importance of models in the software life cycle, making them part of the final product. So, it keeps models simple, and most of the software complexity belongs to the transformations that can be obtained automatically by transformation engines. This helps increasing the quality of the final product, and facilitate the future development of software that can be done by changing the high level models and obtaining, automatically, the new product. MDE is particularly useful in the SCES domain because, from correct models of the problem, the chance of introducing errors during coding is smaller if generators are used in the development instead of manual coding. In addition, the increased level of abstraction provided by MDE allows the use of validation and verification techniques since the early stages of development, such as co-design and co-simulation. Therefore, this work aims to defend the thesis that it is possible to offer the benefits of large-scale development for the SCES domain and still continue to benefit from MDE techniques. In support of this thesis, we define a system product line approach using model-driven techniques for the development of safety-critical embedded families. In addition, we present a case study prepared according to the directions of approach.
|
3 |
CoMDD: uma abordagem colaborativa para auxiliar o desenvolvimento orientado a modelos / CoMDD: a collaborative model driven development approachFernandes Neto, David 01 June 2012 (has links)
O desenvolvimento orientado a modelos (Model Driven Development - MDD) é uma abordagem que tem ganhado cada vez mais espaço na indústria e na academia, trazendo grandes benefícios, como o aumento de produtividade. Uma forma de se trabalhar usando MDD em equipe é usando uma IDE (Integrated Development Environment) associada a um sistema de versionamento. Entretanto, trabalhar colaborativamente usando uma IDE associada a um sistema de versionamento pode trazer algumas complicações para o desenvolvimento como: conflitos de modelos, documentação descontinuada, dificuldades por parte dos interessados em usar sistemas de versionamento, etc. Nesse contexto, este trabalho propõe uma abordagem de uso de wiki para desenvolvimento de MDD, de modo que o desenvolvedor seja capaz de criar modelos, gerar código fonte, compartilhar e versionar os modelos e ainda documentar colaborativamente, de maneira mais simples e fácil do que abordagens tradicionais. Isso possibilita que mais usuários não desenvolvedores possam participar mais no processo de desenvolvimento e ainda permite o aumento de produtividade. Para tentar evidenciar de que é possível uma wiki ser usada para desenvolver software, foi criada uma Domain Specific Language - DSL em uma wiki e foram realizados três estudos de caso: um com estudantes do ensino médio e que representam os não desenvolvedores, um com quatro alunos de pós-graduação com experiência de desenvolvimento na indústria e o último estudo de caso foi realizado com 48 participantes entre desenvolvedores e alunos de pósgraduação em Ciências da Computação. Os estudos de caso mostraram que é viável usar uma wiki para desenvolvimento, que não desenvolvedores se adaptam bem à abordagem e que 86% dos desenvolvedores usariam a abordagem proposta se tivessem que trabalhar com MDD. Os estudos de caso também levantaram as principais barreiras para aumentar a aceitação da abordagem. Com isso, este trabalho apresenta além de uma abordagem relativamente inédita na literatura, resultados sobre uso de sistemas de versionamento, de IDEs e de desenvolvimento colaborativo / The Model Driven Development (MDD) is an approach that has gained more space in industry and academia, bringing great benefits such as increased productivity. One way of working in teams with MDD is using an IDE (Integrated Development Environment) with a versioning system. However, to collaboratively work with an IDE and a versioning system may have implications and problems for the development as: conflicts of models, documentation discontinued, difficulties for stakeholders to use versioning systems, etc. In this context, this work proposes an approach to use a wiki to develop MDD, so that the developer is able to create models, generate source code, sharing and versioning models and also to collaboratively document, in a more simple and easy way than the traditional approaches. This enables non developers can participate more in the development process and also allows increasing productivity. To try to show that a wiki can be used to develop software, we created a Domain Specific Language (DSL) in a wiki and were performed three case studies: one with high school students and represent the non developers, another one with four graduate students with experience in software development in the industry, and the last case study was conducted with 48 participants among developers and graduate students in Computer Science. The case studies showed the feasibility of using a wiki for development, that non developers adapted well to the approach and 86 % of the developers would use a wiki to develop MDD. The study also raised the main barriers to increase the acceptance of the approach. Therefore, this work presents also a relatively new approach in the literature and results on the use of versioning systems, IDEs and collaboratively development
|
4 |
Uma abordagem de desenvolvimento de linha de produtos orientada a modelos para a construção de famílias de sistemas embarcados críticos / A model-driven product line development approach to build safety-critical embedded familiesPaulo Gabriel Gadelha Queiroz 20 January 2015 (has links)
Sistemas embarcados críticos (SEC) correspondem aos sistemas embarcados para aplicações críticas, que são aplicações nas quais falhas podem por vidas em perigo. A crescente imersão deste tipo de sistema em nossas atividades cotidianas aumentou sua demanda, e consequentemente, a necessidade por novas técnicas de desenvolvimento que possam aumentar a produtividade dos desenvolvedores. Linha de produtos (LP) é uma técnica de reúso, na qual famílias de produtos similares são desenvolvidos em conjunto, e portanto, objetiva-se o desenvolvimento em larga escala. Com a utilização de LP, pode-se reusar requisitos e arquitetura de forma sistemática. Entretanto, o reúso no domínio de sistemas embarcados críticos ainda é visto de forma cética. Por outro lado, o domínio de SEC tem obtido avanços de desenvolvimento por meio de técnicas orientadas a modelo. A Engenharia orientada a modelos (MDE) concentra-se na importância de modelos no ciclo de vida do sistema, tornando-os parte do produto final. Assim, mantêm-se os modelos simples, e a maioria da complexidade do software passa a pertencer às transformações, que podem ser obtidas automaticamente por motores de transformação. Isso ajuda a aumentar a qualidade do produto final, bem como facilitar a futura evolução do software, que poderá ser feita mudando-se os modelos de alto nível e obtendo-se, de forma automática, o novo produto. MDE é particularmente útil no domínio de SEC, pois a partir de modelos corretos do problema, a chance de introdução de erros durante a codificação é menor se geradores de aplicações forem utilizados em vez de codificação manual. Além disso, o aumento no nível de abstração proporcionado pelo MDE permite que técnicas de validação e verificação sejam usadas desde os estágios iniciais de desenvolvimento, tais como co-design e co-simulação. Portanto, este trabalho visa defender a tese de que é possível oferecer os benefícios do desenvolvimento em larga escala para o domínio de SEC e ainda continuar se beneficiando de técnicas de MDE. Para corroborar esta tese, define-se uma abordagem de desenvolvimento de linha de produtos de sistema com uso de técnicas de engenharia orientada a modelos para o desenvolvimento de famílias de sistemas embarcados críticos. Além disso, apresenta-se um estudo de caso de marca-passo elaborado segundo as indicações da abordagem proposta que indicam a viabilidade de sua utilização. / Safety-critical embedded systems (SCES) correspond to embedded systems for critical applications, i.e., applications where lives can be lost if they fail. The increasing immersion of this type of system in our daily activities increased their demand and, consequently, the need for new development techniques that can increase developers productivity. Product Line (LP) is a promising technique for reuse, in which families of similar products are developed together and, therefore, it aims at large-scale development. With the use of LP we can reuse requirements and architecture systematically. However, developers remain sceptical about reuse in the SCES domain, mainly due to problems in the past, such as the failure of the spacecraft Ariane 5. In addition, advances in development of techniques for the SEC domain have been obtained, for example through model-driven engineering (MDE) approaches. MDE focuses on the importance of models in the software life cycle, making them part of the final product. So, it keeps models simple, and most of the software complexity belongs to the transformations that can be obtained automatically by transformation engines. This helps increasing the quality of the final product, and facilitate the future development of software that can be done by changing the high level models and obtaining, automatically, the new product. MDE is particularly useful in the SCES domain because, from correct models of the problem, the chance of introducing errors during coding is smaller if generators are used in the development instead of manual coding. In addition, the increased level of abstraction provided by MDE allows the use of validation and verification techniques since the early stages of development, such as co-design and co-simulation. Therefore, this work aims to defend the thesis that it is possible to offer the benefits of large-scale development for the SCES domain and still continue to benefit from MDE techniques. In support of this thesis, we define a system product line approach using model-driven techniques for the development of safety-critical embedded families. In addition, we present a case study prepared according to the directions of approach.
|
5 |
CoMDD: uma abordagem colaborativa para auxiliar o desenvolvimento orientado a modelos / CoMDD: a collaborative model driven development approachDavid Fernandes Neto 01 June 2012 (has links)
O desenvolvimento orientado a modelos (Model Driven Development - MDD) é uma abordagem que tem ganhado cada vez mais espaço na indústria e na academia, trazendo grandes benefícios, como o aumento de produtividade. Uma forma de se trabalhar usando MDD em equipe é usando uma IDE (Integrated Development Environment) associada a um sistema de versionamento. Entretanto, trabalhar colaborativamente usando uma IDE associada a um sistema de versionamento pode trazer algumas complicações para o desenvolvimento como: conflitos de modelos, documentação descontinuada, dificuldades por parte dos interessados em usar sistemas de versionamento, etc. Nesse contexto, este trabalho propõe uma abordagem de uso de wiki para desenvolvimento de MDD, de modo que o desenvolvedor seja capaz de criar modelos, gerar código fonte, compartilhar e versionar os modelos e ainda documentar colaborativamente, de maneira mais simples e fácil do que abordagens tradicionais. Isso possibilita que mais usuários não desenvolvedores possam participar mais no processo de desenvolvimento e ainda permite o aumento de produtividade. Para tentar evidenciar de que é possível uma wiki ser usada para desenvolver software, foi criada uma Domain Specific Language - DSL em uma wiki e foram realizados três estudos de caso: um com estudantes do ensino médio e que representam os não desenvolvedores, um com quatro alunos de pós-graduação com experiência de desenvolvimento na indústria e o último estudo de caso foi realizado com 48 participantes entre desenvolvedores e alunos de pósgraduação em Ciências da Computação. Os estudos de caso mostraram que é viável usar uma wiki para desenvolvimento, que não desenvolvedores se adaptam bem à abordagem e que 86% dos desenvolvedores usariam a abordagem proposta se tivessem que trabalhar com MDD. Os estudos de caso também levantaram as principais barreiras para aumentar a aceitação da abordagem. Com isso, este trabalho apresenta além de uma abordagem relativamente inédita na literatura, resultados sobre uso de sistemas de versionamento, de IDEs e de desenvolvimento colaborativo / The Model Driven Development (MDD) is an approach that has gained more space in industry and academia, bringing great benefits such as increased productivity. One way of working in teams with MDD is using an IDE (Integrated Development Environment) with a versioning system. However, to collaboratively work with an IDE and a versioning system may have implications and problems for the development as: conflicts of models, documentation discontinued, difficulties for stakeholders to use versioning systems, etc. In this context, this work proposes an approach to use a wiki to develop MDD, so that the developer is able to create models, generate source code, sharing and versioning models and also to collaboratively document, in a more simple and easy way than the traditional approaches. This enables non developers can participate more in the development process and also allows increasing productivity. To try to show that a wiki can be used to develop software, we created a Domain Specific Language (DSL) in a wiki and were performed three case studies: one with high school students and represent the non developers, another one with four graduate students with experience in software development in the industry, and the last case study was conducted with 48 participants among developers and graduate students in Computer Science. The case studies showed the feasibility of using a wiki for development, that non developers adapted well to the approach and 86 % of the developers would use a wiki to develop MDD. The study also raised the main barriers to increase the acceptance of the approach. Therefore, this work presents also a relatively new approach in the literature and results on the use of versioning systems, IDEs and collaboratively development
|
6 |
Um estudo sobre MDA: suporte fornecido pela UML e reuso de soluções pré-definidas. / A study on MDA: support provided by UML and reuse of pre-defined solutions.Belix, José Eduardo 07 April 2006 (has links)
Este trabalho tem por objetivo propor a utilização de soluções pré-definidas e comprovadas na abordagem MDA, auxiliando o desenvolvedor na resolução de problemas recorrentes ao desenvolvimento de software. A utilização destas soluções pré-definidas leva a um aumento de produtividade no contexto MDA e na geração de software baseado em boas práticas. Para que este objetivo seja cumprido, é empreendida uma análise sobre o MDA e sobre como operacionalizar as transformações entre modelos. Também é empreendida uma análise sobre o suporte fornecido pela UML e sobre reutilização em desenvolvimento orientado a modelos. Por fim este trabalho apresenta partes de uma aplicação protótipo, construída para ser uma prova de conceito de código gerado através da combinação de UML e soluções pré-definidas. / The goal of this work is to propose the use of pre-defined solutions on MDA approach, supporting the developer in solving recurrent problems of software development. The use of these pre-defined solutions leads to an increase of productivity in MDA context, and in the generation of software based on best practices. To reach this goal, an analysis of MDA is undertaken, as well as an analysis of how to enable the transformations between models. It is also undertaken an analysis about the use of UML and the reuse in model driven development. Finally this work presents portions of a prototype application, constructed to be a proof-of-concept of generated code, combining UML and the pre-defined solutions.
|
7 |
Um estudo sobre MDA: suporte fornecido pela UML e reuso de soluções pré-definidas. / A study on MDA: support provided by UML and reuse of pre-defined solutions.José Eduardo Belix 07 April 2006 (has links)
Este trabalho tem por objetivo propor a utilização de soluções pré-definidas e comprovadas na abordagem MDA, auxiliando o desenvolvedor na resolução de problemas recorrentes ao desenvolvimento de software. A utilização destas soluções pré-definidas leva a um aumento de produtividade no contexto MDA e na geração de software baseado em boas práticas. Para que este objetivo seja cumprido, é empreendida uma análise sobre o MDA e sobre como operacionalizar as transformações entre modelos. Também é empreendida uma análise sobre o suporte fornecido pela UML e sobre reutilização em desenvolvimento orientado a modelos. Por fim este trabalho apresenta partes de uma aplicação protótipo, construída para ser uma prova de conceito de código gerado através da combinação de UML e soluções pré-definidas. / The goal of this work is to propose the use of pre-defined solutions on MDA approach, supporting the developer in solving recurrent problems of software development. The use of these pre-defined solutions leads to an increase of productivity in MDA context, and in the generation of software based on best practices. To reach this goal, an analysis of MDA is undertaken, as well as an analysis of how to enable the transformations between models. It is also undertaken an analysis about the use of UML and the reuse in model driven development. Finally this work presents portions of a prototype application, constructed to be a proof-of-concept of generated code, combining UML and the pre-defined solutions.
|
8 |
Um processo dirigido a modelos para geração de códigoPapotti, Paulo Eduardo 17 May 2013 (has links)
Made available in DSpace on 2016-06-02T19:06:04Z (GMT). No. of bitstreams: 1
5180.pdf: 8285938 bytes, checksum: 0110755140178ec91052f03c8f73ca2d (MD5)
Previous issue date: 2013-05-17 / Universidade Federal de Sao Carlos / Software development is an activity in constant change over time. Given the complexity and high cost that exists in software construction, there is high demand, especially in the software industries, for methodologies and tools that enable to increase software productivity by spending less time and effort in its development. Among the challenges that exist in Software Engineering, there is a need in knowing and exploring techniques and tools that enable to increase productivity and maintai software quality. Approaches related to model-driven development can be used as a starting point for modeling and to specify the requirements of a software system. Models provide a representation with higher level of abstraction of system design and assist to understand the system. Through the execution of model-to-code transformation mechanisms, implementation artifacts for different technologies can be generated based on data extracted and interpreted from models. Furthermore, reflexive metaprogramming is a technique that can be used to complement the code generation performed by model-to-code transformations, automating most of tasks of developers, such as CRUD (Create, Retrieve, Update, Delete) functionalities, freeing them to perform more important tasks in development process. Therefore, this research proposes a software process to guide professionals in developing applications using such techniques to accomplish code generation, in order to increase software productivity and facilitate maintenance. / O desenvolvimento de software é uma atividade em constante mudança ao longo do tempo. Diante da complexidade e do alto custo existente na construção de um software, existe uma grande demanda, sobretudo nas indústrias de software, por metodologias e ferramentas que possibilitem aumentar a produtividade de software, gastando menos tempo e esforços em seu desenvolvimento. Dentre os desafios existentes na Engenharia de Software, existe a necessidade de conhecer e explorar diferentes técnicas e ferramentas que viabilizem aumentar a produtividade mantendo a qualidade do software. Abordagens relacionadas ao desenvolvimento dirigido a modelos podem ser utilizadas como ponto de partida para modelar e especificar os requisitos de um sistema de software. Os modelos fornecem uma representação com maior nível de abstração do projeto do sistema e auxiliam na compreensão do sistema. Por meio da aplicação de mecanismos de transformação de modelos em código, é possível gerar código de artefatos de implementação para diferentes tecnologias a partir de dados extraídos e interpretados dos modelos. Além disso, a metaprogramação reflexiva é uma técnica que pode ser empregada para complementar a geração de código realizada por transformações de modelos, automatizando grande parte das tarefas do desenvolvedor, tais como as funcionalidades CRUD (Create, Retrieve, Update, Delete), liberandoo para atuar em outras tarefas mais importantes do processo de desenvolvimento. Dessa forma, este trabalho define um processo de software que visa orientar os profissionais no desenvolvimento de aplicações utilizando tais técnicas para realizar geração código, que tem como objetivo aumentar a produtividade de software e facilitar sua manutenção.
|
9 |
Uma abordagem dirigida por modelos para portabilidade entre plataformas de computação em nuvemSilva, Elias Adriano Nogueira da 20 May 2013 (has links)
Made available in DSpace on 2016-06-02T19:06:08Z (GMT). No. of bitstreams: 1
5466.pdf: 2178593 bytes, checksum: a3777aeb3757d619d7087258728cdde6 (MD5)
Previous issue date: 2013-05-20 / Financiadora de Estudos e Projetos / Cloud Computing has potential to revolutionize way that systems are developed and marketed. Among several research gaps related to this new model is the Lock-In. The Lock-In is the difficulty on migrating data and applications from a cloud platform to another. The lack of standardization, as well as other reasons, are causing the problem. This work presents a model-driven(MDE) approach for portability of applications between cloud platforms. With MDE software engineers can work at a high level of abstraction freeing themselves from repetitive tasks related to software implementation and specific details of cloud platforms. Besides portability, MDE brings additional benefits related to traditional software development approaches. The approach presented in this work, basically consists of a DSL and a set of automated transformations for two known cloud platforms Google App Engine and Microsoft Azure. The approach allows the development of cloud applications on a high abstraction level, showing that despite being simple, the elements of the approach are enough to generate many cloud applications, as well as facilitates its development. The evaluation confirms the benefits provided by MDE technologies. / A computação em nuvem tem potencial para revolucionar a maneira como sistemas são desenvolvidos e comercializados. Entre as diversas lacunas de pesquisa relacionados a esse novo modelo computacional está o Lock-In. Isto é, o aprisionamento do usuário ao provedor devido a dificuldade na migração de dados e aplicativos de uma plataforma de nuvem para outra. Tal aprisionamento ocorre, dentre outros motivos, devido a falta de um padrão para desenvolvimento de aplicações para a nuvem. Este trabalho apresenta uma abordagem dirigida por modelos (Model-Driven Engineering - MDE) para portabilidade de aplicações entre plataformas de Computação em nuvem. Com o MDE os engenheiros de software podem trabalhar em um nivel mais alto de abstração livrando-se de tarefas repetitivas de codificação, que ficam a cargo de transformações automatizadas, e ficando assim protegidos das complexidades requeridas para implementação nas diferentes plataformas. Além da portabilidade o MDE traz benefícios adicionais em relação a abordagens tradicionais de desenvolvimento de sistemas. Este trabalho apresenta o desenvolvimento de uma linguagem textual que possibilita a especificação de aplicações em um alto nível de abstração. Bem como geradores de código para duas conhecidas plataforma de nuvem, a Google App Engine(GAE) e a Windows Azure, mostrando que a linguagem desenvolvida pode servir de entrada para a geração de grande parte do código necessário para muitas aplicações de nuvem e que facilita seu desenvolvimento. O MDE oferece uma maior produtividade, melhor manutenção e documentação e reúso. A avaliação realizada observou alguns desses benefícios, o que comprova a viabilidade da abordagem MDE.
|
10 |
Desenvolvimento de uma DSL para a gerência de configuração de um sistema de gerenciamento integrado de redesPieroni, Rosangela 27 October 2014 (has links)
Made available in DSpace on 2016-06-02T19:06:19Z (GMT). No. of bitstreams: 1
6469.pdf: 4680875 bytes, checksum: 348ed33838e264f70033e8383aeaa100 (MD5)
Previous issue date: 2014-10-27 / The integrated network management system aims to manage the telecommunications network, regardless of network elements technology in order to identify the causes of problems, providing a more assertive decision making to remedy these problems and make the network available and operational. Thus, can to cater to the market that is increasingly demanding with the level of quality telecommunications products and services. Given this need, integrated networks management system belongs to a real company needs to respond quickly to customers' expectations with respect to requests for new functions system, and perform technology upgrades periodically. However, the integrated network management system development use centered-source technologies, and it requires great effort and hinders reuse. In this context, this master's project presents a proposal to facilitate the integrated network management system development using the techniques of MDD (Model Driven Development). MDD emphasizes the use of models in software development. These models specify the rules of business domain at a high level of abstraction, i.e., regardless of the programming language and to run the software platform. With appropriate computational tools transformations of models in the source code are performed. The use of MDD can provide software reuse procedurally, enabling faster development, lower cost, produce a flexible software and enable faster modifications. To apply MDD approach, a Domain Specific Language (DSL) for the configuration management of integrated network management system setting is designed to facilitate the inclusion of a new technology to be managed by the system, while providing faster development and with fewer errors of code. To evaluate the proposal, an experiment was conducted with the participation of software developers that know the system and work in this real company. The results showed that according to the descriptive analyses there was a reduction in the time spent in application development when it was used DSL compared to the specialization of classes. However, hypotheses tests showed no such reduction. The insertion of errors in the code occurred only in applications developed using specialization classes. The use of DSL provided a broader view of the business rule and you do not need knowledge of the programming language, once the code was automatically generated. / Um sistema de gerenciamento integrado de redes tem o objetivo de gerenciar uma rede de telecomunicações, independentemente da tecnologia dos elementos de rede, a fim de identificar as causas de problemas, proporcionando a tomada de decisão mais assertiva para saná-los e deixar a rede disponível e operacional. Dessa forma, o mercado que está cada vez mais exigente com o nível de qualidade dos produtos e serviços de telecomunicações é atendido. Diante dessa necessidade, o sistema de gerenciamento integrado de redes de uma empresa real precisa atender rapidamente às expectativas dos clientes com relação às solicitações de novas funções do sistema, assim como realizar atualizações tecnológicas periodicamente. Porém, o desenvolvimento do sistema de gerenciamento integrado de redes dessa empresa utiliza tecnologias centradas em código-fonte, o que implica em grande esforço e dificulta a sua reutilização. Neste contexto, este projeto de mestrado apresenta uma proposta para facilitar o desenvolvimento do sistema de gerenciamento integrado de redes utilizando as técnicas de MDD (Desenvolvimento Dirigido a Modelos). MDD enfatiza a utilização de modelos no desenvolvimento do software. Esses modelos especificam as regras de negócio de domínio em um alto nível de abstração, ou seja, independentemente da linguagem de programação e da plataforma de execução do software. Com ferramentas computacionais adequadas são realizadas as transformações dos modelos em código-fonte. A utilização de MDD pode proporcionar reúso de software de forma processual, possibilitar um desenvolvimento mais rápido, com menor custo, produzir um software flexível e possibilitar modificações mais rapidamente. Para aplicar a abordagem de MDD, uma linguagem específica de domínio (DSL) para a gerência de configuração do sistema de gerenciamento integrado de redes foi desenvolvida. Tem como objetivo facilitar a inclusão de uma nova tecnologia a ser gerenciada pelo sistema e ao mesmo tempo proporcionar um desenvolvimento mais rápido, com menos erros de código. Para avaliar a proposta foi realizado um experimento com a participação dos atuais desenvolvedores de software de uma empresa real. Os resultados obtidos mostraram que, segundo a análise descritiva, houve redução do tempo gasto no desenvolvimento das aplicações quando foi utilizada a DSL em comparação com o desenvolvimento baseado em especialização das classes. Porém, os testes das hipóteses não apresentaram tal redução. A inserção de erros no código ocorreu somente nas aplicações desenvolvidas utilizando especialização das classes. O uso da DSL proporcionou uma visão mais ampla da regra de negócio e não exigiu conhecimento da linguagem de programação, pois o código foi gerado automaticamente.
|
Page generated in 0.1486 seconds