Histórico de revisões

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

Download "Histórico de revisões"

Transcrição

1

2 Design Patterns

3 Histórico de revisões Data Versão Descrição Autor 15/1/ Finalização da primeira versão HEngholmJr

4 OBJETIVOS Fornecer uma visão geral sobre Design Patterns visando atingir os requisitos não funcionais dos projetos.

5 REQUISITOS NÃO FUNCIONAIS Adaptabilidade (Atender a novos propósitos sem grandes alterações no sistema, e.g., novos tipos de investimentos) Extensibilidade (Adição de novos serviços, extensão de serviços existentes sem impactos no restante do sistema) Manutenibilidade (Esforço exigido para localizar e reparar erros em um sistema ou para modificá-lo com o propósito de adaptá-lo a um novo ambiente,) Reusabilidade (Capacidade de reutilização de módulos do sistema em outras aplicações)

6 REQUISITOS NÃO FUNCIONAIS Performance (E.g., velocidade, taxas de transferências de dados, tempo de resposta) Escalabilidade (Capacidade do sistema manter o desempenho mesmo com o aumento do número de usuários) Confiabilidade (Exatidão, possibilidade de recuperação, poucos números de falhas,...) Usabilidade (Facilidade para que usuário aprenda a utilizar e de utilização do sistema)

7 Pattern Concept Conceitos do design orientado a Objetos Base dos padrões orientados a objetos: Coesão Encapsulamento Acoplamento Herança Composição Herança por interface Polimorfismo

8 Conceitos do design orientado a Objetos Coesão Coesão é o grau em que os métodos e atributos de uma classe estão relacionados a apenas uma finalidade no sistema Vantagens de alta coesão: Evita o efeito colateral de se alterar códigos não relacionados dentro de uma mesma classe Melhora a legibilidade, esclarecendo o papel exato da classe Facilita a criação de pequenos componentes reutilizáveis

9 Coesão Conceitos do design orientado a Objetos

10 Conceitos do design orientado a Objetos Encapsulamento A estrutura interna e comportamento de um objeto não deve ser exposto Esconder a informação é fundamental para o encapsulamento adequado, os dados do objeto devem ser mantidas em sigilo. Métodos de acesso e modificadores devem fornecer uma interface para acesso aos dados Vantagens Implementação de uma classe pode variar sem mudar sua interface Os desenvolvedores podem usar a classe sem conhecer todos os seus detalhes de implementação Impossibilidade de modificações inadequadas de atributo

11 Conceitos do design orientado a Objetos Encapsulamento

12 Conceitos do design orientado a Objetos Acoplamento Acoplamento é uma medida de como as classes dependentes estão no outras classes. Para reduzir o acoplamento: Ocultar a implementação das classes Utilizar interfaces de classes abstratas Reduzir o número de métodos na interface da classe Considere o acoplamento de todo o sistema, em vez de apenas entre as classes individuais

13 Acoplamento Conceitos do design orientado a Objetos

14 Conceitos do design orientado a Objetos Herança Herança garante que as subclasses herdem atributos compartilhados e métodos de uma superclasse Vantagens Evita a duplicação de código que é comum aos subtipos Organiza classes de acordo com a herança Desvantagens Força subclasses a herdar tudo de sua superclasse Alterações para a superclasse pode afetar a subclasse

15 Herança Conceitos do design orientado a Objetos

16 Conceitos do design orientado a Objetos Composição Construa objetos complexos a partir de objetos mais simples.

17 Conceitos do design orientado a Objetos Herança de interface Herança de interface é a separação da definição de uma interface de sua implementação. Similar aos dispositivos de hardware que implementam uma interface comum Pode fazer uma classe ser estendida sem ser modificada

18 Conceitos do design orientado a Objetos Polimorfismo Polimorfismo permite invocar operações de objetos específicos através de referências genéricas. Aspectos de polimorfismo Permite atribuir diferentes tipos de objetos em tempo de execução A implementação do método é determinada pelo tipo de objeto Vantagens Permite-lhe escrever código genérico que não depende de uma subclasse específica Permite codificar menos métodos porque um supertipo pode ser especificado como o tipo de parâmetro

19 Conceitos do design orientado a Objetos Polimorfismo - Exemplo

20 Exploração dos princípios de Design Orientado a Objetos A Gang of Four (Gamma, Helm, Johnson e Vlissides) indica 3 princípios de design orientado a objetos Favoreça a composição Programe para interfaces Realize o design prevendo mudanças

21 Exploração dos princípios de Design Orientado a Objetos Favoreça a composição Reuse funcionalidades através da composição ao invés de herança, reusabilidade caixa preta.

22 Exploração dos princípios de Design Orientado a Objetos Favoreça a composição No relacionamento de composição, um objeto pode conter de uma a várias instâncias de um outro objeto, sendo responsável pela sua criação e destruição. Uma pessoa poderá ter vários telefones que são armazenados na forma de um atributo no objeto Pessoa, chamado telefones. Este atributo na verdade é uma lista de objetos do tipo Telefone. Os objetos Telefone fazem são parte do objeto Pessoa, ou seja, um objeto Telefone (parte) fará parte somente de um único objeto Pessoa (todo). Quando o objeto Pessoa for destruído, seus objetos telefone também serão.

23 Exploração dos princípios de Design Orientado a Objetos Programe para a interface

24 Exploração dos princípios de Design Orientado a Objetos Realize o design prevendo mudanças Requisitos mudam, deste modo realize o design prevendo mudanças Utilize o princípio Open-Closed, entidades de software como as classes devem estar abertos para extensão e fechados para alteração.

25 Padrões de design

26 Design Patterns Soluções conhecidas para problemas conhecidos Cada padrão descreve um problema que ocorre repetidas vezes em nosso ambiente ou são bem conhecidos no mercado, descrevendo uma solução para esse problema, de uma maneira que você pode usá-la diversas vezes sem ter que encontrar a solução sozinho. Apenas use a solução, ele já existe, já foi testada centenas de vezes e é utilizada por milhares de sistemas.

27 Catálogos de Design Patterns - GoF Catálogo de Design Patterns Gang of Four (Primeira publicação de vários padrões de projeto, influenciou muitos padrões J2EE) - Catálogo J2EE Patterns GoF Gamma, Helm, Johnson, Vlissides

28 Elementos do Design Pattern Padrões de projeto incluem os seguintes elementos: Contexto - Situação em que o problema sendo abordado ocorre Problema - problema de design que o padrão está focado Forças - Requisitos que a solução deve satisfazer Solução e Estrutura - Solução para o problema Consequências - Vantagens e desvantagens de usar o padrão Padrões relacionados - padrões que são similares ou são usados para construir esse padrão

29 Notação do Design Pattern Pode ser representado utilizando-se UML através de diagramas de classe e sequencia. Class Diagram System Sequence Diagram Login DataHora +DataHora datahora:s tring data:s tring hora:s tring Menu host:s tring perfilusuario:int cousuario:int coempresa:int flaga dm Sistema:boolean +Menu -preenchemenu:void +retornaitems implesdemenu:string -retornacabecalho:string -retornaitemdemenuv ariositens:s tring -retornarodape:s tring AcessoBD +BeanD ec onexao Usuario loginui LoginServlet usuariocliente sistemaui 1: loginservlet 2: recuperadadosusuario 3: forward m enu:s tring opcoesdeavaliacoes:string opcoesdorh:string opcoesdeadministrador:string

30 Quando e onde aplicar Patterns Algumas literaturas sugerem a utilização de padrões pró-ativamente nos projetos Outras literatura sugerem a utilização de poucos padrões e refatoração dos mesmos no design do projeto De qualquer maneira, deve-se procurar um equilíbrio de design entre flexibilidade e simplicidade Depois de aprender design patterns, você provavelmente estará inclinado a resolver todos os problemas utilizando-se de padrões de design

31 Gang of Four (GoF) Patterns: Groups Padrões de comportamento: Descrevem como os objetos interagem e distribuem responsabilidades Padrões de criação: Fornecem formas mais robusta para a criação objetos Padrões estruturais: Padrões relacionados ao interrelacionamento entre objetos

32 Gang of Four Behavioral Patterns Strategy pattern: Encapsula uma família de algoritmos para uso intercambiável Command pattern: Encapsula solicitações de comandos entre objetos para execução pelo outro objeto Iterator pattern: Iterage coleções de maneira fracamente acoplada. Observer pattern: Fornece notificação de eventos através de um objeto observador

33 Gang of Four Behavioral Patterns Exemplo Strategy pattern: Necessidade de se alterar algoritmo de ordenação em tempo de execução. O objeto cliente seleciona qual tipo de sub-tipo da interface Strategy deve ser utilizado.

34 Gang of Four Behavioral Patterns Exemplo Strategy pattern: 1 public class CatalogSearchEngine { 2 3 private SortStrategy sorter; 4 5 public CatalogSearchEngine(SortStrategy ss) { 6 sorter = ss; 7 } 8 public ArrayList search() { 9 ArrayList list = //perform search 10 sorter.sort(list); 11 return list; 12 } 13 }

35 Gang of Four Behavioral Patterns Exemplo Strategy pattern: Strategy pattern interface: 1 public interface SortStrategy { 2 public void sort(arraylist al); 3 } First strategy implementation: 1 public class QuickSort implements SortStrategy { 2 public void sort(arraylist al) { 3 //implement Quick sort code 4 } 5 }

36 Gang of Four Behavioral Patterns

37 Gang of Four Creational Patterns Factory pattern: Cria objetos de uma classe ou suas subclasses através de uma chamada de método Abstract Factory pattern: Cria uma família de objetos através de uma interface única Singleton pattern: Restringe uma classe para uma instância globalmente acessível

38 Gang of Four Behavioral Patterns Exemplo Factory pattern: A classe cliente obtém uma referência genérica de fábrica para um objeto ConcreteFactory O cliente chama o método de fábrica createproduct na ConcreteFactory O método de fábrica retorna uma referência de um produto para uma nova ConcreteProduct Se o cliente obtém uma referência para uma ConcreteFactory diferente, ele receberá um ConcreteProduct diferente

39 Gang of Four Behavioral Patterns Exemplo JDBC API Factory pattern:

40 Gang of Four Behavioral Patterns Exemplo Factory pattern: O código para utilizar o pattern acima poderia ser: Factory f = new ConcreteFactory1(); Menu m = f.createmenu ();

41 Gang of Four Behavioral Patterns Exemplo Singleton pattern Existem classes que devemos ter apenas uma única instância da mesma A única instância de uma classe deve ser facilmente acessada de diferentes partes da aplicação A única maneira de proteger a criação de um único objeto de uma classe é escondendo o construtor da mesma

42 Gang of Four Structural Patterns Façade pattern: Fornece uma interface simplificada para um subsistema Proxy pattern: Fornece um objeto intermediário que controla o acesso a um outro objeto. Adapter pattern: Permite chamadas para utilização um objeto que tem uma interface incompatível Composite pattern: Compõe objetos em estruturas parte-todo de estruturas tipo árvore. Decorator pattern: Anexa dinamicamente novas funcionalidades em um objeto.

43 Gang of Four Structural Patterns

44 Gang of Four Structural Patterns

45 Gang of Four Structural Patterns

46 Gang of Four Structural Patterns

47 Gang of Four Structural Patterns

48 Design Pattern Selection A seleção do padrão deve ser baseada em semelhanças entre o contexto, o problema, e o problema do design Múltiplos padrões podem ser usados para resolver um problema particular

49 Padrões de arquitetura

50 Model View Controller (MVC) Pattern Model View Controller (MVC) é um padrão de arquitetura Encontrado em muitos lugares, incluindo no Java Foundation Classes / Swing (JFC / Swing) API Separa o gerenciamento da apresentação da lógica do aplicativo Útil em aplicações onde a interface do usuário pode mudar freqüentemente MVC pode ser adaptado para aplicações Web

51 Aplicando o MVC Pattern Separa apresentação do estado e comportamento. Interfaces de usuário e de processamento de negócios mudam frequentemente de forma independente e alguns sistemas têm múltiplas interfaces de usuário A interface de usuário deve ser dissociada dos dados e do processamento Você pode exibir as mesmas informações em diferentes pontos de vista Os pontos de vista podem precisar refletir imediatamente as alterações do modelo de dados Os dados do modelo devem responder imediatamente às mudanças iniciadas nas interfaces

52 (Model 1/Model 2)

53 Aplicando o padrão MVC O padrão Model View Controller divide o sistema em três conjuntos de componentes: Model - Contém os dados de negócios, processamento e regras. O modelo não deve ter quaisquer detalhes sobre a interface do usuário View - Exibe uma interface gráfica de usuário (GUI), contendo os componentes do modelo de dados para o usuário e, normalmente, passa eventos GUI aos componentes do controller Controller - Aceita pedidos do usuário, invoca o processamento sobre os componentes do modelo, e determina qual componente da camada View deve ser exibido

54 Overview do pattern MVC * << Envia input do usuário * Controler -View -Model +updatemodel() +chooseview() * Seleciona >> * * View User controls * Updates >> Model * << Uses * State Data

55 J2EE Pattern Catalog

56 J2EE Pattern Catalog O catálogo de padrões J2EE são agrupados em três níveis: Integration tier Business tier Presentation tier

57 J2EE Integration Tier Patterns Service Activator - Permite que um cliente de forma assíncrona invocar um componente EJB, usando o Java Message Service (JMS) API Data Access Object - Isola banco de dados de código específico em classes que expõem uma interface de negócios Domain Store - Cria um mecanismo de persistência robusto que é transparente para os objetos de negócios sem usar os beans de entidade Web Service Broker - Faz serviços empresariais disponíveis como serviços web

58 Exemplo DAO Design Patterns

59 J2EE Business Tier Patterns Service Locator - Elimina a necessidade de um cliente plataforma J2EE estar ciente do Java Naming and Directory Interface (JNDI) API na aquisição de componentes de negócios Session Façade - Fornece a camada de apresentação com uma interface simples para acessar a camada de negócios Business Delegate - Fornece acesso flexível aos componentes camada de negócios Transfer Object - Reduz o número de chamadas de método remoto, retornando vários valores em um objeto

60 J2EE Business Tier Patterns Application Service - Centraliza a lógica de negócios entre services facades e os objetos de negócios Businness Object - Separa dados de negócio da lógica de negócios e workflow lógico Transfer Object Assembler - Monta objeto de transferência de dados de múltiplos objetos de negócios Composite Entity - Wraps um número de objetos relacionados em uma única entidade Value List Handler - Fornece um mecanismo eficiente para a execução de consultas que pode retornar um grande número de objetos e navegar através dos resultados

61 J2EE Presentation Tier Patterns Interceptando Filter - Gerencia de processamento de pré e pósprocessamento de um pedido do cliente Front Controller - Fornece um mecanismo para gerenciamento centralizado de solicitações de usuários Application Controller - Separa a invocação da gestão e despacho da view do componente front controller Context Object Passa os dados de objetos de contexto específico, sem passar esses objetos

62 J2EE Presentation Tier Patterns View Helper - Fatores fora de recuperação de conteúdo necessárias para construir a visão Composite View - Constrói uma view a partir de diferentes views Dispatcher View - Combina a Front Controller e padrões View Helper Service to Worker - Similar ao padrão Dispatcher View, exceto que o controlador frontal tem mais responsabilidade para seleção da visão e invocação do processo de negócios

63 Front Controller Pattern Client Front controler Page controler View (JSP) Model (Beans) HTTP request Common functions Update Forward Update Forward HTTP response Fornece um único local que encapsula o processamento de solicitação comum

Argo Navis J931 - Padrões de Design J2EE. Introdução. Objetivos de aprender padrões J2EE. Conhecer padrões para uso na plataforma J2EE

Argo Navis J931 - Padrões de Design J2EE. Introdução. Objetivos de aprender padrões J2EE. Conhecer padrões para uso na plataforma J2EE Padrões de Projeto J2EE J931 Introdução Helder da Rocha (helder@acm.org) argonavis.com.br Objetivos de aprender padrões J2EE Conhecer padrões para uso na plataforma J2EE Padrões permitem maior reuso, menos

Leia mais

Programação Orientada a Objetos. Padrões de Criação

Programação Orientada a Objetos. Padrões de Criação Programação Orientada a Objetos Padrões de Criação Cristiano Lehrer, M.Sc. Objetivos Apresentar cada um dos 23 padrões clássicos descrevendo: O problema que solucionam. A solução. Diagramas UML (Unified

Leia mais

Tecnologias Web. Padrões de Projeto - Camada de Apresentação

Tecnologias Web. Padrões de Projeto - Camada de Apresentação Tecnologias Web Padrões de Projeto - Camada de Apresentação Cristiano Lehrer, M.Sc. Padrões da Camada de Apresentação (1/2) Intercepting Filter Viabiliza pré e pós processamento de requisições. Front Controller

Leia mais

Prototype, um Design Patterns de Criação

Prototype, um Design Patterns de Criação Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe

Leia mais

Padrões de Projeto. Prof. Jefersson Alex dos Santos (jefersson@dcc.ufmg.br) http://www.dcc.ufmg.br/~jefersson

Padrões de Projeto. Prof. Jefersson Alex dos Santos (jefersson@dcc.ufmg.br) http://www.dcc.ufmg.br/~jefersson Padrões de Projeto Prof. Jefersson Alex dos Santos (jefersson@dcc.ufmg.br) http://www.dcc.ufmg.br/~jefersson Apresentação Conceitos Definição Ponto de vista prático História Padrões de Projeto Conhecidos

Leia mais

Argo Navis J931 - Padrões de Design J2EE. Versão 2.0 (setembro de 2003) Objetivos

Argo Navis J931 - Padrões de Design J2EE. Versão 2.0 (setembro de 2003) Objetivos de Projeto J931 J2EE Versão 2.0 (setembro de 2003) Helder da Rocha (helder@acm.org) argonavis.com.br Objetivos Identificar os principais padrões de projeto J2EE Distinguir os principais padrões de projeto

Leia mais

PADRÕES DE SOFTWARE. Jerffeson Teixeira de Souza, Ph.D. Tarciane de Castro Andrade. Grupo de Padrões de Software da UECE (GPS.

PADRÕES DE SOFTWARE. Jerffeson Teixeira de Souza, Ph.D. Tarciane de Castro Andrade. Grupo de Padrões de Software da UECE (GPS. PADRÕES DE SOFTWARE 1 Jerffeson Teixeira de Souza, Ph.D. Tarciane de Castro Andrade Grupo de Padrões de Software da UECE (GPS.UECE) Julho-2009 CONTEÚDO Introdução aos Padrões de Software O quê são padrões?

Leia mais

Padrões de Projeto WEB e o MVC

Padrões de Projeto WEB e o MVC Padrões de Projeto WEB e o MVC Padrões de Projeto WEB e o MVC O que são padrões? "Cada padrão descreve um problema que ocorre freqüentemente em seu ambiente, e então descreve o cerne da solução para aquele

Leia mais

Curso - Padrões de Projeto Módulo 1: Introdução

Curso - Padrões de Projeto Módulo 1: Introdução Curso - Padrões de Projeto Módulo 1: Introdução Vítor E. Silva Souza vitorsouza@gmail.com http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java: Graduação

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

Padrões. Projeto (Design) de Software

Padrões. Projeto (Design) de Software Padrões Projeto de Softwares Categorias de Padrões Processo de Tradução de modelos de análise (isentos de tecnologia, lógicos) para modelos de projeto (development-ready, físicos) Qual a Tecnologia Alvo

Leia mais

1Introdução Helder da Rocha (helder@acm.org)

1Introdução Helder da Rocha (helder@acm.org) J930 Padrões Projeto de 1Introdução Helder da Rocha (helder@acm.org) argonavis.com.br O que é um padrão? Maneira testada ou documentada de alcançar um objetivo qualquer Padrões são comuns em várias áreas

Leia mais

Padrões de projeto 1

Padrões de projeto 1 Padrões de projeto 1 Design Orientado Objeto Encapsulamento Herança Polimorfismo Design Patterns 2 Responsabilidades Booch e Rumbaugh Responsabilidade é um contrato ou obrigação de um tipo ou classe. Dois

Leia mais

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária Cascavel Novembro de 2009 Pedro Patitucci Finamore Daniel Bordignon Cassanelli Marco Antonio da Rosa DIAGRAMAS DE CLASSE E SEQUÊNCIA

Leia mais

J930. Padrões. Projeto. Introdução. argonavis.com.br. Helder da Rocha (helder@acm.org)

J930. Padrões. Projeto. Introdução. argonavis.com.br. Helder da Rocha (helder@acm.org) Padrões de J930 Projeto Introdução Helder da Rocha (helder@acm.org) argonavis.com.br O que é um padrão? Maneira testada ou documentada de alcançar um objetivo qualquer Padrões são comuns em várias áreas

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

Padrões Arquiteturais e de Integração - Parte 1

Padrões Arquiteturais e de Integração - Parte 1 1 / 58 - Parte 1 Erick Nilsen Pereira de Souza T017 - Arquitetura e Design de Aplicações Análise e Desenvolvimento de Sistemas Universidade de Fortaleza - UNIFOR 11 de fevereiro de 2015 2 / 58 Agenda Tópicos

Leia mais

Aprenda as melhores práticas para construir um completo sistema de teste automatizado

Aprenda as melhores práticas para construir um completo sistema de teste automatizado Aprenda as melhores práticas para construir um completo sistema de teste automatizado Renan Azevedo Engenheiro de Produto de Teste e Medição -Américas Aprenda as melhores práticas para construir um completo

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

Eduardo Bezerra. Editora Campus/Elsevier Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 11 Arquitetura do sistema Nada que é visto, é visto de uma vez e por completo. --EUCLIDES

Leia mais

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) RELATÓRIO DE ENTREGA DO PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) PARA A ELABORAÇÃO DOS PLANOS MUNICIPAIS DE GESTÃO INTEGRADA DE RESÍDUOS SÓLIDOS PMGIRS PARA OS MUNICÍPIOS DE NOVO HORIZONTE, JUPIÁ, GALVÃO,

Leia mais

Padrões GoF. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Padrões GoF. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Padrões GoF Leonardo Gresta Paulino Murta leomurta@ic.uff.br Agenda Introdução Padrões de Criação Padrões de Estrutura Padrões de comportamento Leonardo Murta Padrões GoF 2 Introdução Os padrões GoF (Gamma

Leia mais

Padrões de Projeto de Software Orientado a Objetos

Padrões de Projeto de Software Orientado a Objetos Padrões de Projeto de Software Orientado a Objetos Ricardo Argenton Ramos [Baseado nos slides do professor Fabio Kon - USP] 1 Padrões de Projeto de Software OO Também conhecidos como Padrões de Desenho

Leia mais

Design Patterns. Viviane Torres da Silva viviane.silva@ic.uff.br. http://www.ic.uff.br/~viviane.silva/2012.1/es1

Design Patterns. Viviane Torres da Silva viviane.silva@ic.uff.br. http://www.ic.uff.br/~viviane.silva/2012.1/es1 Design Patterns Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2012.1/es1 Sumário Reuso de Software Introdução Benefícios e Desvantagens Visão do Reuso Padrões de Projeto

Leia mais

2 Engenharia de Software

2 Engenharia de Software 20 2 Engenharia de Software 2.1 Design de Sistemas Orientados a Objetos Os Sistemas Orientados a Objetos não são mais novidade hoje em dia já estando há muitos anos no mercado. A orientação a objetos permite

Leia mais

Programação Avançada. Padrões de Projeto de Software. Fonte: Oswaldo B. Peres e K19 Treinamentos

Programação Avançada. Padrões de Projeto de Software. Fonte: Oswaldo B. Peres e K19 Treinamentos Programação Avançada Padrões de Projeto de Software 1 Fonte: Oswaldo B. Peres e K19 Treinamentos Introdução Projetar software OO reusável e de boa qualidade é uma tarefa difícil; Para realizar essa tarefa

Leia mais

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos

Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos Programação Estruturada e Orientada a Objetos Fundamentos Orientação a Objetos 2013 O que veremos hoje? Introdução aos fundamentos de Orientação a Objetos Transparências baseadas no material do Prof. Jailton

Leia mais

Padrões do Catálogo J2EE. Lincoln Souza Rocha, M.Sc. (lincolnrocha@gmail.com)

Padrões do Catálogo J2EE. Lincoln Souza Rocha, M.Sc. (lincolnrocha@gmail.com) Padrões do Catálogo J2EE Lincoln Souza Rocha, M.Sc. (lincolnrocha@gmail.com) Livros Deepak Alur, John Crupi e Dan Malks. Core J2EE Patters: Best Practices and Design Strategies, Second Edition (2003).

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Documento de Arquitetura

Documento de Arquitetura Documento de Arquitetura A2MEPonto - SISTEMA DE PONTO ELETRÔNICO A2MEPonto - SISTEMA DE PONTO ELETRÔNICO #1 Pág. 1 de 11 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 28/10/2010 1 Elaboração do documento

Leia mais

Laboratório de ENGSOF Estudo de Caso. Prof. André Pereira, MSC, PMP

Laboratório de ENGSOF Estudo de Caso. Prof. André Pereira, MSC, PMP Laboratório de ENGSOF Estudo de Caso Aula de Hoje: Desenvolver um sistema UML inteiro: Aplicação Banco Online. Nosso Estudo de Caso! RSA V7 O que será feito para o projeto? 1) Criando um Projeto UML: 1)

Leia mais

Documento de Projeto de Sistema

Documento de Projeto de Sistema Documento de Projeto de Sistema 1 IFES / Serra Projeto: Gerenciador de Pelada - Oasis Registro de Alterações: Versão Responsável Data Alterações 0.1 Eduardo Rigamonte, Geann Valfré, João Paulo Miranda,

Leia mais

Padrão Básico de Projeto: Interfaces e Polimorfismo

Padrão Básico de Projeto: Interfaces e Polimorfismo Padrão Básico de Projeto: Interfaces e Polimorfismo Herança de implementação versus herança de interface Há uma diferença grande entre uma classe e seu tipo A classe define ambos um tipo e uma implementação

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

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

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

Padrões clássicos ou padrões GoF O livro "Design Patterns (1994) de Erich Gamma, John Vlissides, Ralph Jonhson e Richard Helm, descreve 23 padrões de

Padrões clássicos ou padrões GoF O livro Design Patterns (1994) de Erich Gamma, John Vlissides, Ralph Jonhson e Richard Helm, descreve 23 padrões de Padrões de Projeto Disciplina: Engenharia de Software - 2009.1 Professora: Rossana Maria de Castro Andrade Assistente da disciplina: Ricardo Fernandes de Almeida 1 O que é um Padrão? Um padrão descreve

Leia mais

Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D.

Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D. UML Diagramas Um diagrama é a apresentação gráfica de um conjunto de elementos, onde os vértices são ITENS e os arcos RELACIONAMENTOS UML 2.0 possui os seguintes diagramas: Diagrama de Classes (Class Diagram)

Leia mais

Curso - Padrões de Projeto Módulo 5: Model-View- Controller

Curso - Padrões de Projeto Módulo 5: Model-View- Controller Curso - Padrões de Projeto Módulo 5: Model-View- Controller Vítor E. Silva Souza vitorsouza@gmail.com http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java:

Leia mais

4 - Padrões da Camada de Integração. Introdução

4 - Padrões da Camada de Integração. Introdução Padrões de Projeto J2EE J931 Padrões da Camada de Integração Helder da Rocha (helder@acm.org) argonavis.com.br Introdução A camada de integração encapsula a lógica relacionada com a integração do sistema

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

Decorator Pattern. SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br. Junho de 2008. Departamento de Informática / UFMA

Decorator Pattern. SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br. Junho de 2008. Departamento de Informática / UFMA Decorator Pattern SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br Departamento de Informática / UFMA Junho de 2008 Revisando os conceitos Herança é poderosa mas não é flexível Comportamento

Leia mais

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com

Leia mais

Projeto Demoiselle. Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: demoiselle-users@lists.sourceforge.

Projeto Demoiselle. Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: demoiselle-users@lists.sourceforge. Projeto Demoiselle Para perguntas e respostas, utilizem a lista de discussões de usuários da comunidade: demoiselle-users@lists.sourceforge.net Palestrantes: Antônio Carlos Tiboni Luciana Campos Mota 20/07/2009

Leia mais

J550 Padrões de Projeto J2EE para Aplicações Web

J550 Padrões de Projeto J2EE para Aplicações Web J550 Padrões de Projeto J2EE para Aplicações Web Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 Introdução Este módulo aborda os principais padrões de projeto J2EE, dentre o catálogo organizado

Leia mais

Figura 01 Kernel de um Sistema Operacional

Figura 01 Kernel de um Sistema Operacional 01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações

Leia mais

Fábrica de Software 29/04/2015

Fábrica de Software 29/04/2015 Fábrica de Software 29/04/2015 Crise do Software Fábrica de Software Analogias costumam ser usadas para tentar entender melhor algo ou alguma coisa. A idéia é simples: compara-se o conceito que não se

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 5º MÓDULO AVALIAÇÃO A4 DATA 23/04/2009 ENGENHARIA DE SOFTWARE Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância 5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância O capítulo anterior apresentou uma discussão sobre a inclusão dos chamados learning services no processo

Leia mais

Padrões de Interação com o Usuário

Padrões de Interação com o Usuário Padrões de Interação com o Usuário Granularidade dos Padrões Padrões estão relacionados a 3 elementos: Contexto ocorre Problema resolve Solução Problemas e Soluções podem ser observados em diferentes níveis

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Testes com Design Patterns

Testes com Design Patterns Helder da Rocha (helder.darocha@gmail.com) 31 de março de 2005 71. Que padrão de design pode ser usado para permitir que uma implementação específica e uma hierarquia de abstrações possa variar independentemente?

Leia mais

Enterprise Java Beans

Enterprise Java Beans Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side

Leia mais

UML & Padrões Aula 7. UML & Padrões - Profª Kelly C C Silva

UML & Padrões Aula 7. UML & Padrões - Profª Kelly C C Silva UML & Padrões Aula 7 UML & Padrões - Profª Kelly C C Silva Divisão das classes do Modelo de Análise Jacobson propõe a divisão das classes do Modelo de Análise de acordo com os seguintes estereótipos: entidades

Leia mais

Sumário. Uma visão mais clara da UML

Sumário. Uma visão mais clara da UML Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS 1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização

Leia mais

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Programação Servidor para Sistemas Web 1 Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Objetivo: Apresentar a teoria por trás dos padrões na construção de aplicações Web. INTRODUÇÃO Nas aulas anteriores

Leia mais

Módulo 07 Características Avançadas de Classes

Módulo 07 Características Avançadas de Classes Módulo 07 Características Avançadas de Classes Última Atualização: 15/06/2010 1 Objetivos Descrever variáveis, métodos e iniciadores static Descrever a semântica do modificador final em classes, métodos

Leia mais

2 a Lista de Exercícios

2 a Lista de Exercícios Projeto de Sistemas 2011/2 2 a Lista de Exercícios (1) Um importante aspecto do projeto da camada de Lógica de Negócio (LN) diz respeito à organização das classes e distribuição de responsabilidades entre

Leia mais

Desenho de Software. Desenho de Software 1

Desenho de Software. Desenho de Software 1 Desenho de Software Desenho de Software 1 Sumário Caracterização Conceitos fundamentais Desenho funcional e desenho OO Qualidades Desenho de Software 2 Bibliografia Pfleeger, Capítulo 6 Design the Modules

Leia mais

Universidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação

Universidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação Universidade Federal Rural de Pernambuco Bacharelado em Sistemas de Informação Disciplina: Análise e Projeto de Sistemas de Informação Docente: Rodrigo Aluna: Thays Melo de Moraes Diagramas do Projeto

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão DCC / ICEx / UFMG Definição de Padrões Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Um padrão é uma descrição do problema e a essência da sua solução Documenta boas soluções para problemas recorrentes

Leia mais

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Curso - Padrões de Projeto Módulo 2: Padrões de Criação

Curso - Padrões de Projeto Módulo 2: Padrões de Criação Curso - Padrões de Projeto Módulo 2: Padrões de Criação Vítor E. Silva Souza vitorsouza@gmail.com http://www.javablogs.com.br/page/engenho http://esjug.dev.java.net Sobre o Instrutor Formação: Java: Graduação

Leia mais

Tópicos em Engenharia de Computação

Tópicos em Engenharia de Computação Tópicos em Engenharia de Computação Introdução / Revisão UML e POO (JAVA) Prof. Ivan Prof. Zagari UML Linguagem Unificada. Não é metodologia, processo ou método. Versão atual 2.0 3 categorias de Diagramas

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW

Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW Histórico da Orientação a Objetos Ciclo de vida de Desenvolvimento de SW Baseado nos materiais dos profs: Prof.: Edilberto M. Silva http://www.edilms.eti.br Edna Canedo Marcio de Carvalho Victorino Brasília-DF,

Leia mais

2 Conceitos relativos a Web services e sua composição

2 Conceitos relativos a Web services e sua composição 15 2 Conceitos relativos a Web services e sua composição A necessidade de flexibilidade na arquitetura das aplicações levou ao modelo orientado a objetos, onde os processos de negócios podem ser representados

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Introdução Projeto de Arquitetura (Cap 11 - Sommerville) UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Até agora, estudamos: Os

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 6 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM MARÇO / 2015 2 de 6 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

Padrões Arquiteturais no Java EE 7

Padrões Arquiteturais no Java EE 7 Padrões Arquiteturais no Java EE 7 Vagner F. Le Roy Júnior Curso de Pós Graduação em Arquitetura de Software Distribuído Pontifícia Universidade Católica de Minas Gerais Belo Horizonte, MG Brasil vagnerleroy@gmail.com

Leia mais

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem

Leia mais

Padrões de Projeto. Singleton

Padrões de Projeto. Singleton Padrões de Projeto Padrões de Criação Singleton Singleton Assegura que uma classe tenha apenas uma instância e provê um ponto de acesso global a ela 2 Livro Texto: Design Pattern - Elements 1 Motivação

Leia mais

Aspectos técnicos do desenvolvimento baseado em componentes

Aspectos técnicos do desenvolvimento baseado em componentes Aspectos técnicos do desenvolvimento baseado em componentes Um novo processo de desenvolvimento O uso de componentes traz mudanças no processo de desenvolvimento Além de desenvolver um produto, queremos

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

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma: 1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que

Leia mais

CONSULTORIA E SERVIÇOS DE INFORMÁTICA

CONSULTORIA E SERVIÇOS DE INFORMÁTICA CONSULTORIA E SERVIÇOS DE INFORMÁTICA Quem Somos A Vital T.I surgiu com apenas um propósito: atender com dedicação nossos clientes. Para nós, cada cliente é especial e procuramos entender toda a dinâmica

Leia mais

EVOLUÇÃO DE SOFTWARE

EVOLUÇÃO DE SOFTWARE EVOLUÇÃO DE SOFTWARE Dinâmica da evolução de programas Manutenção de software Processo de evolução Evolução de sistemas legados 1 Mudança de Software 2 Manutenção de software Mudança de software é inevitável

Leia mais

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1 Capítulo 2 Processos de Software slide 1 Tópicos apresentados Modelos de processo de software. Atividades de processo. Lidando com mudanças. Rational Unified Process (RUP). Um exemplo de um processo de

Leia mais

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE Renan Leme Nazário, Ricardo Rufino Universidade Paranaense (Unipar) Paranavaí PR - Brasil renazariorln@gmail.com, ricardo@unipar.br Resumo. Este artigo

Leia mais

Projeto: Simul-e Documento de Arquitetura de Software

Projeto: Simul-e Documento de Arquitetura de Software Projeto: Simul-e Documento de Arquitetura de Software Versão 1.0 Página 1 de 9 Histórico da Revisão Data Versão Descrição Autor 12.09.2015 1.0 Criação do Documento Hugo Pazolline 20.10.2015 1.0 Atualização

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 6 EJB Enterprise Java

Leia mais

Abstract Factory Pattern

Abstract Factory Pattern Abstract Factory Pattern SISMO - Sistemas e Mobilidade http://www.sismo.deinf.ufma.br Departamento de Informática / UFMA Junho de 2008 Comandar uma franquia não é bolinho Estava tudo muito bom com a franquia

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1 PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES MVC E DAO Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o conceito de Padrões de Projeto Compreender o Padrão MVC Conhecer o princípio de alguns dos

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

Leia mais

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF

INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF INTRODUÇÃO E CONFIGURAÇÃO DO PRIMEFACES MOBILE EM APLICAÇÕES JSF Guilherme Macedo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil guilhermemacedo28@gmail.com, jaime@unipar.br Resumo.

Leia mais