Aula 01: Apresentação. Revisão para Prova 1. Aula 02: Técnicas de Reuso. Panorama de Reuso. Aula 03: POO e Padrões. Bibliografia da Aula 02

Documentos relacionados
Prof.ª Esp. Talita Pagani

Design Pattern Implementation in Java and AspectJ

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

J930. Padrões. Projeto. Introdução. argonavis.com.br. Helder da Rocha

1Introdução Helder da Rocha

Padrões GoF. Leonardo Gresta Paulino Murta

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

Padrões de Projeto. Prof. Jefersson Alex dos Santos

Design Patterns. Viviane Torres da Silva

Testes com Design Patterns

Padrões de Software (Software Patterns)

18/10/2013. Resumo. Os mecanismos. Introdução. Padrões de projeto (OO) Compilação condicional

Padrões de Projeto de Software Orientado a Objetos

Padrões de Software (Software Patterns)

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

Histórico: Linha de Produção. Linha de Produtos de Software. Reuso vs. Customização. Mercado Competitivo. Linha de Produtos de Software

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

Padrões de Design. Jair C Leite

Programação com Objectos

POO e suas Limitações Introdução POA AspectJ: Conceitos Básicos Exemplo: Tracing Padrões de Projeto e POA

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos

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

SCE 186- Engenharia de Software

OO IMPACTO DA UTILIZAÇÃO DE DESIGN

PADRÕES DE PROJETO FAÇADE, FLYWEIGHT E VISITOR

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

PADRÕES DE PROJETO. Cleviton Monteiro

DCC / ICEx / UFMG. O Jogo SimulES. Eduardo Figueiredo.

Padrões de Design. Padrões de Design. Abstract Factory. Padrões de Design. Padrões de Design Abstract Factory. Abstract Factory.

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

Pós-Graduação em Computação Distribuída e Ubíqua

Agenda da Aula. Desenvolvimento de Software Orientado a Aspectos. Aspectos... Motivação. Um pouco de história. Programação Estruturada

Uma Introdução aos Padrões de Projeto com Java. Roberto Willrich INE-CTC-UFSC

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 Projeto de Software

01/03/2015. Bibliografia Principal. Apresentação da Disciplina. Site da Disciplina. Método de Avaliação. As datas podem mudar. Prova Substitutiva

Tópicos Avançados em Engenharia de Software

Pós-Graduação em Engenharia de Software com UML

Padrões. Identificando padrões

Arquitetura de Software: Sistemas RNA e Ava Edulivre. Ana Claudia Costa, Rharon Maia, Wolgrand Cardoso1

Problems and Programmers

Linha de Produtos de Software (SPL) em Java: Teoria e Prática

Análise e Projeto Orientados por Objetos

Universidade Federal de Itajubá Instituto de Engenharia de Sistemas e Tecnologias da Informação-IESTI PCO203 Tópicos Especiais em Programação

Padrões Arquiteturais. Silvia Regina Vergilio

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 03 PROFª BRUNO CALEGARO

Padrões de Desenho Engenharia de Software

Uma Abordagem Baseada em Heurísticas para Extração de Linhas de Produto de Software

Padrões de Projeto. Bibliografia. Nomenclatura

Motivação. O Uso de Jogos. Problems & Programmers (PnP) Visão Geral do PnP. Exemplo. Jogos para Simulação em Engenharia de Software

Profa. Thienne Johnson

IV. CONTEÚDO PROGRAMÁTICO

PADRÕES DE PROJETO EM OOERLANG UNIVERSIDADE DO ESTADO DO AMAZONAS - UEA. Manaus ESCOLA SUPERIOR DE TECNOLOGIA ENGENHARIA DE COMPUTAÇÃO


Programação Orientada a Objetos Padrões de Projeto (design patterns) Fernando Vanini IC - UNICAMP

Introdução à Engenharia ENG1000

Pasteur Ottoni de Miranda Junior. Alguns Padrões de Projeto Gamma

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Uma Análise da História do VEM, WBVS e WMSWM

Correção- STJ. Professor Marcelo Pacote W W W. D OMINANDOTI.COM.BR

Pontifícia Universidade Católica de São Paulo Programa de TIDD

Eduardo Bezerra. Editora Campus/Elsevier

Redes de Computadores

FORMULÁRIO PARA CRIAÇÃO DE DISCIPLINA

Processo de Desenvolvimento de Software Linhas de Produtos de Software

Ambiente de Desenvolvimento Integrado (IDE)

Padrões de Projeto em Desenvolvimento Web SCC 266. Prof. Renata Pontin M. Fortes PAE: Willian Watanabe

Refatoração de sistemas Java utilizando padrões de projeto: um estudo de caso

Vítor E. Silva Souza

Proposta para a Implementação do Cadastro de um Log de Auditoria Baseada em Padrões de Projeto

Introdução ao Zend Framework 2

Ministério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Campus Curitiba PLANO DE ENSINO

Trabalho Prático. Eduardo Figueiredo.

Arquitectura de Sistemas de Software Mestrado em Engenharia Informática Licenciatura em Engenharia Informática e Computação

Histórico de revisões

Parallel Computing Paradigms

Padrões Comportamentais

SOFTWARE PATTERNS: FUNDAMENTOS, TIPOS E DESCRIÇÃO Sérgio Teixeira de Carvalho

RELATÓRIO FINAL. 2. ORIENTADOR: Prof. Msc. Thelma Elita Colanzi Lopes 3. DEPARTAMENTO: DIN

Uma Abordagem para Tratamento de Regras de Negócio nas Fases Iniciais do Desenvolvimento

Padrões de Projeto WEB e o MVC

TECNOLOGIA WEB. Formação: o Bacharel em Sistemas de Informações (SI); o MBA em Tecnologia da Informação e Comunicação (TIC).

ESPECIFICAÇÃO E VERIFICAÇÃO DE REGRAS DE DESIGN EM PROGRAMAS JAVA E ASPECTJ

Certificamos que o trabalho Characterizing Bug Workflows in Mozilla Firefox de autoria de Henrique Rocha, Guilherme de Oliveira, Marco Tulio Valente,

Engenharia de Software - 1

Um Sistema de Ensino na Web Baseado no Padrão Pedagógico Exposição Teórica-Exemplos-Atividade- Apresentação-Avaliação

Software Architectures ACM Reference Format

Bibliografia. Engenharia de software Ian Sommerville 9ª edição Editora Pearson Prentice Hall

ATIVIDADES PRÁTICAS SUPERVISIONADAS

VINÍCIUS FERNANDES DE JESUS ARQUITETURA DE SOFTWARE: UMA PROPOSTA PARA A PRIMEIRA APLICAÇÃO

Padrões de Arquitetura de Software. Leandro Tonietto Unisinos fev-09

Transcrição:

Reutilização de Software Aula 13 Aula 01: Apresentação Revisão para Prova 1 Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 23 Setembro 2013 Bibliografia Método de avaliação Provas Exercícios Trabalho Prático Monografia Site e email da disciplina Agenda do curso Aula 02: Técnicas de Reuso Panorama de Reuso Introdução a Reutilização de Software Exemplos de Abordagens de Reuso Bibliotecas Padrões de Projeto Frameworks Reuso de Modelos Quiz 1 no Udemy Padrões de projeto Aplicações configuráveis Desenvolvimento baseado em componentes Desenvolvimento orientado a aspectos Frameworks Padrões de arquitetura Linha de produtos de software Empacotamento de sistemas legados Sistemas orientados a serviços Biblioteca de programas Integração de COTS Desenvolvimento dirigido por modelos Geradores de programas Bibliografia da Aula 02 Ian Sommerville. Engenharia de Software, 9ª Edição. Pearson Education, 2011. Cap. 16 Reuso de Software Seção 5.5 Engenharia Dirigida por Modelos Aula 03: POO e Padrões Reutilização em Programação Orientada a Objetos Classes Bibliotecas Frameworks Padrões de Projeto Padrões de Criação Padrões Estruturais Padrões Comportamentais

Os 23 Padrões de Projeto Os 23 padrões de projeto mais conhecidos foram popularizados pelo livro de E. Gamma, R. Helm, R. Johnson e J. Vlissides Conhecido como Gang-of-Four (GoF) Padrões de Criação Abstract Factory Builder Factory Method Prototype Singleton Padrões Estruturais Adapter Bridge Composite Decorator Facade Flyweight Proxy Padrões Comportamentais Chain of Responsibility (CoR) Command Observer Interpreter State Iterator Strategy Mediator Template Method Memento Visitor Bibliografia da Aula 03 Aula 04: Arquitetura e Padrões E. Gamma, R. Helm, R. Johnson, J. Vlissides. Padrões de Projeto, 1a. Edição. Bookman, 2000. Capítulo 1 Padrões: Factory Method e Singleton; Adapter, Composite e Decorator; Chain of Responsibility, Mediator, Observer e State Arquitetura de Software Padrões arquiteturais Quiz 2 no Udemy

Padrões Arquiteturais Da desordem a estrutura Layered Architecture (Arquitetura em Camadas) Blackboard (Arquitetura de Repositório) Pipes and Filters (Dutos e Filtros) Sistemas distribuídos Client-Server (Cliente-Servidor) Broker Sistemas interativos Model-View-Controller (MVC) Presentation-Abstraction-Control Sistemas adaptáveis Microkernel Discutidos no livro Reflection do Sommerville Padrões Arquiteturais: Livros Pattern-Oriented Software Architecture: A System of Patterns (Volume 1) Da Desordem a Estrutura Layered Architecture Arquitetura em Camadas Blackboard Arquitetura de Repositório Pipes and Filters Dutos e Filtros Padrões de Arquitetura Sistemas Distribuídos Client-Server (Cliente-Servidor) Broker Sistemas Interativos Model-View-Controller (MVC) Presentation-Abstraction-Control Sistemas Adaptáveis Microkernel Reflection Bibliografia da Aula 04 Ian Sommerville. Engenharia de Software, 9a. Edição. 2011. Cap. 6 Projeto de Arquitetura F. Buschmann et al. Pattern-Oriented Software Architecture: A System of Patterns. John Wiley & Sons, 1996. Cap. 2 Architectural Patterns Aula 05: Idiomas Idiomas de Programação Java 23 idiomas de programação Java Trabalho Prático Monografia Artigos

Bibliografia da Aula 05 F. Buschmann et al. Pattern-Oriented Software Architecture: A System of Patterns. John Wiley & Sons, 1996. Cap. 4 Idioms Aula 06: Linha de Produtos Linha de produtos de software Motivação e conceitos principais Extração de uma linha de produtos Modelo de características A. von Staa. Programação Modular. Elsevier, 2000. Apêndices 3, 4 e 5 Técnicas para linha de produtos Ferramentas para variabilidade Um Modelo de Características Ferramentas Feature Modeling Plug-in (FMP) XFeature Pure::Variants SPLOT FeatureIDE Bibliografia da Aula 06 I. Sommerville. Engenharia de Software, 9ª Edição. Pearson Education, 2011. Cap. 16 Reuso de Software (Seção 16.3) K. Pohl, G. Bockle, F. Linden. Software Product Line Engineering: Foundations, Principles and Techniques, 1st edition, Springer, 2005. Capítulos 1 e 2 Páginas das ferramentas Aula 07: Artigos 1. A. Baker, E. Navarro, A. van der Hoek. Problems and Programmers: an Educational Software Engineering Card Game. International Conference on Software Engineering (ICSE), pp. 614-619, 2003. [Felipe] 2. E. Figueiredo, C. Lobato, K. Dias, J. Leite e C. Lucena. Um Jogo para o Ensino de Engenharia de Software Centrado na Perspectiva de Evolução. Workshop sobre Educação em Computação (WEI), pp. 37-46, 2007. [Carlos Eduardo] 3. E. Monsalve, V. Werneck, J. Leite. Teaching software engineering with SimulES-W. Conference on Software Engineering Education and Training (CSEE&T), pp. 31-40, 2011. [Diego Tavares]

Aula 08: LPS e Jogos Técnicas de implementação para linha de produtos de software Compilação condicional Programação orientada a aspectos Programação orientada a características Jogos para treinamento em Engenharia de Software Problems and Programmers SimulES Técnicas de Implementação Compilação condicional Antenna Programação orientada a aspectos AspectJ Programação orientada a características AHEAD Bibliografia da Aula 08 E. Figueiredo, et al. Evolving Software Product Lines with Aspects: An Empirical Study on Design Stability. International Conference on Software Engineering (ICSE), 2008. (CC e POA) G. Ferreira, F. Gaia, E. Figueiredo e M. Maia. On the Use of Feature-Oriented Programming for Evolving Software Product Lines - A Comparative Study. Simpósio Brasileiro de Linguagens de Programação (SBLP), 2011. (POA e FOP) Aula 09: Jogar SimulES e PnP Estudo de caso do trabalho prático Jogar os jogos educacionais Exercício sobre modelo de características dos jogos Aula 10: Aspectos Separação de Interesses Desenvolvimento de Software Orientado a Aspectos (DSOA) A Linguagem AspectJ Quiz 4 Extensões de AspectJ Pontos de Junção Pontos de Corte Adendos Declarações Intertipo

Bibliografia da Aula 10 Ian Sommerville. Engenharia de Software, 9ª Edição. Pearson Education, 2011. Capítulo 21 R. Laddad. AspectJ in Action, 2ª Ed. 2010. Part 1 Understanding AOP and AspectJ Sergio Soares. Programação Orientada a Aspectos com AspectJ. Minicurso CBSoft 2010. Aula 11: Ferramenta SPLOT Exercício prático Criar modelo de característica usando a ferramenta Avaliar a ferramenta Aula 12: Artigos 1. J. Hannemann and G. Kiczales. Design Pattern Implementation in Java and AspectJ. Conference on OO Programming, Systems, Languages, and Applications (OOPSLA), 2002. [Bruno Cardoso] 2. A. Garcia et al. Modularizing Design Patterns with Aspects: A Quantitative Study. International Conference on Aspect Oriented Software Development (AOSD), 2005. [Juliana Padilha] Próxima Aula Prova 1 A prova começa as 14:55 hrs e termina as 16:35 hrs. Próxima Semana! Atenção aos Prazos Não haverá aula presencial na próxima semana: 30/09 e 02/10 Para não atrasar a agenda da disciplina, haverá aulas virtuais no Udemy 30/09: Vídeo Aula 15 (CBSE) e Vídeo Aula 16 (Processos de CBSE) 02/10: Vídeo Aula 17 (Composição de Componentes) e Quiz 5 (CBSE) Quiz 5 deve ser enviado até 05/10 Hoje (23/09) é o último dia! Monografia: Aprovação do Tema Se seu nome não aparece na lista Temas Aprovados, resolva urgente. Trabalho Práticos: Formação de Grupos Se não entrar em nenhum grupo hoje, terá que fazer individualmente o trabalho