ClassGenerator - Desenvolvendo aplicações em PHP com qualidade e eficiência.

Documentos relacionados
Técnicas para Reutilização de Software

GERADOR DE INTERFACES GRÁFICAS PARA IOS GABRIEL SEBASTIAN RAMIREZ JOYCE MARTINS

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator

Introdução ao Zend Framework 2

Componentes de SIs. Pessoas Organiz. Tecnologia

Técnicas de Reutilização. Reutilização em Programação Orientada a Objetos. Considere três classes... Reuso de Classes.

Programação Cliente em. jquery. Fontes: Wendell S. Soares e vinteum.com

Qualidade de Software QUALIDADE DE SOFTWARE PRODUTO

Solisc 2010 Gerenciamento de Projetos com dotproject

Ferramenta WEB de Apoio ao planejamento e controle de teste de software. Bruna Tatiane Bonecher Orientadora: Fabiane Barreto Vavassori Benitti

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos

SOFTWARE DE GERENCIAMENTO DE

Organização para Realização de Teste de Software

Software: na visão da ES

Analista de Negócios. Local de Trabalho: Porto Alegre. Número de Vagas: 02. Analista de Sistemas

Conceito para o desenvolvimento web utilizando Spring Boot, Bootstrap e Angular JS.

SOFTWARE EDUCACIONAL PARA ELABORAÇÃO DE PROVAS E EXERCÍCIOS

RUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS. Prof. Fabiano Papaiz IFRN

RAD Rapid Application Development

Requisitos de sistemas

Ferramenta para auxílio na análise de impacto e rastreabilidade de requisitos na gestão de mudanças

Plano de Trabalho Docente Ensino Técnico

OPORTUNIDADES: Analista de Sistemas Sênior

MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB

Protótipo tipo de um Sistema Administração de Eventos

Aula 11 Introdução ao Java Script

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

Os s estão com os dias contados

Sérgio Koch Van-Dall

Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:

Enterprise Application Integration (EAI)

Gestão eficiente e integrada

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS

ISO/IEC 12207: Manutenção

DESCOBERTO. (Glen Myers)

Projeto Físico. Guia Rápido Do Desenvolvedor

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

GERADOR DE CÓDIGO HTML BASEADO EM DICIONÁRIO DE DADOS UTILIZANDO BANCO DE DADOS. Acadêmico :Luis Fernando Coelho Orientador: Jomi Fred Hübner

Processo. Processo unificado. Principais Características do UP. Principais Características do UP RUP. Unified Process (Processo Unificado)

Unidade II MODELAGEM DE PROCESSOS. Profa. Gislaine Stachissini

Clientes gerentes Usuarios finais do sistema Clientes engenheiros Gerentes contratantes Arquitetos do sistema. Definicao de requisitos

Rational Unified Process (RUP)

DESENVOLVIMENTO DO FRAMEWORK GERA-JAVA

TÉCNICO EM INFORMÁTICA

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação.

Engenharia de Software Processo de Desenvolvimento de Software

DESENHO DE CARGOS E TAREFAS

Documento de Arquitetura de Software- SGE

Fábricas de Software. Processos de Software. Fábricas de Software. Fábricas de Software 17/08/2010. Jorge Dias

Companhia Estadual de Águas e Esgotos Márcia Dulce de Andrade Pereira Jacob Lopes Hallison Daniel do Carmo Marques. Maio/2016

Acadêmico: Rafael Wilson Santiago Prof. Orientador: Dr. Oscar Dalfovo

Definição e Melhoria de Processo na Produção de Software Web

Plano de Gerenciamento de Configuração

Sistema de Informação Geográfica

Avaliação do site tm-sprava.ru

Banco de Dados. Banco de Dados

UML. Modelando um sistema

Programação Orientada a Objetos

Introdução a UML (Unified Modeling Language)

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP

Solisc 2010 Uma Introdução ao Pentaho BI Open Source

Arquitetura Orientada a Serviços SOA

Powered by. Tiago Bockholt

RECURSOS HUMANOS. Introdução ao Benner RH. Núcleo da Solução

TOP 10 Melhores Editores de texto para programadores

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

IntroduçãoaoProcesso. Prof. Anderson Cavalcanti UFRN-CT-DCA

Prof. Luiz A. Nascimento

Requisitos de Sistemas

Introdução a Padrões, GRASP. Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé)

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração

Normas ISO:

LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL:

Web I F R N I N S T I T U TO F E D E R A L D E E D U C A Ç Ã O, C I Ê N C I A E T E C N O LO G I A D O R I O G R A N D E D O N R T E.

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

Gerência de Configuração de Software Conceitos

Sumário. Técnicas de banco de dados simples. 1 Como explorar o Microsoft Access Parte I

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

Introdução. O que é um Banco de Dados (BD)?

Plano de Aula - Dreamweaver CS5 - cód Horas/Aula

02 Desenvolvimento de Aplicativos Web

PROJETO DE PROGRAMAS. Projeto de Programas PPR0001

Aspectos preliminares

Declaração de Escopo

CONTEÚDO PROGRAMÁTICO

Programação para web HTML: Formulários

Documento de Especificação de Sistema IngreSys

Processos de software

Prof. Esp. Fabiano Taguchi PHP. Como surgiu o PHP? PHP

UTILIZAÇÃO DE TECNOLOGIAS MODERNAS PARA CADASTRAMENTO DAS FAMÍLIAS DA ATENÇÃO BÁSICA DE SAÚDE DO MUNICÍPIO DE COARI

Paradigmas de Linguagens

UML. Rodrigo Leite Durães.

1.5 PROGRAMAÇÃO DE JOGOS EM AMBIENTE DE REA LIDADE AUMENTADA AMBIENTES INTEGRADOS DE DESENVOLVIMENTO DE JOGOS 19

CATÁLOGO DE APLICAÇÕES DMST-e

Quem somos. A VISÃO Ser reconhecida como a empresa de referência na apresentação de soluções de otimização de recursos para unidades produtivas.

Gosta de acompanhar os rumos das linguagens de programação? Então não fique de fora dessa! Descubra o que é o HTML 5!

Transcrição:

ClassGenerator - Desenvolvendo aplicações em PHP com qualidade e eficiência. Marcelio Leal 1 Porto Alegre, Abril, 2006

Apresentação Engenheiro de software do SEPRO Graduado em C. da Computação Mestrando em C. da Computação Membro-Fundador do Grupo PHP Pai d'égua Experiência com web/php desde 2001 2

Sumário Contexto Objetivos Como funciona A ferramenta O que vier por aí... 3

Contexto Desenvolvimento de Sistemas de Informação Utilização de Banco de Dados Relacionais Geração de Protótipos Geradores de Artefatos Automatização 4

Motivação Algumas das principais barreiras à flexibilidade corporativa são o tempo e o custo para desenvolver aplicações de negócio ou modificar as já existentes com qualidade e eficiência, Cumins 2002 5

PHP Temos que manter as suas qualidades Liberdade Simplicidade 6

Dilemas Preciso de um sistema com qualidade e confiabilidade, mas o cliente quer resultados rápidos Preciso de um framework e ferramentas de produtividade, mas preciso que o software não fique defasado rapidamente ou fortemente dependente de uma solução Repito muitas operações padrões a cada vez que faço um sistema 7

Problemas Custos do desenvolvimento(ide,...) Transição da fase de análise OO para a fase de projeto(abstração X Eficiência) Mapeamento objeto-relacional(bdr ainda é o padrão) Reutilização dos artefatos e do conhecimento (Sistemas legados, SQL,...) 8

Solução/Objetivos Prover um padrão p/ mapeamento OR Fácil, extensível, gerenciável, escalável e produtiva Prover geração de artefatos de funcionalidades básicas Cadastro, Alteração, Exclusão e Seleção Sem código desorganizado e excessivo 9 Seguindo padrões e retirando o máximo de informações contidas nos modelos

Solução/Objetivos Arquitetura Documentação Não deixar dependente da ferramenta Reutilizar o conhecimento a partir de mapeamentos 10

Class 11 Ferramenta com o objetivo de automatizar o desenvolvimento de sistemas de informação Melhorando alguns aspectos do desenvolvimento de software, direta e indiretamente E utilizando o conhecimento adquirido para melhorar gradativamente o software gerado

Histórico Padrão utilizado no SAAD, base do Class Versão 0.1 Lançada em Nov/Dez de 2001 Marcelio L., Eduardo G., Leonardo G. e Prof. Affonso G. Versão 0.2 (ADODB) Lançada em Jun/Jul de 2002 Adaptações na versão 0.1 (Eduardo Guerra) Versão 0.5 Lançado em Maio de 2003 Código Refeito, Evolução, manutenção dos artefatos(ml) Versão 0.6 Lançado em Abril de 2004 Código Refeito, evolução no Padrão (ML, Eloi Favero) Versão 1.0 TCC 12 Evolução no Padrão (Marcelio, Rafael Marlos e Abstract)

Componentes A Ferramenta Gerador de Artefatos Framework Gerador de Código O que faz 13 Geração de Artefatos a partir de um modelo de mais alto-nível para automatizar o desenvolvimento de SI. Baseados em padrões reconhecidos pela comunidade de Engenheiros Web; Utiliza regras de mapeamento pra geração 04:34:06 am

Gerador de Artefatos "Um artefato é qualquer item criado como parte da definição, manutenção ou utilização de um processo de software. Inclui entre outros, descrições de processo, planos, procedimentos, especificações, projeto detalhado, código, documentação para o usuário. Artefatos podem ou não ser entregues a um cliente ou usuário final, Staa 14

O Processo 15

Outra visão 16

Metas Gerar e manter boa parte do sistema Estabelecer um padrão Transferir esforços para as atividades essenciais Diminuir a repetição de código Diminuir a incidência de erros Dividir bem as responsabilidades Melhorar a comunicação Utilizar o conhecimento adiquirido 17 Deixar livre o desenvolvedor

Os Artefatos e a Arquitetura inicial/básica 18

Operações Inserção Alteração Exclusão Seleção pela CP(PK) Seleção de toda coleção de objetos 19

Mapeamento OR Manter os princípios da OO Reusabilidade Extensibilidade Minimizando o impacto em performance* Utilizar os benefícios de um BDR Tranparência nas operações no BDR Utilizar padrões de projeto 20 Amenizar e facilitar a transição da fase de análise para o projeto OO 04:34:06 am

Mapeamento OR Funcionamento Cada tabela é transformada em uma classe do tipo Básica; Para cada classe básica criada são criadas também: Uma classe do tipo CadBD; Uma classe do tipo Cad ; Os métodos de acesso na classe Fachada. 21

Interfaces 22

Regras de Criação e Otimização Categorias Validação Tipo Elemento HTML Limita caracteres string não text sim long string não textarea sim int int text sim float não text sim date data text sim time hora text sim year int text sim especific type não text não file não file não 23

O Framework integrado Camada de abstração do BD(ADODB) Controle, mecanismo de log e aviso de erros em tempo de execução (Erros de programação) Comunicação via e-mail Controle e fluxo de mensagens de apresentação para usuários Validação de interfaces JavaScript Controle de códigos e estados estáticos Funções extras de interface (Combos...) Estilos de interface (CSS) 24 Todas funcionalidades podem ser substituidas por outros Frameworks 04:34:06 am

Conclusões Um bom aumento da velocidade de desenvolvimento Começar do simples/elegante Padronização de arquitetura e código Melhor comunicação em equipe Liberdade pra criar, modificar e reutilizar Diminuição ou isenção, dependendo do caso, de teste nos artefatos gerados 25

Trabalhos futuros Integração com outros ambientes, como o DBDesigner e o Umbrello; Adicionar formatos nos dados de entrada, como XML; Podendo ser sincronizado com os formatos acima citados Separar os arquivos de mapeamento, facilitando uma configuração personalizada destes mapeamentos. Gerar outros tipos de interface, incluindo XML e GTK; 26 Adicionar inteligência computacional, na geração das interfaces; Adicionar regras customizáveis via interface V2 Abril/Maio 04:34:06 am

groups.yahoo.com/group/phppaidegua 190 membros IV Echo PHP... Primo/Irmão do Linux Pai d'égua Pai d'égua ==> Trilegal 27

Que a força esteja com vocês... Perguntas? Marcelio Leal - contato@marcelioleal.net 28 www.marcelioleal.net/classgenerator www.marcelioleal.net www.serpro.gov.br groups.yahoo.com/phppaidegua Abstract BI - (www.abstractbi.com) 04:34:06 am