demoiselle frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...projeto demoiselle...

25
Demoiselle Framework Palestrante: Flávio Gomes da Silva Lisboa JUN/2009

Upload: others

Post on 10-Sep-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

DemoiselleFramework

Palestrante: Flávio Gomes da Silva Lisboa JUN/2009

Page 2: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Introdução• Desenvolvimento de TI para Governo• Elementos de Decisão• Estratégia para a área de tecnologia• Diretivas da Arquitetura Tecnológica• Preliminares MetodológicasProjeto Demoiselle• Objetivos• Processo• Framework Integrador• Componentes• Ferramentas de Produtividade• Estrutura da Comunidade• Ecossistema Demoiselle• Roadmap 2009

SumárioSumário

Page 3: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Desenvolvimento de TI paraGoverno

... de equipes

... de clientes

... de plataformas

... de demandas

... de pessoas

... de recursos

Envolve diversidade...

Page 4: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Elementos de Decisão

Atores institucionaisServidor público (trabalhador do conhecimento), firmas e cidadãos

Globalidade, conexão, mobilidade e facilidade de acesso

Conhecimento maduro Preferível às soluções ad hoc

IntegraçãoEliminação do insulamento dos sistemasBusca e recuperação de informaçãoPreservação de identidade e privacidade

Escalabilidade

Sustentabilidade

Page 5: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Estratégia para a área de tecnologia

Evoluir a cultura de desenvolvimento de aplicações

Compartilhado, integrado, produtivo e gerenciável− Tecnologias Abertas (Java, PHP, Gnome, padrões,

melhores práticas, MVC, etc)

Capacidade de manutenção e extensão próprias

Definir uma infraestrutura tecnológica de aplicações

Distribuída, escalável e habilitada para a WEB

Alta disponibilidade, preparada para contingência

Baixo custo de propriedade

Alinhamento com o movimento de software livre

Page 6: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Diretivas da Arquitetura Tecnológica

Arquitetura de referência do projeto Demoiselle1. Computação distribuída2. Aplicações baseadas em componentes3. Processos orientados a eventos4. Acoplamento fraco de funções de negócio5. Infraestrutura para suporte a decisões6. Automação de processos7. Acesso por Internet8. Software livre

Page 7: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Preliminares Metodológicas

● Abordagem integrada ● Processos;● Tecnologia; e● Pessoas

● Disciplinas● Engenharia de software baseada em modelos (OMG)● Arquitetura de software● Processo de software

● Projeto Demoiselle

Page 8: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Projeto Demoiselle

Plataforma de desenvolvimento de software para governoI. Processo de softwareII. Framework de software (arquitetura e integração)III. Desenvolvimento e acesso a componentes de

microarquiteturas de funções "on demand" (APIs e Plug-ins)IV. Ferramentas de produtividadeV. Ambiente de integração contínuaVI.Desenvolvimento em comunidade

Page 9: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Objetivos:

* Redução do custo das aquisições

* Aumento da produtividade

* Orientação do mercado por indução

» - Racionalidade da regulação

* Eliminação do insulamento dos sistemas

* Integração horizontal de processos

* Viabilização da adoção do conceito de macroprocessos

Projeto Demoiselle

Page 10: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

• Entregas curtas e úteis• Cuidado com a arquitetura e adoção de padrões para

minimizar riscos.• Agilização do ciclo de desenvolvimento• Adaptado para emprego do framework de software• Melhor administração da complexidade (ciclo iterativo)

• Redução da burocracia• Maior visibilidade do projeto para o cliente• Formalização apenas nos pontos essenciais• Adequado ao ciclo de projetos baseado em OO/Java• Antecipação nos testes (foco na qualidade do produto)

Princípios do Processo

Page 11: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Framework IntegradorFramework Integrador

Framework Integrador

• Eclipse – IDE desenvolvimento• Jasper e iReport – relatórios• Hibernate – serviço de

persistência OO/Relacional• Sun JSF – Tomahawk, RichFaces• Bouncy Castle – criptografia• AspectJ – plugin Eclipse para

Aspectos• JBoss – servidor de aplicação

JEE• Mule – Enterprise Service Bus• Xstream – manuseio de XML• CGLIB - segurança • Maven – documentação

automatizada• Log4J – geração de logs• SQLADA – conector micro-

mainframe

Page 12: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Arquitetura do Framework

Page 13: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Arquitetura da Aplicação

Page 14: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Ferramentas de Produtividade

• AspectJ para o Eclipse• Plugins para desenvolvimento inicial rápido, integrantes

da IDE Eclipse do Demoiselle

Page 15: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Conjunto de componentes com ciclo de vida independente

Não geram dependência obrigatória nas aplicações geradas

Podem ser construídos colaborativamente Devem ser facilmente acoplados à aplicação

Reuso e Geração automática de código

Page 16: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

A geração de código automática deve ser encarada como um “componente especial”

Ela deve ser utilizado durante o desenvolvimento

Reuso e Geração automática de código

Page 17: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Estrutura da ComunidadeEstrutura da Comunidade

Page 18: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Estrutura da ComunidadeEstrutura da Comunidade

Page 19: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Ecossistema DemoiselleEcossistema Demoiselle

Page 20: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

• Modelo de Governança estabelecido • Controle do desenvolvimento colaborativo

• Localizador centralizado de desenvolvedores

• Repositório do projeto (documentação, fontes, processos ...)

Ambiente de colaboração

http://sourceforge.net/projects/demoiselle/

Page 21: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

PortalPortal

http://www.frameworkdemoiselle.gov.br

Page 22: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

http://sourceforge.net/projects/demoiselle/

Page 23: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Site do ProjetoSite do Projeto

http://demoiselle.sourceforge.net/

Page 24: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

Roadmap DemoiselleRoadmap Demoiselle

1. Sistema Orientado a Serviços

2. Sistemas Distribuídos

3. Aplicações Web Acessíveis por Dispositivos Móveis

4. Processo Ágil, Reuso e Ferramentas de Produtividade

5. Geração automática de código

6. Utilização de Java 6

7. Engenharia de Domínio

8. Sistema de Permissões e Segurança

Page 25: Demoiselle Frameworkgovernoeletronico.blog.br/_semana09/p_10/flavio_gomes_da...Projeto Demoiselle Plataforma de desenvolvimento de software para governo I. Processo de software II

●BEM-VINDOS A COMUNIDADE DEMOISELLE:●http://www.frameworkdemoiselle.gov.br

●http://sourceforge.net/projects/demoiselle/●

●Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: [email protected]

●CONTRIBUAM!!