Liberada Para Download a Primeira Versão do Esfinge AOM Role Mapper

Em áreas de negócio mais dinâmicas, a mudança e evolução do domínio de um sistema de software é algo natural e ocorre de forma frequente. Nesse cenário, é importante que a arquitetura da aplicação seja criada de forma a permitir que alterações possam ser feita de forma simples e rápida, de preferência sem mudanças no código fonte. O Modelo de Objetos Adaptativos (Adaptive Object Model ? AOM) é um estilo arquitetural que permite a criação de modelos de domínio mais flexíveis. Apesar de haverem diversos padrões documentados a respeito de AOMs, sua implementação é complexa e, devido a suas peculiaridades, muitas vezes não é possível a reutilização de outras implementações ou o auxílio de frameworks preexistentes. Essa dificuldade pode impedir uma adoção com sucesso desse estilo arquitetural.

O framework Esfinge AOM Role Mapper provê anotações de mapeamento que permitem que um modelo AOM específico da aplicação possa ser visto a partir de uma API uniforme. Dessa forma, frameworks reutilizáveis podem ser desenvolvidos com base nessa API e serem utilizados para implementações distintas do modelo AOM. O desacoplamento causado por essa arquitetura permite que a aplicação enxergue um modelo próximo de seu domínio e os frameworks enxerguem um modelo geral e uniforme. Esse tipo de abordagem tem o potencial de simplificar a implementação de sistemas com domínio dinâmico através da reutilização de componentes. Atualmente o framework dá suporte apenas aos padrões estruturais básicos de AOM e possui implementado um framework de persistência que utiliza o MongoDB como base de dados.

Já está disponível a primeira versão para download e a documentação explicando os conceitos básicos de AOM e como utilizar o framework.

Um artigo a respeito da abordagem utilizada no Esfinge AOM Role Mapper foi publicado no SBCARS 2012 e sua apresentação será realizada no dia 24 de setemebro no CBSoft em Natal!

O projeto Esfinge é um “guarda-chuva” para frameworks que utilizam metadados para buscar reduzir a quantidade de código e torna-lo mais desacoplado. Atualmente estão disponíveis o Esfinge QueryBuilder (gera consulta através da assinatura de métodos), o Esfinge Comparison (lista as diferenças entre duas instâncias da mesma classe) e o Esfinge AOM Role Mapper, que está sendo disponibilizado agora. Para acessar a página do projeto entre em http://esfinge.sourceforge.net/.

Não tem como rodar o plugin no Eclipse Juno ?

Não é um plugin, é um framework!

Não é um plugin, é um framework! [/quote]

Sim, algo como http://www.eclipsetotale.com/tomcatPlugin.html , o tomcat é um Framework !

Não é um plugin, é um framework! [/quote]

Sim, algo como http://www.eclipsetotale.com/tomcatPlugin.html , o tomcat é um Framework ![/quote]

Se o Tomcat é ou não um framework eu não vou me meter. O Esfinge não possui plugin pra IDE alguma.

Parabéns pela iniciativa, Guerra! Uma pena o Sourceforge ser bloqueado aqui no trabalho. Fiquei curioso para ver como ficou a implementação.

Sucesso!

Fugindo do tema do tópico: Esse é um ótimo exemplo do cara que “programa a IDE” e não a linguagem =(.

Parabens Guerra! Vou dar uma estudada!

É vamos esperar o Esfinge sair da abstração , uma dica é o site http://scala-ide.org/ que podemos ter como uma referencia em termos de produto, quem sabe http://Esfinge-ide.org no futuro.

Voce tem um projeto/exemplo de utilizacao do framework ? Acho que nao entendi muito bem o conceito, talvez um exemplo ajude.

Se você baixar o framework, ele vem com dois projetos de exemplo.

Os projetos não são demonstrados na documentação e outra observação não se sabe no que se referece o conceito de persistencia devido o exemplo mongodb, acredito que o Esfinge é uma campanha para um proposito comercial do que para um Open Source para seu uso.

Na verdade o principal propósito dos frameworks do projeto Esfinge é pesquisa. Eles se baseiam em ideias inovadoras para a resolução de problemas do desenvolvimento de software. Apesar de ser fruto de pesquisa, cada framework disponibilizado conta com uma bateria de testes automatizados e possui qualidade suficiente para o uso em aplicações comerciais.

Ao contrário do que foi dito, os frameworks possuem uma documentação bem completa no site.

[quote=Guerr@]
Ao contrário do que foi dito, os frameworks possuem uma documentação bem completa no site. [/quote]

Quando cases desse produto forem praticados por algum fornecedor que queira jogar suas fichas no Esfinge naturalmente vamos ouvir falar dele no mercado e nas empresas, melhores esclarecimento vão surgir porque vai sair do laboratório para sua adoção como solução, entretanto não se pode atestar qualidade vendendo fragmentos customizados(como componentes super inteligentes) sem mesmo entender o que as features do lado do cliente podem ou não entender, alguém quer redesenhar meu projeto dando previsões de requisitos, deve ser algum milagre.