Odyssey-MDA: Uma Abordagem para a Transformação de Modelos de Componentes
|
|
- Marco Antônio Minho Coimbra
- 7 Há anos
- Visualizações:
Transcrição
1 Odyssey-MDA: Uma Abordagem para a Transformação de Modelos de Componentes Natanael E. N. Maia 1, Ana Paula T. B. Blois 1,2, Cláudia M. Werner 1 1 COPPE/UFRJ Programa de Engenharia de Sistemas e Computação Caixa Postal CEP Rio de Janeiro RJ 2 Pontifícia Universidade Católica do Rio Grande do Sul PUCRS-FACIN Av. Ipiranga, 6681 Prédio 30 Bloco 4 CEP Porto Alegre RS {ntmaia, anablois, werner}@cos.ufrj.br Abstract. This paper presents a MDA based approach to support the developer in obtaining platform specific component models. These models are obtained through the definition and execution of transformations which can be defined by the composition of small generic transformations (built-ins) or implemented and incorporated by an extension mechanism (plug-ins). To support the use of this approach, a machine for model transformation execution and an example of its use for the Enterprise JavaBeans platform are presented. Resumo. Este artigo apresenta uma abordagem baseada no paradigma MDA para apoiar o desenvolvedor na obtenção de modelos de componentes específicos para uma plataforma. Estes modelos são obtidos através da definição e execução de transformações que podem ser definidas pela composição de pequenas transformações genéricas (built-ins) ou implementadas e incorporadas através de um mecanismo de extensão (plugins). Para apoiar o uso dessa abordagem, uma máquina para execução de transformações e um exemplo de utilização para a plataforma Enterprise JavaBeans são apresentadas. Palavras-chave: Arquitetura Orientada por Modelos, Transformações de Modelos, Desenvolvimento Baseado em Componentes. 1. Introdução As organizações que desenvolvem software vêm, de maneira geral, reconhecendo a importância de se reaproveitar o esforço empregado no desenvolvimento de sistemas para reduzir prazos, otimizar recursos, e aumentar a produtividade e qualidade. Uma abordagem atualmente utilizada para se obter os benefícios da Reutilização de Software é o Desenvolvimento Baseado em Componentes (DBC), cujo objetivo é a construção de sistemas a partir de componentes de software reutilizáveis [Sametinger 1997]. A todo o momento, novas tecnologias aparecem no mercado e se tornam populares. Um grande desafio enfrentado no desenvolvimento de software é a escolha dessas tecnologias. Companhias precisam adotá-las pela demanda de seus clientes, pelos problemas que essas novas tecnologias se propõem a resolver, ou pelo fato das tecnologias antigas terem se tornado obsoletas e não existir mais suporte adequado. Como conseqüência, componentes existentes precisam ser migrados para uma nova tecnologia, ou para uma nova versão de uma tecnologia existente [Kleppe et al 2003].
2 Visando diminuir esse efeito, a OMG está desenvolvendo um framework conhecido como Model Driven Architecture (MDA) [MDA 2003], cujo objetivo é prover uma abordagem para: a) especificar um sistema independente da plataforma que irá suportá-lo; b) especificar plataformas possíveis para os sistemas em desenvolvimento; c) escolher uma plataforma para o sistema e; d) realizar transformações sobre a especificação inicial, a fim de obter uma especificação do sistema na plataforma escolhida. Com o uso dessa abordagem, os desenvolvedores passam a dar maior importância à modelagem dos requisitos de negócio da aplicação, não se preocupando com a plataforma onde serão implementados esses requisitos. Diante disto, este artigo descreve uma abordagem para a definição e execução de transformações sobre modelos de componentes. A abordagem permite que modelos de componentes independentes de plataforma sejam transformados em modelos específicos para uma plataforma escolhida. As transformações podem ser definidas pela composição de pequenas transformações genéricas (built-ins) ou implementadas e incorporadas à abordagem através de um mecanismo de extensão (plug-ins). O restante do artigo está organizado em cinco seções: A seção 2 descreve alguns padrões adotados. A seção 3 apresenta a abordagem para definição e execução de transformações sobre modelos de componentes Odyssey-MDA. A seção 4 descreve a implementação da abordagem através da máquina de transformações Odyssey-MDA. A seção 5 apresenta um exemplo de transformação para a plataforma Enterprise JavaBeans. A seção 6 apresenta os trabalhos relacionados. Finalmente, a seção 7 conclui o artigo e apresenta as principais contribuições da abordagem e trabalhos futuros. 2. Padrões Adotados A abordagem proposta está baseada nos padrões Meta-Object Facility (MOF) [MOF 2002], XML Metadata Interchange (XMI) [XMI 2002] e Java Metadata Interface (JMI) [JCP 2004]. O objetivo de utilizar estes padrões é tornar a abordagem flexível para a importação, transformação e exportação dos modelos, além de extensível para a implementação e incorporação de novas transformações. O padrão MOF especifica uma linguagem abstrata para descrever outras linguagens e é também conhecido como meta-meta-modelo (nível M3). As linguagens abstratas descritas a partir do MOF são chamadas de meta-modelo (M2) [Matula 2003]. Um exemplo dessas linguagens abstratas é o meta-modelo da UML, sendo que cada modelo UML está no nível M1. O padrão XMI permite o intercâmbio de dados entre ferramentas de modelagem, baseadas em UML, com repositórios de modelos, baseados no MOF, em ambientes heterogêneos e distribuídos. A especificação JMI permite a geração de interfaces em linguagem Java para um determinado meta-modelo MOF (M2), tornando possível a manipulação de instâncias deste meta-modelo. O meta-modelo da UML, por exemplo, é descrito a partir do MOF. Através do JMI, é possível manipular os elementos da UML (Classe, Interface, Atributo,...) como objetos Java, através das interfaces geradas. Esse tratamento pode ser adotado não somente para a UML, mas para qualquer meta-modelo baseado no MOF. O MDR [Matula 2003] é um repositório que implementa os padrões MOF e JMI, o que permite carregar meta-modelos baseados no MOF, e armazenar instâncias (M1) desses meta-modelos. As instâncias armazenadas no repositório podem ser manipuladas programaticamente, utilizando as interfaces geradas a partir do padrão JMI.
3 3. Abordagem Odyssey-MDA A abordagem Odyssey-MDA permite ao desenvolvedor realizar a transformação dos modelos de componentes independentes de plataforma, conhecidos como PIM (Platform Independent Model), em modelos específicos para uma plataforma em particular (PSM Platform Specific Model) e, posteriormente, obter a implementação destes componentes. Basicamente, esse processo consiste na realização das seguintes etapas: a) Definição de plataformas e transformações O desenvolvedor define as plataformas desejadas e as transformações necessárias para que os modelos PIM sejam transformados em modelos específicos (PSM) para essas plataformas. b) Modelagem inicial dos componentes A modelagem dos componentes é realizada de forma independente da plataforma onde esses componentes serão implementados. c) Marcação do modelo interno dos componentes Os elementos do modelo interno dos componentes (modelo de classes) são preparados com um mecanismo de marcação para guiar a realização das transformações posteriores. d) Escolha da plataforma e execução de transformações O desenvolvedor escolhe uma plataforma previamente definida. As transformações são aplicadas sobre o modelo previamente marcado para a obtenção do PSM para a plataforma escolhida. e) Geração da implementação Uma representação em código fonte do modelo PSM pode ser gerada na linguagem de programação da plataforma. Conforme é apresentado na Figura 1, o cenário típico de utilização da abordagem considera o desenvolvedor elaborando o seu modelo inicial em uma ferramenta CASE ou ambiente de modelagem de sua preferência. Figura 1. Cenário de utilização da Odyssey-MDA Conforme apresentado na Figura 1, através de uma ferramenta CASE, ambiente de modelagem ou ambiente de reutilização, o desenvolvedor deve realizar marcações sobre os elementos do seu modelo interno de componentes (modelo de classes), utilizando estereótipos ou etiquetas (tagged-values). Essas marcações são necessárias para que os mapeamentos mais adequados sejam selecionados, com o intuito de transformar tais elementos em elementos do modelo de saída. O conjunto de estereótipos e etiquetas possíveis para marcar o modelo é definido em função do objetivo da transformação a ser realizada, e pode ser baseado em algum profile da UML, como o UML Profile For EDOC [EDOC 2004]. Após a realização essas marcações, o desenvolvedor deve exportar o modelo de origem (PIM marcado) em formato XMI e importá-lo na máquina de transformações Odyssey-MDA, onde transformações podem ser executadas sobre o modelo de origem, resultando em um modelo de saída (PSM). O PSM gerado pode ser exportado também
4 em formato XMI, para posterior importação na ferramenta CASE inicial, ou transferência para algum gerador de código. A abordagem Odyssey-MDA permite ainda, a definição e execução de transformações bidirecionais. Neste caso, o desenvolvedor pode gerar um PSM a partir de um PIM (transformação direta ou forward), efetuar refinamentos e alterações no modelo PSM e propagar essas alterações de volta ao modelo PIM original (transformação reversa ou reverse). Essa propagação é feita de forma extensível, elementos já existentes no modelo de destino são atualizados pela transformação e não substituídos. Outras formas de resolução de conflitos relacionados à sincronização não são tratadas atualmente nesta abordagem [Gardner et al 2003]. Outro cenário de transformação reversa é a extração das informações independentes de plataforma de um modelo PSM, ou código fonte pré-existente, para a criação de um PIM. Isso seria bastante útil em casos onde um componente originalmente modelado de forma específica para a tecnologia onde foi implementado, tenha que ser migrado para outra tecnologia. 4. O protótipo desenvolvido Cada transformação definida é formada por uma especificação declarativa em XML e um conjunto de mecanismos. A especificação declarativa é responsável por definir os mapeamentos entre os elementos dos modelos de entrada e saída. Tais mapeamentos são definidos através de critérios de busca (finders) para a seleção dos elementos a serem transformados e pela atribuição de um mecanismo responsável pela realização da transformação desses elementos. Os finders são responsáveis por selecionar os elementos do modelo de entrada. Os elementos podem ser selecionados pelo nome, pelos estereótipos ou pelas etiquetas (tagged-values). Por exemplo, todas as classes que possuem o estereótipo <<entrada>> ou todas as classes cuja etiqueta persistent tenha o valor true. Os mapeamentos são específicos para cada tipo de elemento a ser mapeado. Para mapear subtipos de Classifier no meta-modelo da UML (ex: classes, interfaces), é proposto o mapeamento classifier-map. Para mapear subtipos de Features (ex: atributos e operações), é proposto o sub-mapeamento feature-map. Para mapear um Classifier para Feature, ou o contrário, é proposto o sub-mapeamento classifier-feature-map. A máquina de transformações Odyssey-MDA provê uma infra-estrutura de mecanismos genéricos, denominados built-ins, que realizam transformações simples sobre elementos UML. A Tabela 1 apresenta os built-ins existentes e qual a transformação efetuada por cada um. Por exemplo, as classes de um modelo PIM podem ser transformadas para classes, interfaces, atributos e operações no modelo PSM, conforme previsto nos built-ins 6, 7, 8 e 9 da Tabela 1, respectivamente. Tabela 1. Mecanismos genéricos de transformação (built-ins) Built-in Transformação Built-in Transformação 1. ComponentComponent Componente Componente 9. ClassOperation Classe Operação 2. ComponentClass Componente Classe 10. InterfaceInterface Interface Interface 3. ComponentInterface Componente Interface 11. InterfaceAttribute Interface Atributo 4. ComponentAttribute Componente Atributo 12. InterfaceOperation Interface Operação 5. ComponentOperation Componente Operação 13. AttributeAttribute Atributo Atributo 6. ClassClass Classe Classe 14. AttributeOperation Atributo Operação 7. ClassInterface Classe Interface 15. OperationOperation Classe Operação 8. ClassAttribute Classe Atributo
5 Como os built-ins são genéricos, deve existir uma forma para configurar os elementos manipulados por esses built-ins e assim, controlar o comportamento da transformação. Para transformar, por exemplo, uma classe em uma interface (ClassInterface), os atributos desses elementos, definidos no meta-modelo da UML, podem ser informados ao built-in através de um conjunto de propriedades. A Tabela 2 apresenta as propriedades possíveis para a configuração dos built-ins. Elemento manipulado Componente Classe Interface Atributo Operação Todos Tabela 2. Propriedades possíveis para configuração dos built-ins Propriedades isroot, isleaf, isabstract, isactive isroot, isleaf, isabstract, isactive isroot, isleaf, isabstract ownerscope, changeability ownerscope, isquery, concurrency, isroot, isleaf, isabstract, parameters name, nametransformation, stereotype, taggedvalues, visibility, isspecification Nos casos onde é necessário algum tipo de transformação textual sobre o nome dos elementos, a propriedade nametransformation pode ser utilizada para realizar tais transformações (substituições) através de expressões regulares, sendo possível, por exemplo, transformar o nome atributo em getatributo (transformação forward), ou o nome setatributo em atributo (transformação reverse). Na seção 5, um exemplo do uso dessa propriedade é apresentado. Para possibilitar a realização das transformações bidirecionais (PIM PSM), cada mecanismo implementa a interface Transformation que define as transformações em ambos os sentidos, através das operações transformationlefttoright e transformationrighttoleft. Por exemplo, no caso do mecanismo ClassInterface, a operação transformationlefttoright recebe uma Classe como parâmetro e retorna a Interface gerada a partir dessa Classe. Já a operação reversa (transformationrighttoleft) recebe uma Interface e retorna a Classe. Os built-ins disponíveis na máquina de transformações são até o momento suficientes para a definição de uma grande variedade de transformações entre os tipos suportados. Entretanto, podem existir casos onde o desenvolvedor necessita de alguma transformação não disponível. Neste caso, ele pode desenvolver seu próprio mecanismo (plug-in), que deve implementar a interface Transformation e manipular os elementos desejados através das interfaces JMI. 5. Exemplo de Utilização Para ilustrar o funcionamento da abordagem, é apresentado um exemplo de transformação que recebe como entrada o modelo de classes de um componente independente de plataforma (PIM) e gera um modelo de classes PSM desse componente na plataforma EJB (Enterprise JavaBeans). A Figura 2 apresenta o resultado da transformação executada sobre um modelo PIM recebido como entrada. A classe Cliente foi marcada previamente pelo estereótipo <<Entity>> e, de acordo com os padrões definidos pela plataforma EJB, foi transformada na classe ClienteBean, e nas interfaces Cliente e ClienteHome no modelo PSM de saída. Mudanças na classe ClienteBean podem ser propagadas de volta à classe Cliente no modelo PIM inicial, através da execução reversa da transformação, utilizando a operação transformationlefttoright da interface Transformation.
6 Figura 2. Resultado da transformação EJB sobre o modelo PIM As Figuras 3 e 4 ilustram a parte declarativa da transformação, a qual consiste de um documento XML contendo os mapeamentos entre os elementos, os finders (Figura 3) e as propriedades de configuração (Figura 4). A especificação do mapeamento da transformação (transformation-map) é composta por mapeamentos do tipo classifier-map. Cada mapeamento contém finders responsáveis por selecionar elementos nos modelos de origem e destino, de acordo com o atributo side. Na Figura 3, temos a especificação de um classifier-map (Entity- EntityBean) que utiliza o mecanismo genérico ClassClass. Este mecanismo transforma todos os classifiers encontrados pelo finder, que é responsável por selecionar elementos marcados com o estereótipo <<Entity>> no modelo de entrada (PIM). Ainda na Figura 3, são ilustrados outros exemplos de mapeamentos como o feature-map, responsável por realizar a cópia de atributos do elemento Entity para o EntityBean, e para a geração de métodos do tipo get e set para cada atributo do elemento de entrada. <transformation-map name="ejb Mapping"> <classifier-map name="entity-entitybean" implementation="classclass"> <finder side="left" type="stereotype" value="entity" /> <finder side="right" type="stereotype" value="entitybean" /> <feature-map name="copy attribute" implementation="attributeattribute">...</feature-map> <feature-map name="entitybean getter method" implementation="attributeoperation">...</feature-map> <feature-map name="entitybean setter method" implementation="attributeoperation">...</feature-map> </classifier-map> </transformation-map> Figura 3. Parte da especificação do mapeamento EJB (finders e feature-maps) Os mecanismos genéricos são independentes de plataforma, e por isso necessitam de configurações para guiar sua execução. Estas configurações são definidas no XML de especificação da transformação através das tags properties. Na Figura 4, são apresentadas algumas dessas tags. A tag nametransformation (forward) adiciona o sufixo Bean ao nome da classe gerada no modelo PSM. A segunda tag nametransformation (reverse), remove (através de substituição com expressão regular) o sufixo Bean para a geração do nome do elemento no modelo PIM. No exemplo da Figura 2, a classe Cliente é transformada para ClienteBean no modelo PSM. <property name="stereotype" value="entitybean" direction="forward" /> <property name="nametransformation" direction="forward" value="#classifier_name#bean" /> <property name="nametransformation" direction="reverse"> <property name="input" value="#classifier_name#" /> <property name="regex" value="(.*)bean$" /> <property name="subst" value="$1" /> </property> Figura 4. Parte da especificação do mapeamento EJB (propriedades de configuração do built-in ClassClass)
7 Além dos mapeamentos apresentados, ainda é possível especificar a criação dos relacionamentos (associação, generalização, realização, dependência) entre os elementos do modelo de saída gerado pela execução da transformação. Por restrição de espaço, neste artigo é dada maior ênfase ao mapeamento de componentes, classes, interfaces, atributos e operações. A Figura 5 mostra a interface gráfica da máquina de transformações Odyssey- MDA. Na árvore localizada no lado esquerdo da interface pode ser visto o modelo PIM, inicialmente desenvolvido e marcado em uma ferramenta CASE qualquer e importado via XMI. Após escolher a transformação desejada, o usuário pode selecionar os modelos de entrada, de saída e a direção da transformação (forward ou reverse). A transformação é, então, realizada e o modelo PSM pode ser exportado, em formato XMI, para uma ferramenta de geração de código como a Odyssey-MDA-codegen [Odyssey 2005], ou alguma outra ferramenta CASE qualquer. Figura 5. Modelos PIM e PSM na máquina Odyssey-MDA 6. Trabalhos Relacionados Dentre as abordagens existentes a respeito de transformações de modelos, destacam-se a Model Transformation Framework [MTF 2004], e a UML Model Transformation Tool [UMT 2004]. O MTF é um conjunto de ferramentas que apóia o desenvolvedor na realização de comparações, verificação de consistência e implementação de transformações entre modelos UML. A infra-estrutura de armazenamento e manipulação dos modelos é realizada em EMF (Eclipse Modeling Framework). A Odyssey-MDA, diferentemente do MTF, manipula modelos desenvolvidos em qualquer ferramenta CASE ou ambiente de desenvolvimento que utiliza os padrões MOF/JMI/XMI. O UMT é uma ferramenta para transformação e geração de código para modelos UML/XMI. No UMT, transformações são definidas em XSLT/Java e manipulam os modelos através de representações XMI simplificadas (XMI Light). Além disso, o UMT não suporta a definição de transformações bidirecionais. Czarnecki e Helsen (2003) propõem uma classificação de outras abordagens existentes de transformações entre modelos. As abordagens são classificadas em 5 principais grupos: manipulação direta, relacional, baseadas em transformações de grafos, dirigidas à estrutura e híbridas. Com base nessa classificação, a abordagem Odyssey-MDA é híbrida, pois combina características dirigidas à estrutura (built-ins) com manipulação direta (plug-ins).
8 7. Conclusão Este artigo apresenta a abordagem Odyssey-MDA a qual permite que modelos de componentes elaborados de forma independente de plataforma sejam transformados em modelos específicos para uma plataforma. A abordagem é apoiada pela máquina de transformações Odyssey-MDA, desenvolvida em linguagem Java, com as seguintes características: (1) independência de ambiente de desenvolvimento, pois utiliza XMI como formato de representação para transporte; (2) possibilidade de executar transformações bidirecionais; e (3) facilidade de extensão, provendo mecanismos genéricos (built-ins) e a possibilidade de definição de novas transformações (plug-ins). Atualmente, a máquina de transformações Odyssey-MDA utiliza modelos UML, mas futuramente espera-se que seja possível transformar qualquer modelo, cujo metamodelo seja baseado no MOF. Está sendo desenvolvido um exemplo completo de transformações de um modelo de classes PIM em um modelo EJB. O modelo EJB gerado pode ser utilizado em conjunto com outras ferramentas de geração de código e engenharia reversa, representando assim uma solução mais ágil ao desenvolvimento de software. É previsto ainda um estudo de caso para avaliar a máquina de transformações em situações reais. Referências Czarnecki, K., Helsen, S. (2003) Classification of Model Transformation Approaches. Proceedings of the 2nd OOPSLA Workshop on Generative Techniques in the Context of the Model Driven Architecture, USA, EDOC (2004) UML Profile For Enterprise Distributed Object Computing (EDOC) specification, OMG. Gardner, T., Griffin, C., Koehler, J., Hauser, R A Review of OMG MOF 2.0 Query / Views / Transformations Submissions and Recommendations towards the final Standard. OMG Document: ad/ JCP (2004) Java Metadata Interface (JMI) API 1.0 specification, Disponível em acesso em 23/09/2005. Kleppe, A., Warmer, J., Bast, W. (2003) MDA Explained: The Model Driven Architecture Practice and Promise. Boston, MA, Addison-Wesley, Matula, M. (2003) NetBeans Metadata Repository, Disponível em acesso em 23/09/2005. MDA (2003) Model Driven Architecture, OMG, Disponível em acesso em 23/09/2005. MOF (2002) Meta Object Facility (MOF) specification, version 1.4, OMG. MTF (2004) Model Transformation Framework, Disponível em acesso em 23/09/2005. Odyssey (2005) Disponível em acesso em 27/09/2005. Sametinger, J. (1997) Software Engineering with Reusable Components. Springer, UMT (2004) UMT-QVT UML Model Transformation Tool, Disponível em acesso em 23/09/2005. XMI (2002) XML Metadata Interchange (XMI) specification, v1.2, OMG.
Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML
Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML Natanael E. N. Maia, Ana Paula B. Blois, Cláudia M. Werner COPPE/UFRJ Programa de Engenharia de Sistemas e Computação Caixa Postal 68.511
Leia maisAumento da complexidade dos sistemas. aumento do nível de abstração
ODYSSEY-MDA: UMA ABORDAGEM PARA A TRANSFORMAÇÃO DE MODELOS Natanael Elias Nascimento Maia Orientadora: Cláudia Maria Lima Werner Março - 2006 1 Roteiro Introdução Arquitetura Orientada por Modelos Transformação
Leia maisModel Driven Development (MDD)
Model Driven Development (MDD) Mestrado em Engenharia de Produção e Sistemas Computacionais Profa. Adriana Pereira de Medeiros adrianamedeiros@puro.uff.br Sumário Introdução Desenvolvimento de Software
Leia maisMetamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo
Metamodelos para Banco de Dados Carlos Julian Menezes Araújo cjma@cin.ufpe.br Prof. Dr. Robson do Nascimento Fidalgo 1 Agenda Metadados MDA MOF Metamodelos CWM Pacote Relacional Referências 2 Metadados
Leia maisODYSSEY-MDA: UMA ABORDAGEM PARA A TRANSFORMAÇÃO DE MODELOS. Natanael Elias Nascimento Maia
ODYSSEY-MDA: UMA ABORDAGEM PARA A TRANSFORMAÇÃO DE MODELOS Natanael Elias Nascimento Maia DISSERTAÇÃO SUBMETIDA AO CORPO DOCENTE DA COORDENAÇÃO DOS PROGRAMAS DE PÓS-GRADUAÇÃO DE ENGENHARIA DA UNIVERSIDADE
Leia mais3 Tecnologias Relacionadas
Tecnologias Relacionadas 31 3 Tecnologias Relacionadas O objetivo deste capítulo é apresentar um resumo de cada tecnologia relacionada ao processo proposto nesta dissertação, mostrando suas principais
Leia mais4 Processo de Transformação
Tecnologias Relacionadas 43 4 Processo de Transformação Com a constante mudança nos requisitos (funcionais e não funcionais) do domínio da aplicação, há uma grande necessidade de que os sistemas estejam
Leia maisApresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:
Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: 8429016 Definição de MDA OMG (Object Management Group) propôs uma aplicação abrangente das práticas
Leia maisModel Driven Architecture. Centro de Informática/UFPE Fernando Trinta
Model Driven Architecture Centro de Informática/UFPE Fernando Trinta Roteiro Contexto Introdução Conceitos MDA Platform Independent Model Platform Specific Model Transformations Consequências Promessas
Leia maisDesenvolvimento Dirigido por Modelos: Ferramentas
DCC / ICEx / UFMG Desenvolvimento Dirigido por Modelos: Ferramentas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Existe MDD na prática? Poucos sistemas ainda são desenvolvidos usando a filosofia
Leia maisUm Processo Baseado em MDA para a Especialização de Mecanismos de Persistência
Fabio Seixas Marques Um Processo Baseado em MDA para a Especialização de Mecanismos de Persistência Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção do título de Mestre
Leia maisCertificação da Utilização de Padrões de Projeto no Desenvolvimento Orientado a Modelos
Certificação da Utilização de Padrões de Projeto no Desenvolvimento Orientado a Modelos Maria Cristina F. Gomes 1, 2, Maria Luiza M. Campos 1, Paulo F. Pires 1, 3, Linair M. Campos 4 1 Programa de Pós-graduação
Leia maisUma Abordagem para o Controle da Evolução de Software no Desenvolvimento Orientado a Modelos
Uma Abordagem para o Controle da Evolução de Software no Desenvolvimento Orientado a Modelos Chessman Kennedy Faria Corrêa 1 Leonardo G. P. Murta 1 Claudia M. L. Werner 1 1 Programa de Engenharia de Sistemas
Leia maisAplicação da Técnica de Tecelagem de Modelos na Transformação de Modelos na MDA
Alexandre dos Santos Mignon Aplicação da Técnica de Tecelagem de Modelos na Transformação de Modelos na MDA Dissertação apresentada à Escola Politécnica da Universidade de São Paulo para obtenção do Título
Leia maisTransformações e mapeamentos da MDA e sua implementação em três ferramentas.
Giuliano Luz Pigatti Caliari Transformações e mapeamentos da MDA e sua implementação em três ferramentas. Dissertação apresentada à Escola Politécnica da Universidade de São Paulo para obtenção do Título
Leia maisContexto. Motivação. variabilidade. variabilidade
Representação de Variabilidades em Componentes de Negócio no Contexto da Engenharia de Domínio Regiane Oliveira Ana Paula Blois Aline Vasconcelos Claudia Werner Roteiro Contexto Motivação Variabilidade
Leia maisBarbara Cristina Alves Silveira 1, Thiago Silva-de-Souza 2 INTRODUÇÃO REFERENCIAL TEÓRICO
ACASE SPEM: FERRAMENTA PARA INSTANCIAÇÃO DE PROCESSOS SPEM BASEADA NO ECLIPSE MODELING FRAMEWORK ACASE SPEM: AN ECLIPSE MODELING FRAMEWORK BASED TOOL FOR SPEM PROCESSES INSTANTIATION Barbara Cristina Alves
Leia maisFerramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes
Ferramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes Antônio Francisco do Prado Daniel Lucrédio e-mail: prado@dc.ufscar.br Resumo Este artigo apresenta a ferramenta CASE
Leia maisWorkCASE Toolkit: Uma Ferramenta de Suporte para Agile Model Driven Architecture
WorkCASE Toolkit: Uma Ferramenta de Suporte para Agile Model Driven Architecture Fabio Paulo Basso 1, Toacy Cavalcante Oliveira 1 1 Instituto de Informática Pontifícia Universidade Católica do Rio Grande
Leia mais4 ALBATROZ : Um ambiente para desenvolvimento de SMA
41 4 ALBATROZ : Um ambiente para desenvolvimento de SMA Resumo Neste capítulo será apresentado o processo de desenvolvimento do ambiente Albatroz. Cada ferramenta é detalhada indicando suas funcionalidades.
Leia maisOdyssey-VCS: Um Sistema de Controle de Versões Para Modelos Baseados no MOF
Odyssey-VCS: Um Sistema de Controle de Versões Para Modelos Baseados no MOF Hamilton Oliveira, Leonardo Murta, Claudia Werner COPPE/UFRJ Programa de Engenharia de Sistemas e Computação Caixa Postal 68511
Leia mais5 QCDTool: Uma Ferramenta para Avaliar a Qualidade do Design em Modelos
5 QCDTool: Uma Ferramenta para Avaliar a Qualidade do Design em Modelos Este capítulo apresenta a ferramenta desenvolvida para apoiar a aplicação, em diagramas de classes, de mecanismos de análise da qualidade
Leia mais6 Ferramenta para a Especialização de Mecanismos de Persistência
Ferramenta para a Especialização de Mecanismos de Persistência 71 6 Ferramenta para a Especialização de Mecanismos de Persistência 6.1. Introdução Esta ferramenta foi desenvolvida para viabilizar o processo
Leia maisDesenvolvimento de software orientado a características e dirigido por modelos
Desenvolvimento de software orientado a características e dirigido por modelos Rodrigo Reis Pereira 1, Marcelo Almeida Maia 1 1 Faculdade de Computação Universidade Federal de Uberlândia (UFU) Uberlândia
Leia maisTutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto
Tutorial da ferramenta de modelagem ASTAH (Versão resumida) Prof. Moacyr Franco Neto Versão 1.0.0 1 ÍNDICE Sumário INTRODUÇÃO... 3 PRINCIPAIS CARACTERÍSTICA DA ASTAH... 3 COMO BAIXAR... 4 PRINCIPAIS FUNCIONALIDADES...
Leia maisINF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa
Leia maisOdyssey-PSW: Uma Ferramenta de Apoio à Verificação e Validação de Especificações de Restrições OCL
Odyssey-PSW: Uma Ferramenta de Apoio à Verificação e Validação de Especificações de Restrições OCL Alexandre L. Correa, Cláudia M. L. Werner COPPE/UFRJ Programa de Engenharia de Sistemas e Computação Caixa
Leia maisIntrodução à Análise e Projeto de Sistemas
Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise
Leia maisDesenvolvimento de SIG para Web utilizando MDA
Desenvolvimento de SIG para Web utilizando MDA Carlos Eduardo R. de Mello, Geraldo Zimbrão da Silva, Jano M. de Souza Programa de Engenharia de Sistemas e Computação Universidade Federal do Rio de Janeiro
Leia maisModelos formais em MDA
Modelos formais em MDA Modelo independente de computação (IM) Modelo independente de plataforma (PIM) Modelo específico de plataforma (PSM) Modelo de definição de plataforma (PDM) 39 IM (omputation Independent
Leia maisUm ambiente de suporte para uma linguagem de modelagem de sistemas multi-agentes
Richard Werneck de Carvalho Um ambiente de suporte para uma linguagem de modelagem de sistemas multi-agentes Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção do título
Leia maisModel-Driven Architecture
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Model-Driven Architecture Guilherme Potenciano Ricardo Cacheta Waldemarin SSC5944 - Arquitetura de Software (...) it might be
Leia mais2 O Modelo: SetModel. 2.1 Modelo de Informação
O Modelo: SetModel 2 O Modelo: SetModel 2.1 Modelo de Informação Modelo de informação é uma representação abstrata e formal de entidades incluindo suas propriedades, relações e operações que podem ser
Leia maisTransformação de modelos em processos de desenvolvimento de software
1068 X Salão de Iniciação Científica PUCRS Transformação de modelos em processos de desenvolvimento de software Vinycio de Correa Lunelli 1, Profa. Dra. Ana Paula Terra Bacelo 1 1 Faculdade de Informática,
Leia maisFOMDA ML: uma Linguagem de Modelagem para Especificação de Transformadores de Modelos na MDA
FOMDA ML: uma Linguagem de Modelagem para Especificação de Transformadores de Modelos na MDA Fabio Paulo Basso 1, Raquel Mainardi Pillat 1, Toacy Cavalcante Oliveira 2, Samy Lima Assy 1 1 ADAPIT Av. Ipiranga,
Leia maisEngenharia de Domínio e Desenvolvimento Baseado em Componentes. Processo DBC-Arch-DE Apoio do Ambiente Odyssey no Processo Considerações Finais
Um Processo de Engenharia de Domínio com foco no Projeto Arquitetural Baseado em Componentes Ana Paula Blois Cláudia Werner Karin Becker Agenda Motivação Engenharia de Domínio e Desenvolvimento Baseado
Leia maisUML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.
Leia maisAgenda Atual do Curso. Desenvolvimento Dirigido por Modelos (MDD) Abordagem MDD. Agenda da Aula. Abordagem MDD. Manutenção e Geração
Reuso de Software Aula 21 Agenda Atual do Curso Desenvolvimento Dirigido por Modelos (MDD) Aula 23 Data 28/05 Assunto Avaliação Experimental de Reuso 24 30/05 Semana da PPGCC (ñ há aula) 25 04/06 Apresentações
Leia maisEstudos de Caso Sistema de Sincronização dos Dados Acadêmicos do SAU e do AulaNet
Estudos de Caso 58 5 Estudos de Caso O primeiro estudo de caso apresentado é um sistema de sincronização de dados. Ele foi escolhido porque é totalmente voltado para a camada de persistência. O segundo
Leia mais7 Conclusão e Trabalhos Futuros
7 Conclusão e Trabalhos Futuros Como um novo e poderoso paradigma para o design e a implementação de sistemas de software (Lind, 2001;Wooldridge et al., 2001), o SMA requer metodologias, linguagens de
Leia maisFerramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos
Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos Eduardo Santana de Almeida Daniel Lucrédio Calebe de Paula Bianchini Antonio Francisco do
Leia mais6.1. Teste Baseado em Gramática e Outras Abordagens de Teste
6 Discussão Além das técnicas de teste usando modelos gramaticais, existem outras abordagens de teste funcional de sistemas que estão sendo estudadas pela comunidade científica. Algumas delas se dedicam
Leia mais3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks
48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para o
Leia maisDesenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2006 Profa. Dra. Itana Gimenes RUP: Projeto Artefatos Modelo de Projeto: Lista de classes de
Leia maisOdyssey-VCS. Introdução Motivação. Introdução Contexto. Agenda. Uma Abordagem de Controle de Versões para Elementos da UML
Odyssey-CS Uma de Controle de ersões para Elementos da UML Hamilton Luiz Rodrigues de Oliveira hamilton@cos.ufrj.br Orientação: Claudia Maria Lima Werner werner@cos.ufrj.br! proposta! 2 Introdução Contexto
Leia maisVisões Arquiteturais. Visões Arquiteturais
Visões Arquiteturais Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da Engenharia. Visões permitem reduzir a quantidade
Leia maisRun-Time Variability through Component Dynamic Loading
Run-Time Variability through Component Dynamic Loading Leonardo Murta, Aline Vasconcelos Ana Paula Blois, Marco Lopes Carlos Júnior, Marco Mangan Cláudia Werner Agenda Contexto e Motivação Variabilidades
Leia mais1.1. Declaração do Problema e Limitações dos Trabalhos Relacionados Um Framework Conceitual para SMAs
1 Introdução Os sistemas multiagentes (SMAs) estão tendo cada vez mais aceitação no setor da engenharia de software e no meio acadêmico como um paradigma para o desenvolvimento e a criação de sistemas
Leia maisIntrodução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão
Sumário Introdução à UML BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Humberto Mossri de Almeida hmossri_cursos@yahoo.com.br Marcelo Nassau Malta nassau_cursos@yahoo.com.br
Leia maisDesenvolvimento de Software Baseado em Componentes. Paulo C. Masiero
Desenvolvimento de Software Baseado em Componentes Paulo C. Masiero 1 Introdução Frustração com as promessas da Orientação a objetos em relação ao reuso de classes. Frameworks são uma solução para um domínio
Leia maisDesenvolvimento Baseado em Componentes e o Enfoque de Linha de Produtos
Desenvolvimento Baseado em Componentes e o Enfoque de Linha de Produtos Segundo Workshop de Desenvolvimento Baseado em Componentes Itana Maria de Souza Gimenes itana@din.uem.br Departamento de Informática
Leia maisSergio Roberto de Mello Canovas Carlos Eduardo Cugnasca WTA 2015
Sergio Roberto de Mello Canovas Carlos Eduardo Cugnasca WTA 2015 1 Introdução Motivação; MDE; Programas Adaptativos. SBMM; Metamodelo para Programas Adaptativos; Ferramenta CASE para Programas Adaptativos;
Leia maisIntrodução ao Catalysis
Introdução ao Catalysis Tópicos Avançados de Engenharia de Software João Bosco jbapf@cin.ufpe.br Roteiro Dificuldades Motivação Componentes Desenvolvimento Baseado em Componentes (DBC) Catalysis jbapf@cin.ufpe.br
Leia maisDIAGRAMAS DE CLASSE UML
DIAGRAMAS DE CLASSE UML Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Antes de mais nada... Calendário de Reposições Aula 1: 27/10/2017, 8h-10h, Sala 8 Aula 2: A verificar Aula 3: A verificar
Leia maisUSANDO ONTOLOGIAS NA CONSTRUÇÃO DE MODELOS MDA (MODEL-DRIVEN ARCHITECTURE)
USANDO ONTOLOGIAS NA CONSTRUÇÃO DE MODELOS MDA (MODEL-DRIVEN ARCHITECTURE) Jaguaraci Batista Silva 1 Milton Sampaio 2 Juliana Pezzin 3
Leia maisUsando a abordagem MDA no desenvolvimento de sistemas multi-agentes
Beatriz Alves De Maria Usando a abordagem MDA no desenvolvimento de sistemas multi-agentes Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção do título de Mestre pelo
Leia maisModelo de Componentes CORBA
Modelo de Componentes CORBA Cláudia Brito L. N. da Silva cblns@cin.ufpe.br Roteiro 1. Visão geral 2.! Definindo componentes! Implementando componentes! Empacotando componentes! Instalando componentes!
Leia maisAgenda da Aula. Reuso de Software. Tipos de Reuso. Potenciais Problemas. Vantagens de Reuso. Introdução a Reuso de Software
Reuso de Software Aula 02 Agenda da Aula Introdução a Reuso de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com Introdução a Reuso de Software Abordagens de Reuso
Leia maisGERADOR DE INTERFACES GRÁFICAS PARA IOS GABRIEL SEBASTIAN RAMIREZ JOYCE MARTINS
GERADOR DE INTERFACES GRÁFICAS PARA IOS GABRIEL SEBASTIAN RAMIREZ JOYCE MARTINS Introdução Objetivos Fundamentação teórica Especificação Implementação Operacionalidade Resultados e discussão Conclusão
Leia maisDesenvolvimento de Software Baseado em Componentes. Paulo C. Masiero
Desenvolvimento de Software Baseado em Componentes Paulo C. Masiero 1 Introdução Frustração com as promessas da Orientação a objetos em relação ao reuso de classes. Frameworks são uma solução para um domínio
Leia mais132 6 Conclusão 6.1. Contribuições da Tese
132 6 Conclusão Esta tese teve como objetivo principal o estudo da aplicação de transformações para manter a rastreabilidade de um sistema de software. Esta abordagem permite a captura automática das informações
Leia maisUERJ Oscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática
UERJ Oscar Luiz Monteiro de Farias 1 Bancos de Dados Mestrado em Engenharia de Computação área de concentração Geomática UERJ Oscar Luiz Monteiro de Farias 2 Conceitos de Sistemas de Banco de Dados e Arquitetura
Leia maisCurso de Sistemas de Informação. Karla Donato Fook DESU / DComp. Modelagem de Dados UML
Curso de Sistemas de Informação Karla Donato Fook karladf@ifma.edu.br DESU / DComp 2017 Modelagem de Dados UML 2 1 Eduardo Bezerra Editora Campus/Elsevier Porcentagem de projetos que terminam dentro do
Leia maisEngenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios
Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana
Leia maisCiência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo
Ciência da Computação Análise e Projeto Orientado a Objetos UML Anderson Belgamo 1 Evolução do Software O rápido crescimento da capacidade computacional das máquinas resultou na demanda por sistemas de
Leia maisAnálise de Sistemas. Aula 5
Análise de Sistemas Aula 5 Prof. Emerson Klisiewicz CONTEXTUALIZAÇÃO Aula 5 Análise Orientada a Objetos Introdução a UML Histórico e Visão Geral Ferramentas CASE O Sucesso... Clientes satisfeitos Eles
Leia maisUma meta-ferramenta de geração de diagramas utilizada na engenharia reversa de sistemas legados.
Rodnei Silva Couto Uma meta-ferramenta de geração de diagramas utilizada na engenharia reversa de sistemas legados. Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção
Leia maisVisão Geral da UML. SSC Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012
Visão Geral da UML SSC 121 - Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Conteúdo Introdução Ferramentas de Apoio Diagramas da UML Elementos Genéricos Material sobre UML
Leia maisUML (Unified Modelling Language)
UML (Unified Modelling Language) Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User Guide
Leia mais3 GenArch: Uma Ferramenta Baseada em Modelos para Derivação de Produtos de Software
35 3 GenArch: Uma Ferramenta Baseada em Modelos para Derivação de Produtos de Software Este capítulo apresenta a abordagem de derivação de LPS implementada pela ferramenta GenArch. A abordagem tem como
Leia maisOdyssey-CCS: Uma ferramenta flexível para o controle de modificações em software
Odyssey-CCS: Uma ferramenta flexível para o controle de modificações em software Luiz Gustavo B. Lopes 1,2, Leonardo Murta 1, Cláudia Werner 1 1 COPPE/UFRJ - Programa de Engenharia de Sistemas e Computação
Leia mais2. Trabalhos Relacionados
19 acase: Ambiente para Modelagem, Geração de Código e Engenharia Reversa de Software Orientado a Aspectos Thiago Silva-de-Souza¹, ², Wallace Santos Vialle Rettich², Danilo Ferreira Leite², Diego Cardozo
Leia maisProposta de Trabalho de Conclusão de Curso
UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO CURSO DE BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO Proposta de Trabalho de Conclusão de Curso Gerador de Código Automático Baseado em Diagramas de
Leia mais2 Metodologias para Projetos de Aplicações Hipermidia
2 Metodologias para Projetos de Aplicações Hipermidia O processo de desenvolvimento de aplicações é o objeto de diversas pesquisas, principalmente no caso das aplicações voltadas para a Internet, que diferem
Leia maisModelagem/Arquitetura de Software
Modelagem/Arquitetura de Software Thaís Vasconcelos Batista Objetivo do Curso Apresentar as tendências atuais para desenvolvimento de aplicações baseadas em componentes, oferecendo uma visão conjunta das
Leia maisTécnicas para Reutilização de Software
DCC / ICEx / UFMG Técnicas para Reutilização de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Panorama de Reutilização Frameworks Padrões de projeto Aplicações configuráveis Padrões de
Leia maisTópicos da Aula. Desenvolvimento Dirigido por Modelos (MDD) Reusar cada vez mais... Reusar cada vez mais... O que é modelagem? Reuso: Código x Modelos
Reuso de Software Aula 20 Tópicos da Aula Desenvolvimento Dirigido por Modelos (MDD) Introdução a UML Visão geral de alguns diagramas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com
Leia maisUML Visão Geral UML Visão geral v.1.1, Novembro de 2001
UML Visão Geral 1 Índice Introdução Diagramas O que é a UML? Diagrama de casos de utilização Valor da UML Diagrama de classes Origens da UML Diagrama de objectos Parceiros da UML Diagrama de componentes
Leia maispgmodeler: muito mais que um modelador de bancos de dados PostgreSQL
pgmodeler: muito mais que um modelador de bancos de dados PostgreSQL Raphael Araújo e Silva Bacharel em Ciência da Computação pela Universidade Federal do Tocantins; Há 12 anos atuando como Desenvolvedor
Leia maisINE 5612 Professor: Frank Siqueira. Leonardo Silva Jean Ercilio Thiago
INE 5612 Professor: Frank Siqueira Alunos: Gustavo de Geus Leonardo Silva Jean Ercilio Thiago DESENVOLVEDORES JAVA EM TODO MUNDO LIDER GAVIN KING JBOSS MANTEVE O SUPORTE História Hibernate foi criado por
Leia maisIntrodução à Engenharia de Software
Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia
Leia maisVisão Geral do RUP.
Visão Geral do RUP hermano@cin.ufpe.br Objetivos Apresentar as características RUP Discutir os conceitos da metodologia: fases, fluxos de atividades (workflows), iterações, responsáveis, atividades e artefatos
Leia maisespecificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje
1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria
Leia mais7 Conclusão e Trabalhos Futuros
Conclusão e Trabalhos Futuros 123 7 Conclusão e Trabalhos Futuros Esta dissertação apresenta a linguagem X-SMIL para autoria declarativa de documentos hipermídia. Nessa direção, o primeiro passo do trabalho
Leia maisModel Driven Development (MDD)
DCC / ICEx / UFMG Model Driven Development (MDD) Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Motivação para MDD Software é caro Os EUA sozinho investem mais de $250 bilhões em software Nos EUA,
Leia maisHibernate Anotations
Hibernate Anotations Fabio Luiz Oenning da Costa¹, Ricardo Minigucci¹ Universidade Paranaense (Unipar) Paranavaí PR Brasil fabiooenning@hotmail.com ricardominigucci@gmail.com Resumo. Este artigo apresenta
Leia maisSession Bean Stateful
Session Bean Stateful Componentes que mantém o estado dos seus atributos. Mantém os valores de seus atributos entre as várias chamadas de seus métodos de negócio (serviços). Mantém um relacionamento forte
Leia mais5 Modelo Conceitual de Teste
Modelo Conceitual de Teste 56 5 Modelo Conceitual de Teste Visando ilustrar a relação das informações de teste mencionadas no capitulo 3 e assim ajudar na atividade de gerência dos testes e na geração
Leia maisEngenharia de Software
Instituto Superior Politécnico de Ciências e Tecnologia Engenharia de Software Prof Pedro Vunge www.pedrovunge.com I Semestre de 2018 Capítulo 1 Introdução SUMÁRIO Engenharia de Software Definição; Objectivos
Leia maisAULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.
AULA 02 OBJETIVO: Características da Linguagem Orientada a Objetos. HABILIDADES TRABALHADAS: Comparação das características das linguagens orientadas a objetos frente às linguagens estruturadas. Conhecimentos
Leia mais1/26/2009. Metamodelo MMA. Metamodelo MMB. Modelo A2. Modelo A. Modelo B. Transformação M2M
Abstrações do mundo real Sistema e seu ambiente Com um propósito específico Simulação, geração de código No MDD Quem lê e entende o modelo é o computador Uma vez que o computador entenda o modelo... O
Leia maisTécnicas para Reutilização de Software Prof. Eduardo Figueiredo Estagiário: Johnatan Oliveira
Técnicas para Reutilização de Software Prof. Eduardo Figueiredo Estagiário: Johnatan Oliveira Panorama de Reutilização Frameworks Padrões de projeto Aplicações configuráveis Padrões de arquitetura Linha
Leia mais6 A Ferramenta de Medição e Avaliação
77 6 A Ferramenta de Medição e Avaliação Neste capítulo é apresentada a ferramenta AJATO, acrônimo para Ferramenta de Avaliação AspectJ 11. Esta ferramenta permite medir e avaliar sistemas implementados
Leia maisARES: Uma Ferramenta de Engenharia Reversa Java-UML
ARES: Uma Ferramenta de Engenharia Reversa Java-UML Gustavo Veronese, Alexandre Correa, Cláudia Werner 1 Felipe Jezini Netto 2 {veronese, alexcorr, werner}@cos.ufrj.br, fjezini@symprise.com 1 COPPE/UFRJ
Leia maisModelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus
Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis
Leia maisDesenvolvimento de software orientado a características e dirigido por modelos
Desenvolvimento de software orientado a características e dirigido por modelos Universidade Federal de Uberlândia Rodrigo Reis Pereira Prof. Dr. Marcelo Almeida Maia Agenda Motivação Introdução Modelagem
Leia maisSEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS
SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Prof. Dr. Daniel Caetano 2014-1 DISCUSSÃO Visão Geral dos Paradigmas Quais os paradigmas mais comuns? Do que é composto um programa
Leia maisProf. Me. Sérgio Carlos Portari Júnior
Prof. Me. Sérgio Carlos Portari Júnior Ambientes que visam desenvolver aplicações que precisam de um processamento paralelo e distribuído deverão saber lidar com algumas dificuldades. Isto decorre da heterogeneidade
Leia mais