Apresentação - Desenvolvimento Dirigido Em Modelos

Embed Size (px)

Citation preview

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    1/46

    DesenvolvimentoDirigido em

    modelos

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    2/46

    Alunos

    Eder Petrica, Eliton LuizScardin Perin, Yuri Karan Benevides

    Tomas

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    3/46

    Introduo

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    4/46

    Abstraes nodesenvolvimento Maiorfoco no design; Menorfoco na plataforma alvo.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    5/46

    Nos primrdiosMaior grau de abstrao

    Assembly e Fortran

    OS/360 e Unix

    Menor grau de abstrao

    Cdigo de mquina

    Programaodiretamente noHardware

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    6/46

    Motivos Pensare desenvolverem uma linguagem de mais

    alto nvel; Mais tempo pensando na soluo;

    Menostempo gasto em problemas paralelos: - especificidades da plataforma alvo.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    7/46

    PosteriormenteMaior grau de abstrao

    Orientao a objetos

    Menor grau de abstrao

    Programao

    procedural

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    8/46

    Modelos Abstraode conceitos; Captura de conhecimentoadquirido; Entendimentode problemas complexos e suas

    solues; Mais fcil reutilizao.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    9/46

    Utilizao damodelagem Atividade auxiliarao desenvolvimento Melhor visualizaode informaes

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    10/46

    DesenvolvimentoDirigido a Modelos Modelagem

    Principalatividade do desenvolvimento Cdigo-fonte

    Apenas a instanciao final.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    11/46

    Conceitos edefinies

    Importantes

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    12/46

    ModelosDefinio

    Conjunto coerente de

    elementos descrevendoalgo Captura de

    conhecimento adquiridodurante odesenvolvimento deforma abstrata

    Exemplo

    Programa em C++

    uma abstraoparauma linguagemcompreensvel pelohardware.

    No fim, os programasque criamos somodelos tambm.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    13/46

    Observao Cdigos-fonte podemser considerados modelos,

    mas noso utilizados desta maneira; Outros tipos de modelos possuem

    Maior nvel de abstrao

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    14/46

    OMG Object Management Group Grupo internacionalsem fins lucrativos Consrcios industriais

    Criae mantem especificaesdeinteroperabilidade de software

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    15/46

    UML Unified Modeling Language; Linguagemvisual para modelagemde software; Padroda indstria; Criada pela OMG; Capturam conhecimentosobre o sistema; Vrios nveis de abstrao;

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    16/46

    Meta-modelo Modelopara a criaode modelos; Modelode umalinguagemde modelagemonde

    so definidas suas: estruturas; semnticas, e; limitaes dos modelos

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    17/46

    MOF Meta-Object Facility; Padro OMG; Metadadose gerenciamentode modelos; Tambmespecifica como definir metamodelos.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    18/46

    MDD Model-Driven Developement; Paradigma de desenvolvimento de software Aumenta o nvel de abstrao Automoo na construo de software

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    19/46

    MDE Model-Driven Engeneering; Paradigma de desenvolvimento de software Aumenta o nvel de abstrao Automoo na construo de software

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    20/46

    MDE Model-Driven Engeneering; Paradigma de desenvolvimento de software Aumenta o nvel de abstrao Automoo na construo de software Gerar cdigo automaticamente de um modelo Criada da MDA

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    21/46

    MDA Model-Driven Architecture; Conjunto de padres da OMG Permite especificaes e transformaes de

    modelos Nveis de abstrao

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    22/46

    MDA Notaes bem definida fundamentam o

    entendimento de sistemas Construo organizada em conjunto de modelos Descrio de modelos facilitando a integrao

    entre os modelos Ampla adoo proporciona abertura aos

    consumidores e concorrncia entre fornecedores

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    23/46

    PIM Platform Independent Model No tem referncia para a plataforma da qual

    depende

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    24/46

    PSM Platform-Specific Model Resultado de uma manipulao de um PIM Especifica um PIM para uma plataforma

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    25/46

    Linguagem de

    Modelagem Especficasde domnio Representar Descritos com metamodelos Concentrada em representar os conceitos de

    projeto ligado ao domnio de aplicao Representa relaes e restries

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    26/46

    MDA gil Modelos so ligados Modelos so mapeados em nico modelo

    combinado

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    27/46

    Desenvolvimentodirigido a modelos

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    28/46

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    29/46

    Transformao deModelos Construo e transformao de modelos deve ser

    automatizada Diminui erros e esforo

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    30/46

    Desenvolvimento

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    31/46

    Desenvolvimento

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    32/46

    Ferramenta

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    33/46

    EIS Software Sistemas de Informao Empresarial

    os dados, que so processados para gerarinformaes de negcios

    funes do aplicativo, que transformam

    dados em informaes regras de negcios, que controlam e

    restringem a manipulao de dados porfunes

    Demandas de instalaes automticas de geraode cdigo do modelo EIS conceitual abstrato

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    34/46

    Fubaja

    uma ferramenta CASE de cdigo aberto qfornece aos desenvolvedores suporte pengenharia de software baseado em modelo e engenharia.

    Ela combina diagramas de classe UML, diagramde atividades UML, e uma linguagem transformao grfica (chamados Story Patterns

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    35/46

    Fubaja

    Oferece uma linguagem de especificao formavisual especifica completamente a estrutura e o

    comportamento de um sistema de softwarem desenvolvimento

    Com base nos modelos, especificaes estruture comportamentais o cdigo executvel s

    gerados (por exemplo, cdigo Java)

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    36/46

    Sirius Ferramenta para Eclipse Permite criar bancadas de modelagem grfica

    personalizadas baseados em modelos Composta de um conjunto de editores do

    Eclipse (diagramas, tabelas e rvores) quepermitem aos usurios criar, editar evisualizar modelos EMF (Eclipse ModelingFramework)

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    37/46

    Sirius Regras e aes usando as descries declarativas

    de validao. Usado principalmente para projetar sistemas

    complexos (sistemas industriais ou aplicaes de

    TI)

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    38/46

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    39/46

    Sirius Usado principalmente para projetar sistemas

    complexos (sistemas industriais ou aplicaes deTI)

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    40/46

    Criticas

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    41/46

    Criticas No frequntemente utilizada Ainda no h uma definio clara de como

    implementar esta tcnica

    Necessita de evoluo e reestruturao continuas.

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    42/46

    ConsideraFinais

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    43/46

    Consideraes

    Finais Permite que os engenheiros pensem em sistemas

    em alto nvel de abstrao, sem preocupao comdetalhes de implementao

    Reduz a probabilidade de erros, acelera o processo

    de projeto e implementao e permite a criao demodelos de aplicao reusveis, independentes deplataforma

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    44/46

    Consideraes

    Finais Implementaes do sistema podem ser geradas

    para diferentes plataformas a partir do mesmomodelo

    Adaptar o sistema a uma nova tecnologia de

    plataforma, necessrio apenas escrever umtradutor para essa plataforma

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    45/46

    Consideraes

    Finais Abstraes apoiadas pelo modelo nem sempre

    so corretas para a implementao Argumentos para a independncia da plataforma

    so vlidos apenas para sistemas de grande porte

    e duradouros

  • 7/25/2019 Apresentao - Desenvolvimento Dirigido Em Modelos

    46/46

    ObrigadoPerguntas