Modularidade. de software. Rodrigo Bonifácio

Documentos relacionados
Design Rules. The Power of Modularity (Capítulos II e III) Rodrigo Bonifácio

Qualidade de Software Aula 8 / 2010

Computação e Programação

NOVAS METODOLOGIAS DE ENSINO: UMA PESQUISA SOBRE O USO DO SOFTWARE GEOGEBRA NO PRIMEIRO ANO DO ENSINO MÉDIO

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

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS PRÓ-REITORIA DE GRADUAÇÃO DEPARTAMENTO DE COMPUTAÇÃO PLANO DE ENSINO

Reengenharia, Refatoração e Bad Smell

GESTÃO DE SEGURANÇA, SAÚDE E MEIO AMBIENTE DE TRABALHO RURAL

Desenho. Indice. 1. Introdução. 2. Definição da Arquitectura. 3. Interfaces e desenho da Arquitectura

ISO/IEC 12207: Manutenção

Prof. Luiz A. Nascimento

4 Desenvolvimento de Software Orientado a Aspectos

PLANO DE ATIVIDADES DO ESTÁGIO DE DOCÊNCIA

SOCIEDADE CAMPINEIRA DE EDUCAÇÃO E INSTRUÇÃO PONTIFÍCIA UNIVERSIDADE CATÓLICA DE CAMPINAS Média de Qualidade de cada Aspecto por ano/semestre

Ficha de Disciplina APRO. Ano Lectivo: 2005/2006. Grupo de disciplinas: ENGENHARIA DA PROGRAMAÇÃO. Anual Obrigatória X Semestral X Opcional

Ementário das disciplinas do curso de Engenharia de Software

ENGENHARIA DE SOFTWARE. Introdução

Gerência de Configuração de Software Conceitos

ESTRUTURA PROVISÓRIA DO CURSO

UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE ENGENHARIA CIVIL COLEGIADO DO CURSO DE ENGENHARIA CIVIL PLANO DE CURSO

MINISTÉRIO DA EDUCAÇÃO UNIVERSIDADE FEDERAL DO SUL E SUDESTE DO PARÁ CONSELHO SUPERIOR DE ENSINO, PESQUISA E EXTENSÃO

Algoritmos I Apresentação. Carlos de Salles Soares Neto Segundas e Quartas, 17h40 às 19h10

Ciclo de vida: fases x atividades

Anual Obrigatória X Semestral X Opcional. Regime Diurno Nocturno Horas/semana T Teórica 2 Ano 1 1 T/P Teórico/Prática 4 Semestre 1 1 P- Prática

Cloud Computing CIAB 22 de Junho de Marcelo Medeiros Diretor Executivo & Gerente Geral Enterprise Solutions, Dell Brasil

Departamento de Engenharia Elétrica. ELE Microprocessadores I. Prof. Carlos Antonio Alves Sala 59 Fone

O que são TICs? 1

Microprocessadores. Engenharia de Telecomunicações CST Sistemas de Telecomunicações. Prof. Clayrton M. Henrique 2016/2

Teste de Software Básico

Apresentação. Informação geral + Conceitos iniciais

Avaliação de Usabilidade Referências

Qualidade e Certificação em Software. Prof. Cesar 1

Histórico de Linguagens de Programação

Design Centrado no Usuário

Visão Geral da Norma ISO/IEC 12207

Interface Usuário Máquina. Aula 05

UNIVERSIDADE FEDERAL DE P ERNAMBUCO

Estrutura Curricular. Grupo A [Saberes Docentes]

Projeto e Planejamento da Indústria Química

Projeto Conceitual. Projeto do Produto

Composição e Geração de Aplicações usando Aspectos

Arquitetura de Software: Introdução

Carreiras em Alta. Leticia Bechara Pedagoga e Coordenadora Trevisan Escola de Negócios

Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software

Introdução à Interface Pessoa-Máquina

As 10 Áreas da Engenharia de Software, Conforme o SWEBOK Prof. Elias Ferreira

PLANO DO CURSO. CARGA HORÁRIA SEMANAL Bacharelado em Engenharia Mecânica Geral 3 h NOME DA DISCIPLINA. Ano / Semestre / 3º

Agenda da Aula. Programação Orientada a Características com AHEAD. Característica Modular. Programação Orientada a Características (FOP)

2. Modelos de Desenvolvimento de Software

Disciplina: Engenharia de Software. 3 Bimestre Aula 2: EVOLUÇÃO DE SOFTWARE

15/09/2014. Aula 01: Apresentação. Review to 1 st Exam. Aula 02: Técnicas de Reuso. Panorama de Reuso. Aula 03: POO e Padrões. Bibliografia da Aula 02

Arquitetura de Software: Introdução

SME Cálculo Numérico

1º ANO INFORMÁTICA A (Sala 5) Educação Física - Adriana Sociologia - José. Educação Física - Adriana Introdução a Informática - Willian

Eng. Alimentos PROGRAMA DE DISCIPLINA IDENTIFICAÇÃO CÓDIGO DISCIPLINA PRÉ-REQUISITOS

Objetivo do Curso. Introdução à Interação Humano-Computador. Professora: Raquel Oliveira Prates

MSN:

PERÍODO LETIVO ENGENHARIA DE COMPUTAÇÃO

Por que estudar Engenharia de Software AULA PROF. ABRAHAO LOPES

Projeto e computação gráfica I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL Faculdade de Engenharia MÓDULO 1/30

1 a Aula. Mestrado em Engenharia Física Tecnológica

Análise da Informação Económica e Empresarial. Aula 1: Apresentação

SERVIÇO PÚBLICO FEDERAL INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO AMAPÁ IFAP CÂMPUS MACAPÁ

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

CPA 2016/2 e 2017/1 AUTOAVALIAÇÃO LICENCIATURA EM COMPUTAÇÃO

Interação Humano-Computador

ENGENHARIA DE COMPUTAÇÃO Bacharelado. ANEXO I - Matriz Curricular de Disciplinas- Modelo. NÚCLEO (Res CNE 11/2002) Presencial.

O Guia Diário. Engenharia da Computação X Ciência da. Graduações em tecnologia X graduação em bacharelado. Computação. Quais suas

Engenharia de Software

Engenharia de Software

Perguntas da Aula 2. Respostas da Pergunta 2. Respostas da Pergunta 1. Respostas da Pergunta 4. Respostas da Pergunta 3. Processos de Software

RUP/PSDS. Introdução e Comparação

ARQUITECTURA DE COMPUTADORES 2013/2014 2º SEMESTRE

Sistema Produttare de Produção II Competing Through Design. Ivan De Pellegrin

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO UNIVERSIDADE FEDERAL DE UBERLÂNDIA

DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014.

UNIVERSIDADE ESTADUAL PAULISTA Júlio de Mesquita Filho Campus Experimental de Sorocaba

As 5 Melhores Vantagens De Usar Softwares De Gestão De Equipes De Trade Marketing

2 Desenvolvimento de Linhas de Produtos de Softwares

AFC. Consultoria Estatística. Treinamento. Modelagem de Séries Temporais para Seguros

Marcela Mariotti Peres Arquitetura em três camadas Parte 1 [conceito]

GFM015 Introdução à Computação. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM

Seleção Docente Faculdade Internacional da Paraíba Código da Vaga Tipo de Vaga Curso Escola

Desenho de Software. Sumário

URI Câmpus de Frederico Westphalen Curso de Ciência da Computação Período 01/2018

Visões Arquiteturais. Arquitetura de Software Thaís Batista

Treinamento e-learning. Interpretação e implantação da ISO 9001:2015

Relato de Experiência de Ensino de IHC

Página 1 de 7 PRÓ-REITORIA DE GRADUAÇÃO ANEXO "F" ESCOLA POLITÉCNICA CURRÍCULO IDEAL (EC3-2018) Curso: Engenharia Elétrica - Ênfase em Computação

EMENTAS DISCIPLINAS OPTATIVAS

PROCESSO DE DESENVOLVIMENTO DE PRODUTOS (PDP) AULA 02 UFPR. Prof.ª Nicolle Sotsek Ramos

Bonita BPM uma solução inovadora para gerenciar o seu processo de negócio

Universidade Federal do Ceará Campus de Quixadá OFERTA DE DISCIPLINAS Ciência da Computação

MÉTODO DELPHI: EXEMPLOS

Universidade Federal de Juiz de Fora Faculdade de Engenharia Departamento de Energia Elétrica PLANO DE ENSINO

CATÁLOGO DAS SEBENTAS, APONTAMENTOS E LIVROS (REQUISIÇÃO SEMESTRAL) 2015/2016

HEITOR MARIANO DE AQUINO CÂMARA UMA ABORDAGEM SISTEMÁTICA PARA IMPLEMENTAÇÃO, GERENCIAMENTO E CUSTOMIZAÇÃO DE TESTES DE LINHAS DE PRODUTO DE SOFTWARE

Transcrição:

Modularidade de software Rodrigo Bonifácio

Qual o significado do termo modularidade?

Modularidade é uma propriedade essencial para a construção e evolução (de forma bem sucedida) de software

Modularidade é uma propriedade essencial para a construção e evolução (de forma bem sucedida) de produtos pertencentes a qualquer indústria

Modularidade é uma propriedade essencial para a construção e evolução (de forma bem sucedida) de qualquer sistema complexo

Três anos de atraso no lançamento do Windows Vista foram atribuídos a decisões erradas resultantes da falta de modularidade no projeto 1. 1 Analysing the evolution of large scale software... (LaMantia et al.)

Desenho modular (David Parnas) desenvolvimento em paralelo facilidade em compreender os módulos de forma isolada possibilidade de manter os módulos de forma independente

Desenho modular (David Parnas) desenvolvimento em paralelo facilidade em compreender os módulos de forma isolada possibilidade de manter os módulos de forma independente É uma preocupação mais relacionada com a distribuição de tarefas do que com uma perspectiva tecnológica.

Qual o significado do termo módulo?

Qual o valor da modularidade?

Pesquisadores de diferentes áreas (em particular das áreas de business) têm investigado esses aspectos em domínios diversos (interações sociais, evolução biológica, automotivo, hardware, software,... ).

Baldwin and Clark discutem o impacto de um desenho modular em termos como um fator determinante para o sucesso de um produto da organização das equipes de trabalho envolvidas da quantificação e valorização

Baldwin and Clark discutem o impacto de um desenho modular em termos como um fator determinante para o sucesso de um produto da organização das equipes de trabalho envolvidas da quantificação e valorização O valor do produto está diretamente relacionado às opções de design que podem ser customizadas no produto.

Baldwin and Clark discutem o impacto de um desenho modular em termos como um fator determinante para o sucesso de um produto da organização das equipes de trabalho envolvidas da quantificação e valorização O valor do produto está diretamente relacionado às opções de design que podem ser customizadas no produto. A teoria envolve design structure matrixes e um conjunto de operações sugeridas para melhorar a modularidade de um produto.

Objetivo O objetivo da disciplina é conduzir uma discussão sobre modularidade, modularidade de software e técnicas que podem favorecer a modularidade de software.

... mais especificamente obter uma melhor compreensão sobre modularidade, através da leitura de livros e artigos relacionados ao tema.

... mais especificamente obter uma melhor compreensão sobre modularidade, através da leitura de livros e artigos relacionados ao tema. estudar as técnicas que foram recentemente propostas para lidar com a modularidade de software e refletir se essas técnicas observam a noção de modularidade como task assignment.

... mais especificamente obter uma melhor compreensão sobre modularidade, através da leitura de livros e artigos relacionados ao tema. estudar as técnicas que foram recentemente propostas para lidar com a modularidade de software e refletir se essas técnicas observam a noção de modularidade como task assignment. planejar e conduzir uma avaliação empírica (estudo de caso) com o intuito de modularizar as características de um software existente utilizando algumas técnicas recentes de modularização.

Ementa O programa da disciplina est organizado, em três módulos que envolvem diferentes tópicos de estudo.

Módulo 1 Definições sobre modularidade (aplicáveis a software e outras indústrias); o retorno de investimento relacionado a um design modular; como medir e acompanhar a modularidade de um produto; como gerenciar na era da modularidade.

Módulo 2 Técnicas recentes para a modularização de software e que foram motivadas pela síndrome da tirania da decomposição dominante e pela necessidade de customização em massa de produtos de software (Pohl, Böckle, & Linden, 2005).

Módulo 3 Métodos empíricos aplicados na engenharia de software em particular estudos de caso, e estilos de escrita de artigos técnicos para a área de Ciência da Computação

Avaliação P1 envolvimento do aluno P2 implementação dos estudos de caso P3 avaliação aplicada ao término do semestre

Avaliação P1 envolvimento do aluno P2 implementação dos estudos de caso P3 avaliação aplicada ao término do semestre A nota final será computada como: (P1 3) + (P2 4) + (P3 3) 10 (1)

Plano inicial de aulas Data Conteúdo 22/08 leitura dos capítulos 2 e 3 de (Baldwin & Clark, 1999) 29/08 leitura dos capítulos 4 e 5 de (Baldwin & Clark, 1999) 05/09 apresentação dos artigos (D. L. Parnas, 1972; D. Parnas, 1976; D. L. Parnas, 1979) 12/09 apresentação dos artigos (Kersten & Murphy, 2005; Murphy, Kersten, Robillard, & Čubranić, 2005) 19/09 leitura do artigo (Tarr, Ossher, Harrison, & Sutton, 1999) 26/09 apresentação dos artigos (Kiczales et al., 2001; Aracic, Gasiunas, Mezini, & Ostermann, 2006) 03/10 apresentação dos artigos (Batory, Sarvela, & Rauschmayer, 2003; Apel, Kastner, & Lengauer, 2009) 10/10 leitura do artigo (Schaefer, Bettini, Damiani, & Tanzarella, 2010) outubro novembro dezembro condução do estudo de caso condução do estudo de caso prova + escrita de artigos

Modularidade de software Rodrigo Bonifácio