user:1577657:arquitetura_de_software_2019


PLANEJAMENTO DA DISCIPLINA - AULAS


  • Apresentação da Disciplina
  • Introdução a Arquitetura de Software
  • Trabalho
    1. Realize a leitura do texto disponível no link abaixo e, em seguida, responda as perguntas contidas no trabalho.
    2. Enviar o documento contendo as respostas em formato PDF para o e-mail do professor (fabianopapaiz@gmail.com) com o assunto Trabalho-01 sobre Arquitetura de Software
    3. Data de Entrega: 07/AGO/2019 até às 09h00
  • Conceitos (pdf)
    1. Arquitetura de Software
    2. Stakeholders
    3. Descrições Arquiteturais
  • Padrões de Software
    1. Aula (pdf)
    2. Estilos Arquiteturais:
      1. Trabalho (pdf)
    3. Padrões de Projeto: (Design Patterns) ☜ (2º BIMESTRE)
      1. Data Access Object (DAO)
        1. Aula (pdf)
      2. Singleton e Object Pool
        1. Aula (pdf) (Pool de conexões com o SGBD)
      3. Template Method
        1. Aula (pdf)
        2. Trabalho:
          1. Aplicar o padrão Template Method nas classes DAO (CategoriaDAO e ProdutoDAO)
          2. No máximo 02 pessoas
          3. Entregar apresentação (slides) até o final da aula do dia 25/OUT/2019
    4. Seminário sobre Padrões de Projeto - Temas
      1. Início das Apresentações: 29/NOV/2019
        1. Para cada Padrão de Projeto deve-se:
          1. Citar o problema que este visa solucionar
          2. Descrever a solução proposta pelo padrão
          3. Ilustrar a estrutura geral do padrão (diagrama de classes, diagrama de sequência ou outro)
          4. Mostrar pelo menos um exemplo de utilização em uma aplicação real
        2. Avaliação das Apresentações:
          1. Demonstração de que compreendeu o padrão de projeto e a clareza na apresentação
          2. Qualidade do exemplo utilizado para exemplificar o padrão de projeto
      • Comportamentais: (Behavioral Patterns) (comunicação entre objetos)
        1. Chain of Responsibility (Daniel e André)
        2. Command (Samara, Wanderson e Gustavo Laires)
        3. Observer (Emerson, Gustavo Lopes e Gerson)
        4. Strategy (Hiury, Messias e Juciane)
        5. Interpreter (Lucas, João Pedro, Isaac e Jackson)
        6. Iterator (Elvis e Jonatas)
        7. Mediator (Anderson e Yuri)
        8. Memento (Lucas, João Pedro, Isaac e Jackson)
        9. State (Jeconias, Lenilson e Pedro)
        10. Visitor (Lucas, João Pedro, Isaac e Jackson)
        11. Template Method
      • Estruturais: (Structural Patterns) (Organização de Classes e Objetos, com uso de Herança e Interfaces)
        1. Decorator (Luca e Igor)
        2. Adapter (Samara, Wanderson e Gustavo Laires)
        3. Bridge (Arthur e Pablo)
        4. Composite (Elvis e Jonatas)
        5. Facade (Anderson e Yuri)
        6. Flyweight (Daniel e André)
        7. Proxy (Emerson, Gustavo Lopes e Gerson)
        8. Data Access Object - DAO
      • Criacionais: (Creational Patterns) (Abstração da lógica para Criação de objetos - sem uso do new)
        1. Abstract Factory (Hiury, Messias e Juciane)
        2. Builder (Luca e Igor)
        3. Factory Method (Jeconias, Lenilson e Pedro)
        4. Prototype (Arthur e Pablo)
        5. Singleton

PROVA FINAL

DATA DA PROVA FINAL: 18/DEZ/2019 (QUARTA-FEIRA)

MATERIAL DE APOIO



  • SGBD PostgreSQL
  • Instalação de SGDB:
    • Baixar os Binários do Postgres: zip
      • Extrair o arquivo zip
    • Criar a pasta data dentro de postgresql-9.4.24-1-linux-x64-binaries/pgsql/
    • Entrar na pasta bin e executar o comando ./initdb -D ../data/
      • ATENÇÃO: somente 1 vez
      • Este comando irá configurar uma instância do PostgreSQL dentro da pasta data
    • Para iniciar o serviço do PostgreSQL executar o comando ./postgres -D ../data/ (dentro da pasta bin)
      • O serviço será disponibilizado através da porta 5432
    • Para parar o serviço do PostgreSQL basta digitar Ctrl+C
  • Driver JDBC do PostgreSQL (zip)
    • Baixar e descompactar
    • Será utilizado para criar conexões com o PostgreSQL a partir no DBeaver e nos projetos Java no Eclipse
  • Instalar o DBeaver:
    • Baixar e descompactar o arquivo (dbeaver-ce-6.2.1-linux.gtk.x86_64.tar.gz)
    • Executar o arquivo dbeaver
    • Criar uma nova conexão do tipo PostgreSQL com as seguintes configurações:
    • Clicar no botão Edit Driver Settings e configurar da seguinte forma:
      • Remover os drivers existentes e adicionar o driver JDBC do PostgreSQL baixado no passo anterior
    • Antes de finalizar, clique no botão Test connection… para verificar se está OK
  • Criar o BD utilizado nas aulas:
    • Abrir uma nova janela de Script SQL e executar o seguinte comando SQL para criar o banco de dados chamado arq_soft:
CREATE DATABASE arq_soft;
  • Agora clique com o botão direito em cima da conexão PostgreSQL - postgres na aba Database Navigator e selecione Edit connection
    • Altere o campo Database para arq_soft e depois clique em OK
      • Será perguntado se deseja reconectar e escolha que sim
  • Abra uma nova janela de Script SQL e digite os seguintes comandos para criar as tabelas Categoria e Produto dentro do banco arq_soft:
create table Categoria( id serial not null, descricao varchar(100) not null, primary key(id) );
create table Produto( id serial not null, descricao varchar(100) not null, preco_unitario numeric(10,2) not null, quantidade_estoque int not null, categoria_id int not null, primary key(id), foreign key (categoria_id) references Categoria(id) );

  • Arquivo com Eclipse+Tomcat+PostgreSQL+DBeaver: zip
  • user/1577657/arquitetura_de_software_2019.txt
  • Última modificação: 2019/12/13 16:46
  • por 1577657