Desenvolvimento de Software Dirigido a Modelos - PowerPoint PPT Presentation

About This Presentation
Title:

Desenvolvimento de Software Dirigido a Modelos

Description:

Desenvolvimento de Software Dirigido a Modelos Monique Soares – PowerPoint PPT presentation

Number of Views:101
Avg rating:3.0/5.0
Slides: 35
Provided by: powerpoi95
Category:

less

Transcript and Presenter's Notes

Title: Desenvolvimento de Software Dirigido a Modelos


1
Desenvolvimento de Software Dirigido a Modelos
  • Monique Soares

2
Agenda
  • Introdução
  • Arquitetura Dirigida a Modelos
  • Abordagens MDD
  • Problemas e Desafios dos Processos MDD
  • Considerações Finais

3
Objetivo Geral do Capítulo
  • Apresentar o processo MDD padronizado pela MDA do
    OMG e sua relevância para a elevação da qualidade
    do processo de Engenharia de Software e do
    produto.

4
Introdução
  • Modelar é uma atividade essencial da Engenharia
    de Software
  • Na década de 1970 os métodos formais difundiram o
    desenvolvimento de software a partir de modelos
    formais matemáticos
  • Em 2001 o OMG especificou a MDA, definindo assim
    uma nova instância do processo MDD

5
Introdução
  • Principais argumentos para a utilização de MDD
  • Maior produtividade
  • Portabilidade
  • Interoperabilidade
  • Menor custo
  • Mais facilidade na evolução do software

Maior qualidade do produto
6
Introdução
  • Isso ocorre pelas seguintes razões
  • Principal idéia em MDD transformação de modelos
    de maiores níveis de abstração em modelos mais
    concretos, até se obter o código do sistema
  • Desenvolvimento inicial e modificações futuras
    devem ser efetuados apenas no modelo mais
    abstrato

7
Introdução
  • Indústrias de software e empresas de ferramentas
    CASE transmitem as falsas idéias de que
  • em MDD com um click obtém-se todas as
    transformações de modelos até se chegar ao
    produto final de software
  • Gerar código é o principal objetivo MDD
  • Quando de fato o principal objetivo MDD é
    transformar modelos.

8
Introdução
  • Não há um consenso na comunidade acadêmica sobre
    qual modelo de maior nível de abstração é mais
    adequado para se modelar um sistema

9
Arquitetura Dirigida a Modelos
  • Conceitos Básicos
  • Modelo representação funcional, estrutural e
    comportamental
  • Dirigido a Modelos Provê meios de usar modelos
    para direcionar o curso de entendimento
  • Arquitetura Especificação de partes e conectores
    de um sistema
  • Ponto de Vista Uma técnica de abstração

10
Arquitetura Dirigida a Modelos
  • Conceitos Básicos
  • Plataforma Conjunto de subsistemas e
    tecnologias que provê um conjunto coerente de
    funcionalidade
  • Pontos de Vista (Modelos) MDA
  • Modelo Independente de Computação (CIM)
  • Modelo Independente de Plataforma (PIM)
  • Modelo Específico de Plataforma (PSM)
  • Transformações (Mapeamentos)
  • Transformações e Mapeamentos em MDA

11
Arquitetura Dirigida a Modelos
  • Transformações em MDA

12
Arquitetura Dirigida a Modelos
  • Metamodelo MDA

13
Arquitetura Dirigida a Modelos
  • Transformações de Mapeamentos por Metamodelos

14
Arquitetura Dirigida a Modelos
  • Padrões OMG e a Arquitetura MDA
  • MDA visa proporcionar benefícios como
  • Aumentar a produtividade
  • Melhorar a portabilidade
  • Interoperabilidade
  • Para atingir esses objetivos e separar os níveis
    de abstração, MDA foi definida pela OMG em três
    camadas

15
Arquitetura Dirigida a Modelos
  • Padrões OMG e a Arquitetura MDA

16
Abordagens MDD
  • OO-Method
  • Primeira versão em 1992 na tese de PhD de Oscar
    Pastor, juntamente com OASIS
  • Cobre todas as fases de desenvolvimento de
    software
  • O centro do desenvolvimento de sofware dirigido
    por modelos é o Esquema Conceitual, fundamentado
    na seguinte afirmação do professor Antoni Olivé
  • Para desenvolver um sistema de informação é
    necessário e suficiente definir seu esquema
    conceitual

17
Abordagens MDD
  • OO-Method
  • O Processo Básico de Transformação
  • Distinção clara entre o espaço problema e solução

18
Abordagens MDD
  • OO-Method
  • Comparação com MDA
  • Propriedades do OO-Method ausentes na MDA
  • O processo de compilação de modelos
  • Modelos do esquema conceitual computacionalmente
    completos

19
Abordagens MDD
  • OO-Method
  • O Modelo Conceitual
  • Quatro visões que representam os requisitos
    funcionais
  • modelo objeto,
  • modelo dinâmico,
  • modelo funcional e
  • modelo de apresentação

20
Abordagens MDD
  • OO-Method
  • O Modelo Conceitual
  • Quatro visões que representam os requisitos
    funcionais
  • modelo objeto
  • Especifica as propriedades estáticas do sistema,
    definido pelo diagrama de configuração de classe

21
Abordagens MDD
  • OO-Method
  • O Modelo Conceitual
  • Quatro visões que representam os requisitos
    funcionais
  • modelo dinâmico
  • Representa o comportamento do sistema,
    especificando suas propriedades dinâmicas através
    de dois diagramas
  • Diagrama de Transição de Estado
  • Diagrama de Interação de Objeto

22
Abordagens MDD
  • OO-Method
  • O Modelo Conceitual
  • Quatro visões que representam os requisitos
    funcionais
  • modelo funcional
  • Especifica o relacionamento estático e dinâmico
    através de
  • Definição semântica relacionada às transações de
    estado
  • Descrição de como a execução dos eventos muda o
    valor dos atributos das classes

23
Abordagens MDD
  • OO-Method
  • O Modelo Conceitual
  • Quatro visões que representam os requisitos
    funcionais
  • modelo de apresentação
  • Especifica os requisitos de interface de usuário,
    modelando uma interface abstrata que é
    independente de plataforma

24
Abordagens MDD
  • OO-Method
  • O Modelo Conceitual
  • Suporte a interoperabilidade e interface do
    sistema modelado com outros sistemas externos
  • Com os quatro modelos básicos do esquema
    conceitual tem-se toda a infra-estrutura
    necessária para representar o sistema no contexto
    do espaço problema

25
Abordagens MDD
  • OO-Method
  • O Compilador de Modelos
  • O OO-Method segue o processo ideal MDD de
    transformação de modelos
  • Precisa transformar o modelo conceitual em um
    modelo de implementação
  • Compilador de Esquema Conceitual gt Máquina de
    virtual de programação
  • O OO-Method trata de modo completo e preciso
    todos os aspectos da compilação de modelo

26
Abordagens MDD
  • OO-Method
  • OLIVANOVA
  • É uma ferramenta de apoio ao OO-Method
  • Care Technologies
  • É composta de duas principais ferramentas o
    modelador e a máquina de transformação

27
Abordagens MDD
  • AndroMDA
  • É uma ferramenta MDA OpenSource
  • Desenvolvida sobre o Eclipse
  • Possibilita a definição de transformação de
    modelos PIM para PSM para depois atingir a
    geração de código fonte
  • É possível gerar componentes para várias
    linguagens

28
Abordagens MDD
  • AndroMDA
  • Não provê recursos de definição abstrata de
    interface usuário
  • Usa conceito de sincronização de modelos (PIM e
    PSM)
  • Trata questões de rastreabilidade e validação de
    modelos de forma limitada

29
Problemas e Desafios dos Processos MDD
  • Visão Geral
  • Nível de maturidade insuficiente para se ter um
    produto final de software com qualidade e 100
    gerado automaticamente a partir dos requisitos
  • Muitos desafios devem ser superados
  • MDA é apenas uma referência, pode ser usada por
    outro processo de desenvolvimento de software

30
Problemas e Desafios dos Processos MDD
  • Lições Aprendidas na Adoção de Soluções MDA
  • Muitas organizações perceberam um conjunto de
    práticas e passos consistentes
  • Examinar os modelos atualmente usados na empresa
  • Identificar as transformações candidatas para a
    automação
  • Especificar os requisitos dessas transformações
  • Criar os UML Profiles necessários
  • Desenvolver o código da transformação
  • Esboçar documentos de uso, empacotar e distribuir

31
Problemas e Desafios dos Processos MDD
  • O Programa FastStart da OMG
  • Foi lançado pelo OMG
  • Ajuda as organizações a aprender e aplicar MDA
  • Na arquitetura de seus sistemas
  • Na integração dos sistemas
  • Nos seus processos de desenvolvimento de software

32
Considerações Finais
  • MDD, conforme a arquitetura MDA, foi concebido
    para alcançar os seguintes benefícios
  • Produtividade
  • Qualidade
  • Interoperabilidade
  • Portabilidade
  • Redução de Custos

33
Considerações Finais
  • Outros processos de desenvolvimento de software
    também tem essas metas
  • Nenhum deles consegue alcançá-las com mais
    efetividade do que o processo dirigido a modelos
  • Em MDD já está explícita a idéia de automatização

34
Dúvidas
Write a Comment
User Comments (0)
About PowerShow.com