Informações Principais
     Resumo
     Abstract
     Introdução
     Conclusão
     Download
  
  
  
 
Introdução
 
 
Acadêmico(a): Leandro Salvatti Piscke
Título: Framework em Java para Geração de Telas no Modelo Crud Baseado em Xml e Objetos Remotos Utilizando a Arquitetura MVC e Padrões
 
Introdução:
Com a evolução dos sistemas de informação, diariamente tem-se deparado com arquiteturas de software complexas, que são desafios para projetistas e desenvolvedores. Sistemas mal arquitetados e sem uso de padrões no desenvolvimento podem acarretar vários problemas na solução final. Segundo Ahmed e Umrysh (2003, p. 5), sistemas desenvolvidos misturando camadas como regras de negócio, visualização e persistência trazem limites impostos na reutilização dessas partes, por essas estarem fortemente acopladas. Sistemas de informação possuem em sua maior parte consulta, alteração e exclusão de dados. De acordo com Cockburn (2005, p. 145), essas funcionalidades seguem o modelo CRUD. Geralmente esse modelo repete-se em várias partes do sistema. A duplicação de funcionalidades pode consumir tempo no desenvolvimento de funções já conhecidas além de gerar outros problemas no projeto, como rotinas repetidas contendo a mesma solução e telas desenvolvidas sem uma padronização. No desenvolvimento de software, na fase de análise, Cockburn (2005, p. 145) descreve que ao invés de fazer vários casos de uso para cada modelo CRUD, pode-se escrever um caso de uso parametrizado, sendo possível assim representar vários casos de uso CRUD a partir de um modelo. Tendo como base as idéias de Cockburn, esse trabalho tem como objetivo facilitar o desenvolvimento do modelo CRUD em sistemas de informações. O trabalho elabora um framework em Java, para a geração automática de telas no modelo CRUD usando uma arquitetura no padrão MVC2. Os parâmetros de entrada para o framework são arquivos XML, contendo as definições de telas no modelo CRUD, e objetos no padrão DTO3, possuindo os dados que são mostrados na tela gerada. Os arquivos XML contendo as definições das telas devem ser criados pelo próprio usuário do framework, assim como os DTO, que podem ser implementados como objetos relacionais que mapeiam a estrutura de uma tabela do banco de dados, ou como objetos que contenham valores extraídos de outra fonte de dados. O framework implementa as três camadas da arquitetura MVC. A camada do modelo é desenvolvida utilizando a plataforma JavaEE e alguns padrões de projetos, tais como Data Access Object, Transfer Object, Session Facade e Business Object. Essa camada provê a lógica de negócios do framework, sendo responsável por expor serviços que possibilitem o acesso remoto às definições da tela, gerenciamento da persistência e acesso aos DTO. A camada da visão é responsável por gerar uma tela CRUD a partir do XML provido pela camada de modelo. Na camada de visão é usada uma biblioteca gráfica chamada Thinlet4, que implementa facilidades para o desenvolvimento de telas tendo como definição um arquivo XML. A ligação entre a camada da visão e a camada do modelo é feita pela camada de controle, a qual requisita a definição da tela e o DTO ao modelo, relacionando a tela gerada com os dados do DTO. Essa camada implementa padrões de projetos como: Service Locator e Business Delegate. Gamma et al. (2000, p. 42) afirma que um framework captura as decisões de projetos que são comuns ao domínio de aplicação. Assim, frameworks enfatizam reutilização de projetos em relação à reutilização de código. Com o uso de frameworks pode-se construir aplicações mais rapidamente, permitindo que desenvolvedores concentrem-se na parte pertinente do projeto, como a lógica de negócio. Uma questão importante do framework proposto está associada à economia de tempo no desenvolvimento de um sistema de informação. Através do mesmo pretende-se disponibilizar uma infra-estrutura para facilitar a construção de telas no modelo CRUD, de forma que bastará definir uma tela através de um arquivo XML, programar um objeto no padrão DTO e utilizar o framework para fazer a ligação do DTO à tela gerada.