GERADOR DE APLICAÇÕES WEB BASEADO EM UMA LINGUAGEM DE PADRÕES DEFINIDA EM XML

Tamanho: px
Começar a partir da página:

Download "GERADOR DE APLICAÇÕES WEB BASEADO EM UMA LINGUAGEM DE PADRÕES DEFINIDA EM XML"

Transcrição

1 GERADOR DE APLICAÇÕES WEB BASEADO EM UMA LINGUAGEM DE PADRÕES DEFINIDA EM XML GENERATOR WEB APPLICATION BASED ON A PATTERN LANGUAGE DEFINED IN XML Prof. Me Anderson Pazin RESUMO Linguagens de padrões definem um domínio de forma a facilitar a modelagem de aplicações por desenvolvedores menos experientes. Com o uso de uma linguagem de padrões pode-se definir uma arquitetura genérica que permita automatizar o processo de desenvolvimento de novas aplicações por meio de frameworks ou geradores de aplicações. Essa arquitetura pode ser definida por meio de uma linguagem de modelagem de aplicações(lma), utilizando os conceitos de linha de produtos de software. A LMA permite definir uma aplicação fazendo especificações em alto nível. Dentro desse contexto, este artigo tem como objetivo apresentar um gerador de aplicações baseadas na Web para um domínio de clínicas de reabilitação física que permite instanciar aplicações usando uma LMA definida com base em uma linguagem de padrões. Palavras-chave: Linguagem de Padrões. Linhas de Produto de Software. Gerador de Aplicações. Reuso de Software. Linguagem de Modelagem da Aplicação. ABSTRACT Patterns language define a domain aiming at facilitating modeling of applications by less experienced developers. With the use of a patterns language it s possible to define a generic architecture that allows for automating the development process of new applications using frameworks or applications generator. This architecture was defined by an Application Modeling Language (AML), assist the software products line concepts. The AML allows the definition in high level specification of application. This paper presents a Web based systems applications generator for domain of physical rehabilitation clinic that use an AML defined based on a pattern language. Keywords: Pattern Language. Software Product-Line. Application Genarators. Software Reuse. Application Modeling Language INTRODUÇÃO Durante o processo de desenvolvimento de software, o reuso é uma das atividades mais realizadas pelo engenheiro de software, sendo que na maioria das vezes consiste de repetidas operações de cortar/colar/modificar. Quanto mais 292

2 adaptações são necessárias, maior é a possibilidade de se ter um produto final com baixa qualidade, uma vez que essas adaptações manuais favorecem a possíveis inserções de erros (FRANCA, 2000). Esses erros podem ser minimizados com a automatização das operações envolvidas no reuso. Pela automatização, as atividades de desenvolvimento de software são realizadas por meio de especificações, indicando de forma menos complexa, o que deve ser feito em uma aplicação. Geradores de aplicações são ferramentas de software que conseguem automatizar parte de um processo rotineiro da atividade de desenvolvimento de software, acelerando o processo de implementação e transformando especificações de alto nível em produtos da aplicação. Podem ser considerados como compiladores para uma linguagem de um domínio específico (SMARAGDAKIS & BATORY,1998). Essa linguagem pode ser elaborada a partir da análise de domínio e, por exemplo, ser representada por meio de uma linguagem de padrões. Outra forma para representar uma linguagem de domínio é usando uma Linguagem de Modelagem da Aplicação (LMA, originalmente AML Application Modeling Language) enfatizando que as especificações nelas escritas devem representar modelos. O gerador de aplicações criado dessa forma analisa as especificações escritas nessa LMA para a partir daí gerar o produto final (WEISS & LAI, 1999). Este trabalho apresenta um gerador de aplicações WEB para o domínio de clínicas de reabilitação que foi desenvolvido com base na linguagem de padrões para Sistemas de Gerenciamento de Clínicas de reabilitação, denominada SiGCli (PAZIN, 2004). O gerador, em sua interface, apresenta uma LMA desenvolvida com base na SiGCli para que o gerador especifique as aplicações em uma linguagem de muito alto nível. As aplicações são sistemas baseados na Web, escritas em Java e com arquitetura em três camadas. Este artigo está organizado da seguinte maneira: a seção 1 trata dos trabalhos relacionados que auxiliaram na definição desse gerador; a seção 2 apresenta o projeto do gerador. Na seção 3, a arquitetura do gerador e a estrutura das aplicações por ele geradas são mostradas; na seção 4, um exemplo de uso do gerador é ilustrado e por fim as considerações finais sobre o trabalho. 293

3 1 TRABALHOS RELACIONADOS Uma linguagem de padrões é uma coleção de padrões organizados, que se apoiam, para transformar requisitos e restrições numa arquitetura (COPLEIN, 1998) Os padrões que a constituem devem abranger todos os aspectos importantes de um determinado domínio e pelo menos um padrão deve estar disponível para cada aspecto da construção e implementação de um sistema de software. Ela auxilia na divisão de problemas gerais com soluções complexas em problemas menores e relacionados, de forma a facilitar a solução. Em uma linguagem de padrões cada padrão pode ser usado de forma isolada ou com alguns padrões relacionados dessa linguagem. Assim, um único padrão é considerado útil mesmo se a linguagem não for aplicada na sua totalidade. A linguagem de padrões para Gestão de Recursos de Negócio (GRN), proposta por Braga (1998 e 1999), tem objetivo de auxiliar desenvolvedores menos experientes na elaboração de aplicações que tratam de gestão de recursos de negócios. Ela é composta por quinze padrões, agrupados de acordo com o seu propósito. O primeiro grupo, Identificar o Recurso de Negócio, é constituído de três padrões que tratam da identificação e possível qualificação, quantificação e armazenagem dos recursos gerenciados pelo negócio. O segundo grupo, Transações de Negócio, trata dos padrões relacionados à manipulação dos recursos de negócio pelo sistema, sendo composto de sete padrões. O terceiro grupo, Detalhes da Transação de Negócio, possui cinco padrões que cuidam de detalhes das transações efetuadas com o recurso. Braga e Masiero (2002) definem um processo para a construção de frameworks com base em linguagens de padrões. A partir da linguagem GRN elaborou-se um framework, denominado GREN, definido em linguagem SmallTalk, que permite criar aplicações no domínio de sistemas de gestão de recursos de negócios. Para facilitar a instanciação de aplicações usando o framework, foi desenvolvido um Wizard para esse propósito, denominado GREN-Wizard. Assim, para a instanciação uma aplicação o desenvolvedor precisa apenas conhecer a linguagem de padrões GRN sem se preocupar com detalhes da programação SmallTalk. A partir do processo utilizado para a construção da linguagem de padrões 294

4 GRN, Ré (2002) elaborou uma linguagem de padrões para Leilão Virtual, denominada LV, para o desenvolvimento de sistemas para gestão de vendas por intermédio de leilões virtuais. Ela é uma extensão da GRN, pois trata de um tipo de transação não coberto por ela. A partir da LV e do processo definido por Braga e Masiero (2002) foi elaborado o Framework Qd+ (RÉ, 2002) que permite instanciar aplicações para o domínio de Leilões Virtuais. Franca e Staa (2001) propõem um processo evolutivo para a construção de geradores de aplicação (ou geradores de artefatos). O aperfeiçoamento do produto gerado ocorre em ciclos sucessivos, sendo que a cada nova versão do produto, o gerador de aplicações se torna mais completo e genérico. Os autores comparam esses geradores de aplicações com frameworks, considerando as semelhanças existentes entre eles. Em um framework existem partes fixas (frozen-spots), que não são alteradas durante a instanciação de uma aplicação, e partes variáveis (hotspots), que devem ser alteradas durante a instanciação de uma aplicação, por conterem características específicas dessa. Em um gerador de aplicações existem as partes que são comuns (fixas) para todas as aplicações, que são denominadas similaridades e existem as partes que são específicas para cada aplicação, que são denominadas variabilidades. Os conceitos de similaridades e variabilidades são encontrados em linhas de produto de software. Visam à criação de um conjunto de produtos de software com características similares, por meio da definição de uma infraestrutura comum aos itens que compõem os produtos e da parametrização das diferenças entre eles (GIMENES & TRAVASSOS, 2002). A LMA possibilita documentar a parametrização das diferenças entre os produtos a serem gerados, criando uma infraestrutura para a linha de produtos de software que seja capaz de analisar e gerar diferentes produtos por meio de uma especificação da LMA. Assim, tanto frameworks quanto geradores de aplicações podem ser usados como tecnologias que permitem a adaptação do produto final de acordo com as características específicas (WEISS & LAI, 1999). A elaboração da linguagem de padrões para o domínio de gerenciamento de clínicas de reabilitação (SiGCli) e o gerador de aplicações proposto para esse domínio, apresentados na seção seguinte, tiveram por base os trabalhos e assuntos discutidos nesta seção. 295

5 2 DESENVOLVIMENTO DO GERADOR DE APLICAÇÕES Grupo 1: Informações Básicas Identificar Pacientes (1) Definir Serviços (2) Grupo 2: Atendimentos Processar Guias (4) Realizar Vendas (3) Grupo 3: Controle de Transações Financeiras Controlar Faturamento (9) Agendar Atendimentos (5) Identificar Atendentes (6) Realizar Acompanhamento Realizar Compras (8) Fonte: PAZIN et.al., 2004 Figura 1. Grafo do fluxo de aplicação dos padrões da SiGCli. A primeira atividade para criar um gerador de aplicações é analisar qual domínio ele abrangerá. Neste trabalho, especificamente, o domínio de Sistemas de Gerenciamento de Clínicas de reabilitação física (SiGCli) é tratado. Esse domínio é expresso em uma linguagem de padrões denominada SiGCli (PAZIN et. al, 2004) A Figura 1 mostra o grafo de fluxo de aplicação dos padrões da SiGCli. Ela é constituída de 9 padrões, mas em uma aplicação nem todos precisam ser utilizados. Os padrões Identificar Pacientes(1) e Definir Serviços(2), devem ser obrigatoriamente aplicados em todos os sistemas. Em seguida, pode-se optar por Realizar Vendas(3) ou Processar Guias(4), seguido do padrão Agendar Atendimentos(5). Após realizado o agendamento dos atendimentos deve-se Identificar Atendente(6) e/ou Realizar Acompanhamento. Tanto o padrão 3 quanto o padrão 4 possibilitam a aplicação do padrão Controlar Faturamento(9), sendo que o padrão 3 ainda pode ter um padrão intermediário ao 9, que é o padrão Realizar Compras(8). 2.1 Especificação da LMA 296

6 Uma Linguagem de Modelagem da Aplicação (LMA) visa documentar a parametrização das diferenças entre os produtos que serão gerados em uma linha de produto de software, possibilitando a criação uma infraestrutura capaz de analisar e gerar diferentes produtos (WEISS & LAI, 1999). A linguagem de padrões SiGCli foi usada para definir uma LMA que representasse as possíveis variações de instanciação de clínicas usando essa linguagem (PAZIN, 2004). Essas variações devem ser explicitadas na LMA para que uma aplicação possa ser gerada corretamente, conforme os seus requisitos. Para a elaboração da LMA foram usadas a seguintes diretrizes: 1) padrões aplicados sem variação (similaridade): para a LMA utiliza-se somente o nome do padrão da linguagem de padrões.. 2) padrões aplicados com variação (variabilidade): Duas características devem ser analisadas: 2.1) A variação é controlada pelo desenvolvedor: nesse caso identificase a variação atribuindo-lhe um nome que será usado na LMA. Cabe ao desenvolvedor optar ou não pelo uso de tal variação, podendo ela ser exclusiva (única variabilidade no padrão) ou múltipla (pode-se usar mais que uma variabilidade para o mesmo padrão). 2.2) A variação é controlada pela instanciação: nesse caso, ela é resultante da aplicação de outros padrões e os diferentes tipos de instanciações de aplicações devem ser gerenciados a partir dos padrões escolhidos anteriormente pelo desenvolvedor. O Quadro 1 apresenta os padrões da SiGCli e as variabilidades (Nome e Descrição) identificadas quando as diretrizes apresentadas anteriormente para a elaboração da LMA foram aplicadas. Quando não existir variabilidade a coluna Nome apresenta a sentença Não possui e a coluna Descrição tem um traço diagonal. Quando a variabilidade não for controlada pelo desenvolvedor a coluna Nome apresenta a sentença Não possui e a coluna Descrição apresenta a variabilidade que deve ser controlada pelo gerador. A Figura 2 exibe a LMA de acordo com o apresentado no Quadro

7 Nº Padrão Nome Variabilidade Nome Descrição 1 Identificar Pacientes Não possui 2 Definir Serviços Com Tipo Serviço 1. Uma clínica não precisa especificar os serviços prestados de forma detalhada 3 Realizar Vendas Com Produto 1. Uma clínica realiza a comercialização de serviços, mas nem sempre comercializa produtos 4 Processar Guias Não possui 1. Caso o padrão Controlar Faturamento tenha sido aplicado, deve-se acrescentar alguns atributos e métodos relacionados ao valor da Guia e dos atendimentos 5 Agendar Atendimentos Não possui 6 Identificar Atendente Com Atributos Atendentes 7 Realizar Acompanhamento Tipo Avaliação Educação Física Tipo Avaliação Fisioterapia Tipo Avaliação Terapia Ocupacional 1. O agendamento de sessões pode ser efetuado por meio de uma guia ou de uma venda. 1. Quando for necessário armazenar informações sobre o ganho e a especialidade do atendente. 1. Cada clínica possui avaliações específicas, conforme os tratamentos que realizam, com atributos específicos. Por exemplo, os atributos analisados em uma avaliação ortopédica para uma clínica de fisioterapia são diferentes dos atributos avaliados para uma clínica de educação física. 2. Cada avaliação pode possuir um conjunto de fatores que são variantes. Por exemplo, em uma avaliação o uso de medicamentos deve ser considerado; em outra alguns testes especiais devem ser realizados para a conclusão do tratamento. Esses fatores são considerados como Itens da Avaliação. (conclusão) 8 Realizar Compras Não possui 9 Controlar Faturamento Não possui 1. Depende da aplicação dos padrões Realizar Vendas, Processar Guias, Identificar Atendentes e Realizar Compras para definir quais classes devem ser usadas para o sistema Fonte: Elaborado pelo autor Quadro 1- Variabilidades identificadas entre os padrões da SiGCli. 298

8 Identificar Pacientes; 1 Definir Serviços; 2 Com tipos serviços Realizar Vendas; 2 Com Produtos Processar Guias; 3 Agendar Atendimentos; 3 Identificar Atendentes; 2 Com Atributos Atendentes Realizar Acompanhamentos 2 Avaliação Educação Física; Avaliação Fisioterapia; Avaliação Terapia Ocupacional; Realizar Compras; 1 Controlar Faturamento; 3 Legenda: 1- Padrões aplicados sem variação 2- Variação controlada pelo desenvolvedor 3- Variação controlada pela instanciação Fonte: Elaborado pelo Autor Figura 2. LMA definida para a linguagem de padrões SiGCli. 3 ARQUITETURA DO GERADOR E DAS APLICAÇÕES GERADAS O Gerador de Aplicações Web para Sistemas de Gestão de Clínicas de Reabilitação (GAwCRE), é apresentado na Figura 3. Ele usa as definições da linguagem de padrões e da LMA armazenadas em XML e gera: A interface para que o desenvolvedor instancie sua aplicação: o gerador lê as definições do arquivo XML e apresenta o conjunto de padrões e variantes para que o desenvolvedor escolha o que será utilizado para instanciar as novas aplicações. Essas informações são apresentadas conforme a definição da LMA e, sempre que uma opção da LMA for escolhida, essa é gravada em um banco de dados constituindo um conjunto de informações que pode ser recuperado na fase de geração da aplicação. Esse módulo é denominado Instanciador da LMA; Os scripts para a criação da base de dados: as informações da aplicação armazenadas no banco de dados, conforme a especificação da LMA,são comparadas com as definições do arquivo XML para que sejam criados as tabelas, as chaves e os relacionamentos que satisfazem os requisitos da aplicação. Esse é o módulo denominado como Gerador de Script SQL; As classes Java que serão os Beans da aplicação: as informações da 299

9 aplicação armazenadas no banco de dados, conforme a especificação da LMA, são comparadas com as definições do arquivo XML para que sejam criadas as classes e as associações que satisfazem os requisitos da aplicação. Os métodos mais simples como os de atribuição (set) ou os de recuperação (get) são gerados dinamicamente. Já os métodos que tratam de funcionalidades específicas de cada classe, devem estar definidos no arquivo XML. Esse é o módulo denominado Gerador das Classes Java ;As interfaces JSP da aplicação: as informações da aplicação armazenadas no banco de dados, conforme a especificação da LMA, são comparadas com as definições do arquivo XML para que sejam criados os tipos de interfaces. Após a criação dessas interfaces elas devem ser disponibilizadas em um servidor WEB que seja capaz de interpretar o código JSP. Esse é o módulo denominado Gerador das Interfaces JSP. Segundo Franca & Staa (2001), artefato é qualquer item criado como parte da definição, manutenção, ou utilização de um processo de software, podendo ou não ser entregues a um cliente ou usuário final. Por essa definição todos os produtos gerados pelo gerador, desde os scripts de criação do banco de dados até a aplicação final podem ser considerados artefatos. Os artefatos são criados com base na definição dos gabaritos (templates) préexistentes no gerador que são definidos após a análise dos pontos variáveis e similares de um produto desejado. Para que a linguagem Java possa ter acesso e manipular as informações existentes em um arquivo XML, utiliza-se de um padrão da W3C (World Wide Web Consortium) denominado DOM (Document Object Model) que possibilita a navegação entre as tags do arquivo XML. Dessa forma, basta substituir os pontos variáveis do produto a ser gerado pelos valores definidos na tag XML para que o produto desejado seja gerado 300

10 <padrao numero="2" nome="definir Serviços"> <classe nome="servico" interface="1"> <atributo> codigoid </atributo> <atributo> descrição </atributo> <atributo>valor</atributo> <atributo>situacao</atributo> <associacao>tpservico</associacao> </classe> <variante nome="com tipo serviço"> <classe nome="tipo_servico"> <atributo> codigoid </atributo> <atributo> descrição</atributo> </classe> </variante> </padrao> Lê as definições XML- SiGCli Gerador GAwCRe Interface Instanciador da LMA (Gerador de aplicações) Gabaritos de Código Armazena e recupera os dados das especificações LMA para cada aplicação Documento XML Gerador de scripts SQL Gerador das Classes Java Gerador de Interfaces Web CREATE TABLE SERVICO ( CODIGOID NUMBER(4) NULL, DESCRICAO VARCHAR2(25) NULL); ALTER TABLE SERVICO MODIFY CODIGOID NUMBER(4) NOT NULL; Script de criação da Base de Dados package ClinicaFisio; public class Servico implements PersistentObject { // Atributos da classe private int codigoid; private String descricao; public Servico(){ } } Classes Java Especificação LMA para uma Aplicação Base de Dados do Gerador Bibliotecas Interface Web Fonte: Elaborado pelo Autor. Figura 3. Esquema de funcionamento do gerador GAwCRe e os artefatos por ele gerado. 3.1 Arquitetura do Gerador A Figura 4 exibe o modelo de classes (em alto nível) do gerador de aplicação de Sistemas de Gestão de Clínicas. A classe FrameGerador é responsável por definir a interface com o desenvolvedor por meio de um objeto do tipo frame, construído dinamicamente com base nas informações existentes no arquivo XML 301

11 sobre a especificação da LMA. As classes Gerador e XMLManager (Figura 4) importam as bibliotecas responsáveis pela manipulação do arquivo XML, a interface DOM. Todas as informações sobre os padrões aplicados são armazenadas em um banco de dados relacional utilizando o padrão Persistence Layer (YODER et.al,1998), que também é usado para persistência dos dados das aplicações geradas pelo gerador. Para a geração dos artefatos da aplicação tem-se: o gerador de código Java, representado pela classe GeradorCodigo; o gerador de scripts SQL, representado pela classe GeradorSQL, e o gerador de interfaces com o usuário, representada pela classe GeradorJSP, que são módulos independentes do gerador facilitando assim a geração de partes da aplicação. As classes AplPadrao e AplVariante representam os padrões e as variantes aplicadas, respectivamente, para cada aplicação instanciada pelo gerador. Persistence Layer Aplicação AplPadrao AplVariante 1..* 0..* 0..* FrameGerador r Gerador XMLManager Parser DOM GeradorJSP GeradorCodigo GeradorSQL Fonte: Elaborado pelo Autor Figura 4. Modelo de classes do GAwCRe. 3.2 Arquitetura das Aplicações Geradas A Figura 5 apresenta a arquitetura das aplicações geradas pelo gerador que são sistemas em três camadas. A cada solicitação do usuário as páginas são geradas pela camada de aplicação e apresentadas ao usuário por meio de um 302

12 browser. Sempre que o usuário necessita armazenar ou recuperar informações no sistema, a solicitação feita na camada de apresentação é passada para a camada de aplicação que se comunica com a camada de persistência com o objetivo de realizar as operações solicitadas. Camada de Apresentação Contém todas as classes de interface e é a única camada visível aos usuários. Faz a interface das solicitações do usuário com a camada de aplicação Camada de Aplicação Arquivos JSP Beans Aplicação É responsável pela lógica do negócio, o que inclui algoritmos e regras procedimentais, e define o comportamento do sistema. Camada de Persistência Persitence Layer Banco de dados É responsável pela lógica de manipulação de dados e de conexão com o SGBD e é responsável pelo armazenamento físico dos objetos. Fonte: Elaborado pelo Autor Figura 4. Arquitetura da aplicação gerada pelo GAwCRe. 4 EXEMPLO DE USO Para exemplificar a instanciação de uma aplicação usando o gerador de aplicações da SiGCli, optou-se pela clínica de fisioterapia existente nas Faculdades Salesianas de Lins, no Centro de Reabilitação Física Dom Bosco. Essa clínica controla todos os atendimentos realizados em seus pacientes e o seu objetivo principal é armazenar os acompanhamentos e avaliações realizadas pelos atendentes. Esses atendentes são alunos do curso de Fisioterapia e devem ser avaliados na disciplina de estágio supervisionado, existente em sua grade curricular. Esses atendentes não são remunerados e o controle do faturamento da clínica também não é de interesse nesse sistema. O modelo de classes do sistema é apresentado na Figura 6, sendo resultado da aplicação dos padrões (1) Identificar Pacientes, (2) Definir Serviços, (4) Processar Guias, (5) Agendar Atendimentos, (6) Identificar Atendentes e Realizar Acompanhamento da linguagem de padrões 303

13 SiGCli. Cada classe possui um número, no canto superior esquerdo, que define a qual padrão ela pertence conforme a numeração definida no grafo de fluxo de aplicação dos padrões da SiGCli (Figura 1). (1) Cidade (1) (4), (5) (4) Paciente Guia Patologia (1) Profissão (6) Atendente (5), (6), Atendimento (4) Convênio Teste Especiais (2), (5) Serviço Dados Clínicos Avaliações Medicamentos (5) Horário Atendimento Neuro Adulto Ortopédica Cardiologica Neuro Infantil Pneumologica Diária Fonte: Elaborado pelo Autor Figura 5. Modelo de classes obtido após a aplicação da SiGCli.. A Figura 7 mostra a especificação da LMA, com os padrões e variantes usados para instanciar a aplicação desejada. A instanciação da LMA no gerador acontece por meio de seleção de checkboxs existentes na interface. Sempre que uma opção oferecida for desejada na aplicação, deve-se selecionar a caixa. Identificar Pacientes; Definir Serviços; Processar Guias; Agendar Atendimentos; Identificar Pacientes; Realizar Acompanhamentos com Avaliações de Fisioterapia; Fonte: Elaborado pelo Autor Figura 3. Especificação da LMA para o sistema exemplo. 304

14 CONCLUSÃO Neste trabalho é apresentado um gerador de aplicações baseado em uma linguagem de padrões para o domínio de sistemas de gerenciamento de clínicas de reabilitação, denominado SiGCli. Esse domínio foi definido por meio de um processo de engenharia reversa auxiliado por apoios computacionais desenvolvidos para esse propósito, com o intuito de facilitar a execução dessa atividade. A linguagem de padrões SiGCli, que é a base do gerador de aplicações proposto, foi elaborada com base nos padrões da linguagem de padrões GRN, uma vez que alguns padrões da SiGCli são similares aos já definidos pela GRN, principalmente os que tratam da transação de negócios. Para facilitar a geração de novas aplicações, com o uso do gerador, foi elaborada uma Linguagem de Modelagem da Aplicação (LMA) que permite instanciar aplicações por meio de especificações em alto nível. Portanto, esse gerador possui como elemento diferenciador o fato de ter uma linguagem de padrões usada para representar o domínio e especificar a LMA, bem como para apoiar o processo de geração. Deve-se notar que o processo apresentado é geral e pode ser reusado para outros domínios. A estrutura do gerador permanecerá basicamente a mesma, mudando-se a LMA e os gabaritos de código. O uso de XML para armazenar a especificação dos padrões também facilita o reuso. O gerador apresentado define uma família de produtos de software que é a de sistemas de gestão de clínicas de reabilitação. Considerando as variabilidades presentes nos padrões e representadas na LMA, é possível gerar um conjunto de aplicações diferentes. REFERÊNCIAS BRAGA, R. T. V.; GERMANO, F. S. R.; MASIERO, P. C. A family of patterns for business resource management. In: 5th Annual Conference on Pattern Languages of Programs (PLOP 98), Washington University in St. Louis Missouri, USA, on- Line. Disponível em Consultado em 31/01/ BRAGA, R. T. V.; GERMANO, F. S. R.; MASIERO, P. C. A pattern language for business resource management. In: 6th Pattern Languages of Programs 305

15 Conference (PLoP 99), Monticello IL, USA, 1999 BRAGA, R. T. V.; MASIERO, P. C. A process for framework construction based on a pattern language. In: 26th Annual International Computer Software and Applications Conference (COMPSAC 2002), Oxford England, BRAGA, R. T. V. Um Processo para a Construção e Instanciação de Frameworks baseado em uma Linguagem de Padrões para um Domínio Específico. Tese de Doutorado, ICMC/USP, São Carlos-SP, 2003 COPLIEN, J. O. Software design patterns: Common questions and answers in L. Rising The Patterns Handbook: Techniques, Strategies, and Applications, Cambridge University Press, p , 1998 FRANCA, L. P. A Um processo para construção de geradores de artefatos. Tese de Doutorado - Departamento de Informática - Pontifica Universidade Católica do Rio de Janeiro, Rio de Janeiro RJ, FRANCA, L. P. A.; STAA, A. V. Geradores de Artefatos: Implementação e Instanciação de Frameworks. In: Anais do XV SBES Simpósio Brasileiro de Engenharia de Software. Rio de Janeiro. pp , 2001 GIMENES, I. M. S.; TRAVASSOS, G. H. O enfoque de linha de produto para desenvolvimento de software. In: Anais do XXII Congresso da Sociedade Brasileira de Computação - Tutoriais, PAZIN, A. Um Gerador de Aplicações para o Domínio de Clínicas de Reabilitação. Dissertação de Mestrado Programa de Pós Graduação em Ciência da Computação Universidade Federal de São Carlos, São Carlos SP, agosto/2004. PAZIN, A., PENTEADO, R. A. D., MASIERO, P. C. SiGCli: A Pattern Language for Rehabilitation Clinics Management. : 4ª Conferencia Latino-Americana em Linguagem de Padrões para Programação (SugarLoafPlop), Porto das Dunas CE, Brasil, 2004 RÉ, R. Um processo para construção de frameworks a partir da engenharia reversa de sistemas de informação baseados na Web: Aplicação ao domínio dos leilões virtuais. Dissertação de Mestrado, ICMC/USP, São Carlos SP, SMARAGDAKIS, Y.; BATORY, D. Application Generators. Department of Computer Sciences. The University of Texas at Austin. Artigo retirado da página pessoal URL: Último acesso em 27 de Março de 2011 na, YODER, J.W.; JOHNSON, R.E.; WILSON, Q.D. - Connecting Business Objects to Relational Databases. In: Conference on the Pattern Languages of Programs, 5, Monticello-IL, EUA. Proceedings,

16 WEISS, D., LAI, C. T. R. Software Product-Line Engineering: a family-based software development process. Ed. Addison Wesley, p. 307

Table 1. Dados do trabalho

Table 1. Dados do trabalho Título: Desenvolvimento de geradores de aplicação configuráveis por linguagens de padrões Aluno: Edison Kicho Shimabukuro Junior Orientador: Prof. Dr. Paulo Cesar Masiero Co-Orientadora: Prof a. Dr. Rosana

Leia mais

RESUMO. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software. ABSTRACT

RESUMO. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software. ABSTRACT GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB GENERATOR ARTIFACTS FOR WEB APPLICATIONS Juliane Rosário juh_rosario@yahoo.com.br Murillo da Silva Casa Grande murilloscg@yahoo.com.br Prof. M. Sc. Anderson Pazin

Leia mais

ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS

ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS RESUMO Este artigo apresenta a especificação de um sistema gerenciador de workflow, o ExPSEE, de acordo com a abordagem de desenvolvimento baseado

Leia mais

Uma Arquitetura de Linha de Produto Baseada em Componentes para Sistemas de Gerenciamento de Workflow

Uma Arquitetura de Linha de Produto Baseada em Componentes para Sistemas de Gerenciamento de Workflow Uma Arquitetura de Linha de Produto Baseada em Componentes para Sistemas de Gerenciamento de Workflow Itana M. S. Gimenes 1 itana@din.uem.br Fabrício R. Lazilha 2 fabricio@cesumar.br Edson A. O. Junior

Leia mais

GeCA: Uma Ferramenta de Engenharia Reversa e Geração Automática de Código

GeCA: Uma Ferramenta de Engenharia Reversa e Geração Automática de Código GeCA: Uma Ferramenta de Engenharia Reversa e Geração Automática de Código Igor Steinmacher 1, Éderson Fernando Amorim 1, Flávio Luiz Schiavoni 1, Elisa Hatsue Moriya Huzita 1 1 Departamento de Informática

Leia mais

UTILIZAÇÃO DE GERADORES DE APLICAÇÃO EM PROCESSOS ÁGEIS DE REENGENHARIA

UTILIZAÇÃO DE GERADORES DE APLICAÇÃO EM PROCESSOS ÁGEIS DE REENGENHARIA UNIVERSIDADE FEDERAL DE SÃO CARLOS CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO UTILIZAÇÃO DE GERADORES DE APLICAÇÃO EM PROCESSOS ÁGEIS DE REENGENHARIA RAQUEL

Leia mais

PADRÕES DE PROJETO E FRAMEWORK NO DESENVOLVIMENTO DE SOFTWARE

PADRÕES DE PROJETO E FRAMEWORK NO DESENVOLVIMENTO DE SOFTWARE PADRÕES DE PROJETO E FRAMEWORK NO DESENVOLVIMENTO DE SOFTWARE Nelson Ribeiro de Carvalho Júnior 1 RESUMO Atualmente o cenário mundial cuja dependência do software está cada vez mais evidente requer que

Leia mais

Planejamento da disciplina: Modelagem de processos de negócio

Planejamento da disciplina: Modelagem de processos de negócio UNIVERSIDADE FEDERAL DE MINAS GERAIS / INSTITUTO DE CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Planejamento da disciplina: Modelagem de processos de negócio Professor: Clarindo Isaías Pereira

Leia mais

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural Resumo: Perguntas a fazer ao elaborar um projeto arquitetural Sobre entidades externas ao sistema Quais sistemas externos devem ser acessados? Como serão acessados? Há integração com o legado a ser feita?

Leia mais

MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java

MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java Leonardo Gresta Paulino Murta Gustavo Olanda Veronese Cláudia Maria Lima Werner {murta, veronese, werner}@cos.ufrj.br COPPE/UFRJ Programa

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS AVANÇADO DE ARACATI PROJETO DE PESQUISA

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS AVANÇADO DE ARACATI PROJETO DE PESQUISA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS AVANÇADO DE ARACATI PROJETO DE PESQUISA IMPLEMENTAÇÃO DE SOLUÇÃO PARA AUTOMATIZAR O DESENVOLVIMENTO DE SOFTWARE UTILIZANDO A LINGUAGEM C#.NET

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Banco de Dados I. Introdução Conceitos

Banco de Dados I. Introdução Conceitos Banco de Dados I Introdução Conceitos Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Conceitos Fundamentais de Banco de Dados; Características

Leia mais

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reuso Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reutilização de Software Na maioria das áreas de engenharia de software, sistemas são desenvolvidos

Leia mais

Padrões de Requisitos para Especificação de Casos de Uso em Sistemas de Informação

Padrões de Requisitos para Especificação de Casos de Uso em Sistemas de Informação Padrões de Requisitos para Especificação de Casos de Uso em Sistemas de Informação Gabriela T. de Souza 1, 2, Carlo Giovano S. Pires 2 e Arnaldo Dias Belchior 1 1 Universidade de Fortaleza Av. Washington

Leia mais

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011 Banco de Dados Aula 1 - Prof. Bruno Moreno 16/08/2011 Roteiro Apresentação do professor e disciplina Definição de Banco de Dados Sistema de BD vs Tradicional Principais características de BD Natureza autodescritiva

Leia mais

Test-Module: uma ferramenta para gerenciamento de testes de software integrada ao FireScrum

Test-Module: uma ferramenta para gerenciamento de testes de software integrada ao FireScrum Test-Module: uma ferramenta para gerenciamento de testes de software integrada ao FireScrum Audrey B. Vasconcelos, Iuri Santos Souza, Ivonei F. da Silva, Keldjan Alves Centro de Informática Universidade

Leia mais

Essencial ao Desenvolvimento de Software

Essencial ao Desenvolvimento de Software Documento de Requisitos Essencial ao Desenvolvimento de Software De que se trata o artigo? Apresenta o documento de requisitos de software, destacando-o como um dos principais documentos pertinentes ao

Leia mais

MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET

MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP.NET Átila Correia Cunha 1, 2, Glaucon Henrique Mauricio Maia 1, 2, Waner Ferreira Tavares 1, 2, Jorge Bergson¹, Rui Gomes Patrício 3

Leia mais

Universidade Estadual de Maringá Centro de Tecnologia Departamento de Informática Programa de Pós-Graduação em Desenvolvimento de Sistemas para Web

Universidade Estadual de Maringá Centro de Tecnologia Departamento de Informática Programa de Pós-Graduação em Desenvolvimento de Sistemas para Web Universidade Estadual de Maringá Centro de Tecnologia Departamento de Informática Programa de Pós-Graduação em Desenvolvimento de Sistemas para Web } Com o forte crescimento do comércio eletrônico por

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados -

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados - Banco de Dados Aula 02 Modelagem de Dados Roteiro Definição Evolução Projeto de BD Abstração Esquema e Instância Definição É uma representação, normalmente gráfica, de estruturas de dados reais. Auxilia

Leia mais

PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS

PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS Élysson Mendes Rezende Bacharelando em Sistemas de Informação Bolsista de Iniciação Científica

Leia mais

Suporte à Engenharia Reversa para o ambiente SEA

Suporte à Engenharia Reversa para o ambiente SEA Otavio Pereira Suporte à Engenharia Reversa para o ambiente SEA Orientador: Ricardo Pereira e Silva Universidade Federal de Santa Catarina - UFSC Departamento de Informática e Estatística - INE Florianópolis

Leia mais

08/04/2013. Agenda. O Sistema CACHÉ. O Sistema CACHÉ. O Sistema CACHÉ. O Sistema CACHÉ

08/04/2013. Agenda. O Sistema CACHÉ. O Sistema CACHÉ. O Sistema CACHÉ. O Sistema CACHÉ Agenda Caché Server Pages Uma Aplicação Banco de Dados Fernando Fonseca Ana Carolina Salgado Mestrado Profissional 2 SGBD de alto desempenho e escalabilidade Servidor de dados multidimensional Arquitetura

Leia mais

WebUML: Uma Ferramenta Colaborativa de Apoio ao Projeto e Análise de Sistemas Descritos em Classes UML

WebUML: Uma Ferramenta Colaborativa de Apoio ao Projeto e Análise de Sistemas Descritos em Classes UML Carlos Henrique Pereira WebUML: Uma Ferramenta Colaborativa de Apoio ao Projeto e Análise de Sistemas Descritos em Classes UML Florianópolis - SC 2007 / 2 Resumo O objetivo deste trabalho é especificar

Leia mais

do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade;

do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade; 1 ARQUITETURA E DESIGN DE SOFTWARE O que é Arquitetura? do grego: arkhé (chefe ou mestre) + tékton (trabalhador ou construtor); tekhne arte ou habilidade; do dicionário: Arte de projetar e construir prédios,

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

Especificação de um Sistema Gerenciador de Workflow de Acordo com a Abordagem de Desenvolvimento Baseado em Componentes

Especificação de um Sistema Gerenciador de Workflow de Acordo com a Abordagem de Desenvolvimento Baseado em Componentes Especificação de um Sistema Gerenciador de Workflow de Acordo com a Abordagem de Desenvolvimento Baseado em Componentes Edson Alves de Oliveira Junior 1, Itana Maria de Souza Gimenes 1 1 Departamento de

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

Um Componente de Gerenciamento de Execução de Workflow Segundo a Abordagem de Linha de Produto de Software

Um Componente de Gerenciamento de Execução de Workflow Segundo a Abordagem de Linha de Produto de Software Um Componente de Gerenciamento de Execução de Workflow Segundo a Abordagem de Linha de Produto de Software Itana M. S. Gimenes 1 itana@din.uem.br Radames J. Halmeman 1 radames@cm.cefetpr.br Fabrício R.

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

Um Gerador de aplicações configurável. Edison Kicho Shimabukuro Junior

Um Gerador de aplicações configurável. Edison Kicho Shimabukuro Junior Um Gerador de aplicações configurável Edison Kicho Shimabukuro Junior SERVIÇO DE PÓS-GRADUAÇÃO DO ICMC-USP Data de Depósito: 19 de abril de 2006 Assinatura: Um Gerador de aplicações configurável Edison

Leia mais

BANCO DE DADOS E BUSINESS INTELIGENCE. C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03)

BANCO DE DADOS E BUSINESS INTELIGENCE. C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03) MBA em Gestão de TI MÓDULO: BANCO DE DADOS E BUSINESS INTELIGENCE C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03) PROFESSOR: Edison Andrade Martins Morais prof@edison.eti.br http://www.edison.eti.br

Leia mais

CASE Orientada a Objetos com Múltiplas Visões e Implementação Automática de Sistemas - MVCASE

CASE Orientada a Objetos com Múltiplas Visões e Implementação Automática de Sistemas - MVCASE CASE Orientada a Objetos com Múltiplas Visões e Implementação Automática de Sistemas - MVCASE Tathiana da Silva Barrére Antonio Francisco do Prado Vitor César Bonafe E-mail: (tathiana,prado,bonafe)@dc.ufscar.br

Leia mais

Núcleo de Pós Graduação Pitágoras

Núcleo de Pós Graduação Pitágoras Núcleo de Pós Graduação Pitágoras Professor: Fernando Zaidan Disciplina: Arquitetura da Informática e Automação MBA Gestão em Tecnologia 1 da Informaçao 2 Figura: Tela do IBM Mainframe Fonte: Arquivo próprio

Leia mais

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow Resumo. A fim de flexibilizar o fluxo de controle e o fluxo de dados em Sistemas Gerenciadores de Workflow (SGWf),

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

Engenharia Reversa para Recuperação de Modelos de Sistemas Desenvolvidos em PL/SQL

Engenharia Reversa para Recuperação de Modelos de Sistemas Desenvolvidos em PL/SQL Engenharia Reversa para Recuperação de Modelos de Sistemas Desenvolvidos em PL/SQL Rodnei Couto 1, Luana Lachtermacher 1, Soeli Fiorini 1, Akeo Tanabe 1, Gustavo Carvalho 1, Arndt von Staa 1, Ricardo Choren

Leia mais

Transformação de modelos em processos de desenvolvimento de software

Transformação de modelos em processos de desenvolvimento de software 1068 X Salão de Iniciação Científica PUCRS Transformação de modelos em processos de desenvolvimento de software Vinycio de Correa Lunelli 1, Profa. Dra. Ana Paula Terra Bacelo 1 1 Faculdade de Informática,

Leia mais

1 UML (UNIFIED MODELING LANGUAGE)

1 UML (UNIFIED MODELING LANGUAGE) 1 UML (UNIFIED MODELING LANGUAGE) Segundo Tonsig (2003), para conseguir desenvolver um software capaz de satisfazer as necessidades de seus usuários, com qualidade, por intermédio de uma arquitetura sólida

Leia mais

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP Banco de Dados Introdução João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP Importância dos Bancos de Dados A competitividade das empresas depende de dados precisos e atualizados. Conforme

Leia mais

Palavras-chave: Desenvolvimento Baseado em Componentes (DBC), Transformação de Software, framework e ObjectPascal.

Palavras-chave: Desenvolvimento Baseado em Componentes (DBC), Transformação de Software, framework e ObjectPascal. Construção e Reutilização de de Software do Domínio de Cardiologia João L C Moraes, Daniel Lucrédio, Adriano A Bossonaro, Dr Rubens Tofano, Prof Dr Antonio F Prado DC/UFSCar - Departamento de Computação

Leia mais

Figura 1 - Arquitetura multi-camadas do SIE

Figura 1 - Arquitetura multi-camadas do SIE Um estudo sobre os aspectos de desenvolvimento e distribuição do SIE Fernando Pires Barbosa¹, Equipe Técnica do SIE¹ ¹Centro de Processamento de Dados, Universidade Federal de Santa Maria fernando.barbosa@cpd.ufsm.br

Leia mais

Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software

Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software Usando RDL para Derivação de Produtos em uma Linha de Produtos de Software Juliano Dantas Santos Universidade Federal do Rio de Janeiro COPPE - Instituto Alberto Luiz Coimbra de Pós-Graduação e Pesquisa

Leia mais

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini Banco de Dados Conceitos e Arquitetura de Sistemas de Banco de Dados Profa. Flávia Cristina Bernardini Relembrando... Vantagens da Utilização de SGBD Redundância controlada Consistência dos dados armazenados

Leia mais

Plano de Ensino. Apresentação da Unidade Curricular

Plano de Ensino. Apresentação da Unidade Curricular Plano de Ensino Plano de Ensino Apresentação da Unidade Curricular o Funcionamento, arquitetura e conceitos fundamentais dos bancos de dados relacionais e objeto relacionais. Utilização de linguagem DDL

Leia mais

Unified Modeling Language UML - Notações

Unified Modeling Language UML - Notações Unified Modeling Language UML - Notações Prof. Ms. Elvio Gilberto da Silva elvio@fmr.edu.br UML Ponto de Vista É gerada com propósito geral de uma linguagem de modelagem visual usada para especificar,

Leia mais

PROPOSTA DE UMA FERRAMENTA DE AUTORIA PARA A GERAÇÃO DE CONTEÚDOS ON-LINE. Maio/2005 023-TC-C5

PROPOSTA DE UMA FERRAMENTA DE AUTORIA PARA A GERAÇÃO DE CONTEÚDOS ON-LINE. Maio/2005 023-TC-C5 1 PROPOSTA DE UMA FERRAMENTA DE AUTORIA PARA A GERAÇÃO DE CONTEÚDOS ON-LINE Maio/2005 023-TC-C5 Viviane Guimarães Ribeiro Universidade de Mogi das Cruzes vivianegr@yahoo.com.br Saulo Faria Almeida Barretto

Leia mais

Scrum-Half: Uma Ferramenta Web de Apoio ao Scrum

Scrum-Half: Uma Ferramenta Web de Apoio ao Scrum Scrum-Half: Uma Ferramenta Web de Apoio ao Scrum Diego R. Marins 1,2, José A. Rodrigues Nt. 1, Geraldo B. Xexéo 2, Jano M. de Sousa 1 1 Programa de Engenharia de Sistemas e Computação - COPPE/UFRJ 2 Departamento

Leia mais

Definição de Processos de Workflow

Definição de Processos de Workflow Definição de Processos de Tiago Telecken Universidade Federal do Rio Grande do Sul telecken@inf.ufrgs.br Resumo Este artigo apresenta uma introdução a tecnologia de workflow informando noções básicas sobre

Leia mais

Formalismos de Grafos de Interação (Surveys)

Formalismos de Grafos de Interação (Surveys) Formalismos de Grafos de Interação (Surveys) Disciplina:Tópicos em IHC II- Interação 3D Professor :Alberto Raposo Tópicos Motivação Fontes de Pesquisa Breve Descrição Conclusões Tópicos Motivação Fontes

Leia mais

Considerando-se a especificação de requisitos de um software, é INCORRETO afirmar que esse documento

Considerando-se a especificação de requisitos de um software, é INCORRETO afirmar que esse documento QUESTÕES DE TI QUESTÃO 16 Considerando-se o número de pontos de função para a estimativa do tamanho de um software, é INCORRETO afirmar que, na contagem de pontos, leva-se em consideração A) as compilações

Leia mais

Instituto de Computação, Universidade Federal do Amazonas (UFAM) Manaus-AM, Brasil

Instituto de Computação, Universidade Federal do Amazonas (UFAM) Manaus-AM, Brasil Elicitação de Requisitos a partir de Modelos de Processos de Negócio e Modelos Organizacionais: Uma pesquisa para definição de técnicas baseadas em heurísticas Marcos A. B. de Oliveira 1, Sérgio R. C.

Leia mais

COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP

COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP Cleber de F. Ferreira¹, Roberto Dias Mota¹. ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil cleberferreirasi@hotmail.com, motaroberto@hotmail.com Resumo.

Leia mais

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados

Leia mais

PROGRAMAÇÃO MVC E ZEND FRAMEWORK

PROGRAMAÇÃO MVC E ZEND FRAMEWORK PROGRAMAÇÃO MVC E ZEND FRAMEWORK MVC PROGRAMMING AND ZEND FRAMEWORK Rodolfo Vinícius Moimas Dias Centro Universitário Filadélfia de Londrina UniFil Rafael Francovig Cavicchioli Centro Universitário Filadélfia

Leia mais

DESENVOLVENDO APLICAÇÕES WEB UTILIZANDO A FERRAMENTA WEBSCHARTS

DESENVOLVENDO APLICAÇÕES WEB UTILIZANDO A FERRAMENTA WEBSCHARTS UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL DEPARTAMENTO DE COMPUTAÇÃO E ESTATÍSTICA DESENVOLVENDO APLICAÇÕES WEB UTILIZANDO A FERRAMENTA WEBSCHARTS LÍCIO SÉRGIO FERRAZ DE BRITO MARCELO AUGUSTO SANTOS TURINE

Leia mais

Palavras-Chaves: Arquitetura, Modelagem Orientada a Objetos, UML.

Palavras-Chaves: Arquitetura, Modelagem Orientada a Objetos, UML. MODELAGEM ORIENTADA A OBJETOS APLICADA À ANÁLISE E AO PROJETO DE SISTEMA DE VENDAS ALTEMIR FERNANDES DE ARAÚJO Discente da AEMS Faculdades Integradas de Três Lagoas ANDRE LUIZ DA CUNHA DIAS Discente da

Leia mais

MODELAGEM DE UM SUBSISTEMA IMOBILIÁRIO UTILIZANDO LINHAS DE PRODUTO DE SOFTWARE MODELING A REAL ESTATE SUBSYSTEM USING SOFTWARE PRODUCT LINES

MODELAGEM DE UM SUBSISTEMA IMOBILIÁRIO UTILIZANDO LINHAS DE PRODUTO DE SOFTWARE MODELING A REAL ESTATE SUBSYSTEM USING SOFTWARE PRODUCT LINES MODELAGEM DE UM SUBSISTEMA IMOBILIÁRIO UTILIZANDO LINHAS DE PRODUTO DE SOFTWARE MODELING A REAL ESTATE SUBSYSTEM USING SOFTWARE PRODUCT LINES Silvia Ribeiro Mantuani 1 ; Fernando Henrique Campos 2 ; Vinícius

Leia mais

Com relação às áreas de conhecimento de projetos conforme o. PMBoK, julgue os itens subseqüentes.

Com relação às áreas de conhecimento de projetos conforme o. PMBoK, julgue os itens subseqüentes. De acordo com o comando a que cada um dos itens de 1 a 70 se refira, marque, na folha de respostas, para cada item: o campo designado com o código C, caso julgue o item CERTO; ou o campo designado com

Leia mais

Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software

Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software Ricardo Terra 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Campus da Pampulha 31.270-010

Leia mais

Um Processo de Engenharia de Domínio com foco no Projeto Arquitetural Baseado em Componentes

Um Processo de Engenharia de Domínio com foco no Projeto Arquitetural Baseado em Componentes Um Processo de Engenharia de Domínio com foco no Projeto Arquitetural Baseado em Componentes Ana Paula Blois 1, 2, Karin Becker 2, Cláudia Werner 1 1 COPPE/UFRJ, Universidade Federal do Rio de Janeiro,

Leia mais

Documentação de um Produto de Software

Documentação de um Produto de Software Documentação de um Produto de Software Versão 3.0 Autora: Profª Ana Paula Gonçalves Serra Revisor: Prof. Fernando Giorno 2005 ÍNDICE DETALHADO PREFÁCIO... 4 1. INTRODUÇÃO AO DOCUMENTO... 6 1.1. TEMA...

Leia mais

Aplicação de Apoio Computacional Baseado em Processos de Negócio e Serviços Web para o Desenvolvimento Distribuído de Software

Aplicação de Apoio Computacional Baseado em Processos de Negócio e Serviços Web para o Desenvolvimento Distribuído de Software Aplicação de Apoio Computacional Baseado em Processos de Negócio e Serviços Web para o Desenvolvimento Distribuído de Software Gabriel Costa Silva 1, Itana Maria de Souza Gimenes 1, Marcelo Fantinato 2,

Leia mais

Em Busca de uma Arquitetura de Referência para Frameworks de Aplicação Dirigidos por Modelos para Sistemas de Informação

Em Busca de uma Arquitetura de Referência para Frameworks de Aplicação Dirigidos por Modelos para Sistemas de Informação Em Busca de uma Arquitetura de Referência para Frameworks de Aplicação Dirigidos por Modelos para Sistemas de Informação Valdemar Vicente GRACIANO NETO 1 ; Juliano Lopes DE OLIVEIRA 1 1 Instituto de Informática

Leia mais

Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso

Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso Lourival dos Santos Pires Júnior, Tony Carlos Bignardi dos Santos, Amaury Antônio de Castro Junior, Carlos Alberto da Silva, Leila Lisiane Rossi

Leia mais

WebApps em Java com uso de Frameworks

WebApps em Java com uso de Frameworks WebApps em Java com uso de Frameworks Fred Lopes Índice O que são frameworks? Arquitetura em camadas Arquitetura de sistemas WEB (WebApps) Listagem resumida de frameworks Java Hibernate O que são frameworks?

Leia mais

Sistemas para internet e software livre

Sistemas para internet e software livre Sistemas para internet e software livre Metodologia de modelagem de aplicações WEB Image: FreeDigitalPhotos.net Domínio: Elementos de aplicação WEB Páginas Web Scripts Formulários Applets e ActiveX Motivação

Leia mais

Agenda da Aula. Resumo dos Padrões (Aula 4) Padrões Arquiteturais. Arquitetura Cliente-Servidor. Arquitetura Cliente-Servidor

Agenda da Aula. Resumo dos Padrões (Aula 4) Padrões Arquiteturais. Arquitetura Cliente-Servidor. Arquitetura Cliente-Servidor Reuso de Software Aula 05 Agenda da Aula Linha de Produtos de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 19 Março 2012 Padrões arquiteturais Cliente-Servidor

Leia mais

EXPSEE: UM AMBIENTE EXPERIMENTAL DE ENGENHARIA DE SOFTWARE ORIENTADO A PROCESSOS

EXPSEE: UM AMBIENTE EXPERIMENTAL DE ENGENHARIA DE SOFTWARE ORIENTADO A PROCESSOS EXPSEE: UM AMBIENTE EXPERIMENTAL DE ENGENHARIA DE SOFTWARE ORIENTADO A PROCESSOS Edson Alves de Oliveira Junior (1) Igor Fábio Steinmacher (2) eaojunio@bol.com.br ifsteinm@din.uem.br Edna Tomie Takano

Leia mais

Frameworks. Pasteur Ottoni de Miranda Junior

Frameworks. Pasteur Ottoni de Miranda Junior Frameworks Pasteur Ottoni de Miranda Junior 1-Definição Apesar do avanço das técnicas de desenvolvimento de software, a construção de software ainda é um processo extremamente complexo.a reutilização tem

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

Gerenciamento de Configuração de Software

Gerenciamento de Configuração de Software Gerenciamento de Configuração de Software Prof. Ricardo Argenton Ramos [Baseado na apresentação do prof. Masiero ICMC-USP] Contexto para Gerência de Configuração 2 Problema dos Dados Compartilhados Desenvolvedor

Leia mais

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44 Armazenando Dados em Aplicações Java Parte 2 de 3: Apresentando as opções Hua Lin Chang Costa, hualin@cos.ufrj.br, COPPE/UFRJ. Leonardo Gresta Paulino Murta, leomurta@ic.uff.br, IC/UFF. Vanessa Braganholo,

Leia mais

Introdução ao Design

Introdução ao Design Introdução ao Design João Arthur e Guilherme Germoglio Coordenação de Pós-graduação em Informática - COPIN 16/10/2008 João Arthur e Guilherme Germoglio 1/ 33 Roteiro 1 Introdução Objetivos 2 Definições

Leia mais

MVC e Camadas - Fragmental Bliki

MVC e Camadas - Fragmental Bliki 1 de 5 20-03-2012 18:32 MVC e Camadas From Fragmental Bliki Conteúdo 1 Introdução 2 Camadas: Separação Entre Componentes 3 MVC: Interação Entre Componentes 4 Conclusão 5 Referências Introdução A Arquitetura

Leia mais

Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI

Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI Fundamentos de Banco de Dados Aula 01 Introdução aos Sistemas de Bancos de Dados Introdução aos Sistemas de BD Objetivo Apresentar

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO Contribuições do MDA para o desenvolvimento de software Anna Carla Mohr Verner Helder Eugenio dos Santos Puia Florianópolis,

Leia mais

Um processo para construção de software mais transparente

Um processo para construção de software mais transparente Um processo para construção de software mais transparente Eduardo Almentero 1, and Julio Cesar Sampaio do Prado Leite 1 1 Pontifícia Universidade Católica do Rio de Janeiro, PUC - Rio, Brasil {ealmentero,

Leia mais

Ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído

Ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído Ferramenta para instanciação de processos de software que permite o gerenciamento de projetos de desenvolvimento distribuído Ana Paula Chaves 1, Jocimara Segantini Ferranti 1, Alexandre L Erário 1, Rogério

Leia mais

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian Banco de Dados Aula 02 Colégio Estadual Padre Carmelo Perrone Profº: Willian Conceitos básicos Dado: Valor do campo quando é armazenado dento do BD; Tabela Lógica: Representa a estrutura de armazenamento

Leia mais

Tecnologia para Sistemas Inteligentes Apontamentos para as aulas sobre. Introdução à Representação e Processamento de Ontologias: Framework O3f

Tecnologia para Sistemas Inteligentes Apontamentos para as aulas sobre. Introdução à Representação e Processamento de Ontologias: Framework O3f Tecnologia para Sistemas Inteligentes Apontamentos para as aulas sobre Introdução à Representação e Processamento de Ontologias: Framework O3f Luís Miguel Botelho Departamento de Ciências e Tecnologias

Leia mais

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 Controle de Revisões Micropagamento F2b Web Services/Web 18/04/2006 Revisão Data Descrição 00 17/04/2006 Emissão inicial. www.f2b.com.br

Leia mais

SISTEMA GERENCIAL TRATORPLAN

SISTEMA GERENCIAL TRATORPLAN SISTEMA GERENCIAL TRATORPLAN SIGET Fabrício Pereira Santana¹, Jaime William Dias¹, ², Ricardo de Melo Germano¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil fabricioblack@gmail.com germano@unipar.br

Leia mais

Banco de Dados. Maurício Edgar Stivanello

Banco de Dados. Maurício Edgar Stivanello Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado

Leia mais

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS Pablo dos Santos Alves Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação Revisão bibliográfica

Leia mais

ArgoCASEGEO + TerraLib = bancos de dados geográficos para aplicações Small GIS

ArgoCASEGEO + TerraLib = bancos de dados geográficos para aplicações Small GIS ArgoCASEGEO + TerraLib = bancos de dados geográficos para aplicações Small GIS Alexandre Gazola, Gustavo Breder Sampaio, Jugurta Lisboa Filho Departamento de Informática Universidade Federal de Viçosa

Leia mais

PL-SCIENCE: CONECTANDO ONTOLOGIAS E MODELOS DE FEATURES EM UMA LINHA DE PRODUTO PARA APLICAÇÕES CIENTÍFICAS

PL-SCIENCE: CONECTANDO ONTOLOGIAS E MODELOS DE FEATURES EM UMA LINHA DE PRODUTO PARA APLICAÇÕES CIENTÍFICAS PL-SCIENCE: CONECTANDO ONTOLOGIAS E MODELOS DE FEATURES EM UMA LINHA DE PRODUTO PARA APLICAÇÕES CIENTÍFICAS Gabriella Castro Barbosa Costa gabriellacbc@gmail.com Orientadores Regina Maria Maciel Braga

Leia mais

Spider-PM: Uma Ferramenta de Apoio à Modelagem de Processos de Software

Spider-PM: Uma Ferramenta de Apoio à Modelagem de Processos de Software Spider-PM: Uma Ferramenta de Apoio à Modelagem de Processos de Software Renan Sales Barros 1, Sandro Ronaldo Bezerra Oliveira 1 1 Faculdade de Computação Instituto de Ciências Exatas e Naturais (ICEN)

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

Construção da Camada de Interface Gráfica e de um Wizard para o Framework GRENJ

Construção da Camada de Interface Gráfica e de um Wizard para o Framework GRENJ UNIVERSIDADE FEDERAL DE SÃO CARLOS CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO Construção da Camada de Interface Gráfica e de um Wizard para o Framework

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

Agregando Frameworks em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet

Agregando Frameworks em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet Barreto, C.G., Fuks, H. & Lucena, C.J.P. (2005) Agregando Frameworks em uma Arquitetura Baseada em Componentes: Um Estudo de Caso no Ambiente AulaNet, Anais do 5º Workshop de Desenvolvimento Baseado em

Leia mais

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados 1. Conceitos Básicos No contexto de sistemas de banco de dados as palavras dado e informação possuem o mesmo significado, representando uma

Leia mais