Abordagem de desenvolvimento MDA         Natã Venâncio de Melo       (natanvm@dsc.ufcg.edu.br)
Agenda       Motivação       Um Exemplo Simples       Processo de MDD/MDA       Demonstração de geração de código    ...
Motivação       Alguns aspectos do processo de desenvolvimento de        software tradicional apresentam problemas na for...
Um Exemplo Simples                                            1.   public class Usuario {                                 ...
Um Exemplo Simples                                         1.   public class User {                                       ...
Um Exemplo Simples                                         1.   public class Usuario {                                    ...
Um Exemplo Simples                                           1.   public class User {                                     ...
Um Exemplo Simples                                           1.   public class User {                                     ...
Processo MDD/MDA       MDD – Model Driven Development       MDA – Model Driven Architecture       Proposta da OMG      ...
Framework MDAPIM                     PIM - Platform Independent Model10      Abordagem de desenvolvimento MDA - Natã Venân...
Framework MDAPIMPSM                       PSM – Platform Specific Model                     PIM - Platform Independent Mod...
Framework MDAPIMPSM      Code                     PIM - Platform Independent Model                                 PSM – P...
MDA – Transformação    Ferramenta de transformação                                   PIM    Definição de transformação  ...
Demonstração    Transformação Textual (Modelo para código)         Meta-Modelo                 Transformação            F...
Considerações Finais    A abordagem MDA vem evoluindo a cada ano    Exemplos de ferramentas que produzem programas     b...
Dúvidas?16         Abordagem de desenvolvimento MDA - Natã Venâncio
Grupo PET Computação     Obrigado                              Platéia                                        Anderson Led...
Abordagem de     desenvolvimento MDA              Natã Venâncio        (natanvm@dsc.ufcg.edu.br)              Anderson Led...
Upcoming SlideShare
Loading in …5
×

MDA - Model Driven Architecture

1,211 views
1,116 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,211
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

MDA - Model Driven Architecture

  1. 1. Abordagem de desenvolvimento MDA Natã Venâncio de Melo (natanvm@dsc.ufcg.edu.br)
  2. 2. Agenda Motivação Um Exemplo Simples Processo de MDD/MDA Demonstração de geração de código Considerações Finais Dúvidas 2 Abordagem de desenvolvimento MDA - Natã Venâncio
  3. 3. Motivação Alguns aspectos do processo de desenvolvimento de software tradicional apresentam problemas na forma como são abordados. São eles:  Produtividade  Portabilidade  Manutenção  Documentação 3 Abordagem de desenvolvimento MDA - Natã Venâncio
  4. 4. Um Exemplo Simples 1. public class Usuario { 2. private String nome; 3. private String login; 4. private String senha; 5. public String getLogin( ){ 6. return this.login 7. } 8. public void setSenha (String senha){ 9. this.senha = senha; 10. } 11. public String getSenha (){ 12. return this.senha; 13. } 14. public String getNome (){Desenvolvimento com foco no 15. return this.nome; 16. } código (implementação)! 17. } 4 Abordagem de desenvolvimento MDA - Natã Venâncio
  5. 5. Um Exemplo Simples 1. public class User { 2. private String name; 3. private String login; X 4. private String password; 5. public String getLogin( ){ 6. return this.login 7. } 8. public void setPassword (String password){ 9. this.password = password; 10. } 11. public String getPassword (){ 12. return this.password; 13. }Desenvolvimento com foco no 14. public String getName (){ 15. return this.name; código (implementação)! 16. } 17. } 5 Abordagem de desenvolvimento MDA - Natã Venâncio
  6. 6. Um Exemplo Simples 1. public class Usuario { 2. private String name; 3. private String login; 4. private String password; X 5. private String address; 6. public String getLogin( ){ 7. return this.login 8. } X 9. public void setPassword (String password){ 10. this.password = password; 11. } 12. public String getPassword (){ 13. return this.password; 14. } 15. public String getName (){ 16. return this.name; 17. }Desenvolvimento com foco no 18. public String getAddress(){ 19. return this.address; código (implementação)! 20. } 21. } 6 Abordagem de desenvolvimento MDA - Natã Venâncio
  7. 7. Um Exemplo Simples 1. public class User { 2. private String name; 3. private String login; 4. private String password; 5. public String getLogin( ){ 6. return this.login 7. } 8. public void setPassword (String password){ 9. this.password = password; 10. } 11. public String getPassword (){ 12. return this.password; 13. }Desenvolvimento com foco nos 14. public String getName (){ 15. return this.name; modelos (modelagem)! 16. } 17. } 7 Abordagem de desenvolvimento MDA - Natã Venâncio
  8. 8. Um Exemplo Simples 1. public class User { 2. private String name; 3. private String login; 4. private String password; 5. private String address; 6. public String getLogin( ){ 7. return this.login 8. } 9. public void setPassword (String password){ 10. this.password = password; 11. } 12. public String getPassword (){ 13. return this.password; 14. } 15. public String getName (){ 16. return this.name;Desenvolvimento com foco nos 17. } modelos (modelagem)! 18. public String getAddress(){ 19. return this.address; 20. } 21. 22. } 8 Abordagem de desenvolvimento MDA - Natã Venâncio
  9. 9. Processo MDD/MDA MDD – Model Driven Development MDA – Model Driven Architecture Proposta da OMG  Propor uma mudança de paradigma Focar o desenvolvimento do software em modelos  Modelos não são apenas documentos para auxiliar o desenvolvimento de software, eles são o próprio software 9 Abordagem de desenvolvimento MDA - Natã Venâncio
  10. 10. Framework MDAPIM PIM - Platform Independent Model10 Abordagem de desenvolvimento MDA - Natã Venâncio
  11. 11. Framework MDAPIMPSM PSM – Platform Specific Model PIM - Platform Independent Model11 Abordagem de desenvolvimento MDA - Natã Venâncio
  12. 12. Framework MDAPIMPSM Code PIM - Platform Independent Model PSM – Platform Specific Model12 Abordagem de desenvolvimento MDA - Natã Venâncio
  13. 13. MDA – Transformação Ferramenta de transformação PIM Definição de transformação  Regras de transformação PSM Transformações são escritas em:  ATL, MOFScript, MOF2Text, … Code 13 Abordagem de desenvolvimento MDA - Natã Venâncio
  14. 14. Demonstração Transformação Textual (Modelo para código) Meta-Modelo Transformação Fonte em MOFScript Tool Modelo Fonte Tool Código Tool 14 Abordagem de desenvolvimento MDA - Natã Venâncio
  15. 15. Considerações Finais A abordagem MDA vem evoluindo a cada ano Exemplos de ferramentas que produzem programas baseados em MDA: OPTIMALJ, MEGARA e ANDROMDA RUP – Rational Unified Process Pesquisas (GMF)  MetaCG (Download)  UDT (Download) 15 Abordagem de desenvolvimento MDA - Natã Venâncio
  16. 16. Dúvidas?16 Abordagem de desenvolvimento MDA - Natã Venâncio
  17. 17. Grupo PET Computação Obrigado Platéia Anderson Ledo17 Abordagem de desenvolvimento MDA - Natã Venâncio
  18. 18. Abordagem de desenvolvimento MDA Natã Venâncio (natanvm@dsc.ufcg.edu.br) Anderson Ledo (ledo@dsc.ufcg.edu.br)18 Abordagem de desenvolvimento MDA - Natã Venâncio

×