Tópicos Avançados em Engenharia de Software
|
|
- Amanda de Mendonça Varejão
- 8 Há anos
- Visualizações:
Transcrição
1 Faculdade de Ciências e Tecnologia Departamento de Matemática e Computação Programa de Pós-Graduação em Ciência da Computação Tópicos Avançados em Engenharia de Software Padrões e Frameworks (Aula 01- Parte 1) Prof. Dr. Rogério Eduardo Garcia (rogerio@fct.unesp.br) Introdução Padrões de software: descrição de soluções para determinados problemas que ocorrem frequentemente durante o desenvolvimento de sistemas Vantagens: Aumento de produtividade Uniformidade na estrutura do software Aplicação imediata por outros desenvolvedores Redução da complexidade: blocos construtivos 1
2 Introdução Rogério Eduardo Garcia É importante saber aplicar o padrão correto e de maneira correta. Os padrões devem ser lidos, entendidos e incorporados ao modelo mental de projeto de software. Só assim poderão ser utilizados no projeto de algum software. A Inspiração A idéia de padrões foi apresentada por Christopher Alexander em 1977 no contexto de Arquitetura (de prédios e cidades): Cada padrão descreve um problema que ocorre repetidamente de novo e de novo em nosso ambiente, e então descreve a parte central da solução para aquele problema de uma forma que você pode usar esta solução um milhão de vezes, sem nunca implementa-la duas vezes da mesma forma. 2
3 Histórico Origem: Christopher Alexander (padrões de arquitetura para construção de casas, bairros, cidades, etc.) Em software: Peter Coad: padrões de análise James Coplien padrões de programação Gamma et al padrões de projeto Primeira conferência PLOP Gang of Four (GoF) E. Gamma and R. Helm and R. Johnson and J. Vlissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley,
4 Gang of Four (GoF) Passamos a ter um vocabulário comum para conversar sobre projetos de software. Soluções que não tinham nome passam a ter nome. Ao invés de discutirmos um sistema em termos de pilhas, filas, árvores e listas ligadas, passamos a falar de coisas de muito mais alto nível como Fábricas, Fachadas, Observador, Estratégia, etc. A maioria dos autores eram entusiastas de Smalltalk, principalmente o Ralph Johnson. Mas acabaram baseando o livro em C++ para que o impacto junto à comunidade de CC fosse maior. E o impacto foi enorme, o livro vendeu centenas de milhares de cópias. O Formato de um padrão Todo padrão inclui Nome Problema Solução Conseqüências / Forças 4
5 O Formato dos padrões no GoF Nome (inclui número da página) um bom nome é essencial para que o padrão caia na boca do povo Objetivo / Intenção Também Conhecido Como Motivação um cenário mostrando o problema e a necessidade da solução Aplicabilidade como reconhecer as situações nas quais o padrão é aplicável Estrutura uma representação gráfica da estrutura de classes do padrão (usando OMT91) em, às vezes, diagramas de interação (Booch 94) Participantes as classes e objetos que participam e quais são suas responsabilidades Colaborações como os participantes colaboram para exercer as suas responsabilidades O Formato dos padrões no GoF Conseqüências vantagens e desvantagens, trade-offs Implementação com quais detalhes devemos nos preocupar quando implementamos o padrão aspectos específicos de cada linguagem Exemplo de Código no caso do GoF, em C++ (a maioria) ou Smalltalk Usos Conhecidos exemplos de sistemas reais de domínios diferentes onde o padrão é utilizado Padrões Relacionados quais outros padrões devem ser usados em conjunto com esse quais padrões são similares a este, quais são as dierenças 5
6 Tipos de Padrão Existem padrões em diversos níveis de abstração: Padrões de Análise Padrões de Projeto Padrões de Interface Padrões Arquiteturais Padrões de Programação Padrões de Processo Padrões de Padrão Padrões de Análise Descrevem soluções para problemas de análise de sistemas, embutindo conhecimento sobre o domínio de aplicação específico Exemplo: Padrão: Time-Association Problema: Duas entidades possuem uma associação temporal importante Solução: crie uma classe para cada uma das entidades e uma classe representando a associação temporal 6
7 Padrões de Projeto Soluções para problemas de projeto de software Exemplo: Padrão: Iterator Problema: Um agregado precisa ser percorrido de diferentes maneiras Solução: Defina uma classe abstrata Iterador e utilize instâncias desse iterador para fazer cada percurso desejado. Padrões de Interface Soluções para problemas comuns no projeto da interface de sistemas Exemplo: Padrão: Alternate subforms Problema: como projetar uma janela na qual são necessários conjuntos diferentes de dispositivos de acordo com dados da aplicação Solução: Monte um formulário usando subformulários menores. Crie um subform p/ cada variação dos dispositivos... 7
8 Padrões Arquiteturais Expressam o esquema ou organização estrutural fundamental de sistemas de software. Exemplo: Padrão:Model-View-Controller Problema: interfaces voláteis podem afetar a manutenibilidade do sistema como um todo Solução: desvincular a interface do modelo e do controlador... Padrões de programação Soluções de programação particulares de uma determinada linguagem Exemplo: C++ Idioms (Coplien 92) Idiom: forma canônica ortodoxa Problema: funcionamento de um objeto apresenta problemas devido a não existência de um padrão de implementação Solução: Uma classe contém sempre: um construtor default, um construtor copy, um operador de atribuição, e um destrutor 8
9 Padrões de processo definem soluções para os problemas encontrados nos processos envolvidos na engenharia de software: desenvolvimento, controle de configuração, testes, etc. Exemplo: Patterns for evolving frameworks Padrão: Three examples Problema: como começar a projetar um framework Solução: desenvolva 3 aplicativos que você considera que o framework poderia ajudar a construir Padrões de padrão Tentam uniformizar a estrutura básica de um padrão Exemplo: Templates fornecidos por diversos autores de padrão, entre eles: Brad Appleton (reuniu diversos em apenas um) Gang of Four (GoF): Gamma, Helm, Johnson e Vlissides, autores do primeiro livro sobre padrões Pattern Language for writing patterns 9
10 Outros Padrões Padrões de persistência Descrevem soluções para problemas de armazenamento de informações em arquivos ou bancos de dados Padrões para Hipertexto Descrevem soluções para problemas encontrados no projeto de hipertextos. Padrões para Hipermídia Descrevem soluções para problemas encontrados no desenvolvimento de aplicações hipermídia. Estrutura básica 1 - GoF Pattern Name (Scope, Purpose) O nome do padrão capta sucintamente a essência do padrão. Um bom nome é vital por poder se tornar parte do vocabulário de projeto Intent Uma descrição sucinta que responda: O que o padrão faz? Qual seu objetivo e razão de ser? Que problema ele enfoca? 10
11 Estrutura básica 1 - GoF Also Known As Outros nomes conhecidos para o padrão, se existirem Motivation Um cenário que ilustre o problema de projeto e como os elementos do padrão resolvem o problema. O cenário ajuda a entender a descrição mais abstrata do padrão que se segue. Estrutura básica 1 - GoF Applicability Quais as situações nas quais o padrão de projeto pode ser aplicado? Quais são os exemplos de projetos mal feitos que o padrão pode resolver? Como reconhecer tais situações? Structure: esquema do padrão Participants Classes e objetos que participam do padrão de projeto e suas responsabilidades 11
12 Estrutura básica 1 - GoF Collaborations Como os participantes colaboram para satisfazer suas responsabilidades Consequences Como o padrão alcança seus objetivos? Quais são os compromissos e resultados do uso do padrão? Quais aspectos da estrutura do sistema ele permite que sejam variados independentemente? Estrutura básica 1 - GoF Implementation Quais as armadilhas, sugestões ou técnicas que devem ser conhecidas para implementar o padrão? Existem aspectos específicos da linguagem? Sample Code and Usage Fragmentos de código que ilustram como o padrão pode ser implementado em C++ ou Smalltalk. 12
13 Estrutura básica 1 - GoF Program Listing Known Uses Exemplos do padrão encontrados em sistemas reais. Related Patterns Quais padrões de projeto são intimamente relacionados com este? Quais são as diferenças importantes? Com quais outros padrões este deve ser usado? Padrões GoF 13
14 Estrutura básica 2 - Brad Appleton Name: deve ser significativo Pode haver sub-seções Aliases e Also known as Problem: qual é a intenção do padrão? Context: aplicabilidade, pré-condições Forces: motivação para aplicação do padrão Solution: como solucionar o problema? Pode haver sub-seções Structure, participants Examples: ilustram a aplicação do padrão Estrutura básica 2 - Brad Appleton Related patterns: relacionamento com outros padrões da mesma linguagem padrões alternativos que oferecem outra solução para o mesmo problema mas sob outras forças e contexto. Padrões que podem ou devem ser aplicados simultaneamente com esse padrão Known uses: ajudam a validar que o padrão é uma solução provada p/ problema recorrente 14
15 Padrão de análise: Association Object (Lorraine Boyd) STATIC 1 STATIC 2 Name Name Description Description Set Set Get Get m ASSOCIATION Begin_Date End_Date Cost Allocate_costs Create_current_from_plan 0..m Atributos Comportamento Exemplo do Association Object Pattern Sala Departamento Nome Nome Descrição Descrição Calcular custos da sala Calcular custos depto Set Set Get Get m Atribuição_Sala_Depto Data_inicial Data_final Percentagem_alocação Alocar_custos Criar_atribuição 0..m 15
16 Regras para derivação de novos padrões ( Pattern mining ) Encontre pelo menos três exemplos nos quais um problema é resolvido efetivamente usando a mesma solução.... Extraia a solução, o problema e as influências Declare a solução como candidata a padrão Execute um writer s workshop para melhorar a descrição do candidato e compartilhá-lo com outros Aplique o candidato a padrão em um outro projeto de desenvolvimento de software Declare o candidato a padrão como padrão se sua aplicação for bem sucedida. Caso contrário tente procurar uma solução melhor. Desenvolvimento de sistemas usando padrões padrões não definem um novo método para desenvolvimento de software que substitua os já existentes. Apenas complementam os métodos de análise e projeto gerais e independentes do problema, com diretrizes para resolver problemas específicos e concretos. 16
17 Desenvolvimento de sistemas usando padrões 1) Utilize seu método preferido para o processo de desenvolvimento de software em cada fase do desenvolvimento. 2) Utilize um sistema de padrões adequado para guiar o projeto e implementação de soluções para problemas específicos, isto é, sempre que encontrar um padrão que resolva um problema de projeto presente no sistema, utilize os passos de implementação associados a esse padrão. Se esses se referirem a outros padrões, aplique-os recursivamente. 3) Se o sistema de padrões não incluir um padrão para seu problema de projeto, tente encontrar um padrão em outras fontes conhecidas. 4) Se nenhum padrão estiver disponível, aplique as diretrizes de análise e projeto do método que você está usando. Essas diretrizes fornecem pelo menos algum apoio útil para resolver o problema de projeto em mãos. Desenvolvimento de sistemas usando padrões Segundo Buschmann, essa abordagem simples evita que se criem outros métodos de projeto. Ela combina a experiência de desenvolvimento de software captada pelos métodos de análise e projeto com as soluções específicas para problemas de projeto descritas pelos padrões. Mas... a abordagem proposta não cria um novo método de desenvolvimento de sistemas, diferente dos já existentes??? 17
18 Frameworks Definição: Conjunto de classes que cooperam entre si e auxiliam na criação de aplicações específicas. Os exemplos mais comuns de frameworks são na área de computação gráfica. Tipos de framework Caixa branca: para instanciá-lo a uma aplicação específica é necessário alterar o código interno das classes Caixa preta: é possível fazer a instanciação a uma aplicação específica apenas combinando as classes entre si. 18
19 Padrões x Frameworks Padrões são mais abstratos do que frameworks Padrões são menores do que frameworks Padrões são menos especializados do que frameworks. Um framework pode incorporar diversos padrões Consideração Finais Os padrões: documentam uma parte repetida de um projeto OO, permitindo seu entendimento e aplicação em um contexto particular fornecem ao projeto um vocabulário comum constituem uma base de experiência para construção de software reutilizável. atuam como blocos construtivos a partir dos quais projetos mais complexos podem ser construídos 19
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 maisCapí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 maisCurso - 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 maisPadrõ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 maisEngenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios
Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana
Leia maisAula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW
Ciclo de Vida Aula 2 Revisão 1 Processo de Desenvolvimento de Software 1 O Processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto
Leia maisPrototype, 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 maisAutoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Introdução Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre
Leia maisESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE
ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE Fabiana Gomes Marinho Faculdade Lourenço Filho Resumo: Na UML, a modelagem conceitual dos dados é descrita pelo diagrama de classes, que através
Leia maisUNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO
UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura
Leia maisTópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.
Engenharia de Software Aula 06 Tópicos da Aula Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 26 Março 2012 Funcionais e não funcionais De usuário e do Engenharia de Estudo
Leia maisAnálise e Projeto Orientados a Objeto
Análise e Projeto Orientados a Objeto Objetivos Comparar e contrastar Análise e Projeto Definir O que vamos fazer na disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente
Leia mais3.1 Definições Uma classe é a descrição de um tipo de objeto.
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 Classes Autoria:Aristófanes Corrêa Silva Adaptação:
Leia maisMetadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados
1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,
Leia maisAnálise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem
Leia maisUnidade 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 maisPadrõ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 maisUnidade II MODELAGEM DE PROCESSOS
Unidade II 3 MODELAGEM DE SISTEMAS 1 20 A fase de desenvolvimento de um novo sistema de informação (Quadro 2) é um momento complexo que exige um significativo esforço no sentido de agregar recursos que
Leia maisResolução da lista de exercícios de casos de uso
Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Apresentação da Disciplina Edirlei Soares de Lima Objetivos da Disciplina Apresentar e discutir técnicas avançadas de Análise e Projeto de
Leia maisCurso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP
Conceitos RUP RUP, abreviação de Rational Unified Process (ou Processo Unificado da Rational), é um processo de Engenharia de software criado pela Rational Software Corporation(a qual foi incorporada pela
Leia maisApresentação da Disciplina Processo de Software
Apresentação da Disciplina Processo de Software Prof.ª Dra. Aida Araújo Ferreira aidaferreira@recife.ifpe.edu.br Modelos de Melhoria de Processo de Software Tecnologia em Análise e Desenvolvimento de Sistemas
Leia maisSimulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados
Simulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados 01) Defina com suas próprias palavras: a) Banco de Dados b) Sistema Gerenciador de Banco de Dados c) Sistema de Banco de
Leia maisO modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento
O modelo Entidade-Relacionamento Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento 1 Antes de começarmos: A modelagem conceitual é uma fase muito importante no plamejamento de um
Leia maisUNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT Disciplina: Modelagem a Programação Orientada a Objetos
Leia mais2 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 maisArquivo original em Inglês: http://www.isaca.org/knowledge-center/risk-it-it-risk- Management/Documents/Risk-IT-Brochure.pdf
Arquivo original em Inglês: http://www.isaca.org/knowledge-center/risk-it-it-risk- Management/Documents/Risk-IT-Brochure.pdf Risk IT - Um conjunto de princípios orientadores e o primeiro framework que
Leia maisAnálise e Projeto de Software
Análise e Projeto de Software 1 Mundo Real Modelagem Elicitação Análise Problemas Soluções Gap Semântico Mundo Computacional Elicitação de Requisitos Análise de Requisitos Modelagem dos Requisitos 2 Projeto
Leia maisModelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.
Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever
Leia maisProgramaçã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 maisAdministração de Pessoas
Administração de Pessoas MÓDULO 5: ADMINISTRAÇÃO DE RECURSOS HUMANOS 5.1 Conceito de ARH Sem as pessoas e sem as organizações não haveria ARH (Administração de Recursos Humanos). A administração de pessoas
Leia maisPadrõ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 maisUML & Padrões Aula 3. UML e Padrões - Profª Kelly Christine C. Silva
UML & Padrões Aula 3 UML e Padrões - Profª Kelly Christine C. Silva 1 UML & Padrões Aula 3 Diagrama de Casos de Uso Profª Kelly Christine C. Silva O que vamos tratar: Modelos de Caso de Uso Diagrama de
Leia maisPADRÕ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 maisPorque estudar Gestão de Projetos?
Versão 2000 - Última Revisão 07/08/2006 Porque estudar Gestão de Projetos? Segundo o Standish Group, entidade americana de consultoria empresarial, através de um estudo chamado "Chaos Report", para projetos
Leia maisEngenharia de Software II
Engenharia de Software II Aula 28 Revisão para a Prova 2 http://www.ic.uff.br/~bianca/engsoft2/ Aula 28-28/07/2006 1 Matéria para a Prova 2 Gestão de projetos de software Conceitos (Cap. 21) Métricas (Cap.
Leia maisModelagem de Sistemas
Capítulo 5 Modelagem de Sistemas slide 1 2011 Pearson Pren0ce Hall. Todos os direitos reservados. 1 Tópicos Apresentados Modelos de contexto Modelos de interação Modelos estruturais Modelos comportamentais
Leia mais18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB
18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB Autor(es) HARLEI MIGUEL DE ARRUDA LEITE Orientador(es) PLÍNIO ROBERTO SOUZA VILELA Apoio Financeiro PIBIC/CNPQ
Leia maisServiços Web: Arquitetura
Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula
Leia maisMicro Mídia Informática Fevereiro/2009
Micro Mídia Informática Fevereiro/2009 1 UML Introdução Fases de Desenvolvimento Notação Visões Análise de Requisitos Casos de Uso StarUML Criando Casos de Uso Orientação a Objetos Diagrama de Classes
Leia maisProgramação Orientada a Objeto
Programação Orientada a Objeto Classes, Atributos, Métodos e Objetos Programação de Computadores II Professor: Edwar Saliba Júnior 1) Java é uma linguagem orientada a objetos. Para que possamos fazer uso
Leia maisFramework para jogos de cartas
Framework para jogos de cartas por André Luís Knabben e Thiago Robert Professor Doutor Ricardo Pereira e Silva Orientador Resumo Projetar artefatos de software visando a reusabilidade é uma tarefa complexa.
Leia mais3 Qualidade de Software
3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo
Leia maisAULA 16 - Sistema de Arquivos
AULA 16 - Sistema de Arquivos Arquivos podem ser vistos como recipientes que contêm dados ou como um grupo de registros correlatos. Os arquivos armazenam informações que serão utilizadas, em geral, por
Leia maisConteú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 maisSOFTWARE PATTERNS: FUNDAMENTOS, TIPOS E DESCRIÇÃO Sérgio Teixeira de Carvalho
SOFTWARE PATTERNS: FUNDAMENTOS, TIPOS E DESCRIÇÃO Sérgio Teixeira de Carvalho Sérgio Teixeira de Carvalho SOFTWARE PATTERNS: FUNDAMENTOS, TIPOS E DESCRIÇÃO Sérgio Teixeira de Carvalho 1 Resumo Especialistas,
Leia maisagility made possible
RESUMO DA SOLUÇÃO Utilitário ConfigXpress no CA IdentityMinder a minha solução de gerenciamento de identidades pode se adaptar rapidamente aos requisitos e processos de negócio em constante mudança? agility
Leia maisCampus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /
Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: GESTÃO DE PROJETOS Aula N : 10 Tema: Gerenciamento
Leia maisChaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:
Chaves 1 Chaves CONCEITO DE CHAVE: determina o conceito de item de busca, ou seja, um dado que será empregado nas consultas à base de dados. É um conceito lógico da aplicação (chave primária e chave estrangeira).
Leia mais1. Modelagem de Sistemas 1.1. Os Desenvolvedores de Sistemas podem Escolher entre Quatro Caminhos
Sumário Modelagem de Processos Módulo 4 1. Modelagem de Sistemas 1.1. Os Desenvolvedores de Sistemas podem Escolher entre Quatro Caminhos M. Sc. Luiz Alberto lasf.bel@gmail.com Modelagem de Sistemas MP
Leia maisADMINISTRAÇÃO I. Família Pai, mãe, filhos. Criar condições para a perpetuação da espécie
1 INTRODUÇÃO 1.1 ORGANIZAÇÃO E PROCESSOS A administração está diretamente ligada às organizações e aos processos existentes nas mesmas. Portanto, para a melhor compreensão da Administração e sua importância
Leia maisBUSCANDO UM PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PARA AUXILIAR A GESTÃO DE PRODUÇÃO DO PBL-VE E DO PBL-VS
973 BUSCANDO UM PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PARA AUXILIAR A GESTÃO DE PRODUÇÃO DO PBL-VE E DO PBL-VS Jéssica Magally de Jesus Santos 1 ; Gabriela Ribeiro Peixoto Rezende Pinto 2 1. Bolsista
Leia maisO processo envolve quatro questões básicas:
Planejamento de RH O planejamento de recursos humanos coleta e utiliza informações para apoiar as decisões sobre os investimentos que devem ser feitos com atividades de RH O processo envolve quatro questões
Leia maisO Processo de Engenharia de Requisitos
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA O Processo de Engenharia de Requisitos Engenharia de Software 2o.
Leia maisModelagemde 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 maisCasos de uso Objetivo:
Casos de uso Objetivo: Auxiliar a comunicação entre os analistas e o cliente. Descreve um cenário que mostra as funcionalidades do sistema do ponto de vista do usuário. O cliente deve ver no diagrama de
Leia maisLISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE
Questionamento a alta direção: 1. Quais os objetivos e metas da organização? 2. quais os principais Produtos e/ou serviços da organização? 3. Qual o escopo da certificação? 4. qual é a Visão e Missão?
Leia maisPadrões de Software (Software Patterns)
Padrões de Software (Software Patterns) Cleidson de Souza - cdesouza@ufpa.br Departamento de Informática Universidade Federal do Pará Agenda! Definição! Histórico! Considerações! Forma de um Padrão! Exemplo!
Leia maisPerguntas. Que todo usuário deveria fazer antes de comprar um software CAD de baixo custo. Por Robert Green, proprietário da Robert Green Consulting
Perguntas Que todo usuário deveria fazer antes de comprar um software CAD de baixo custo Por Robert Green, proprietário da Robert Green Consulting 5 perguntas que todo usuário deveria fazer antes de comprar
Leia maisO que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo?
O que é a UML? Introdução a UML Linguagem Gráfica de Modelagem para: Visualizar Especificar Construir Documentar Comunicar Artefatos de sistemas complexos Linguagem: vocabulário + regras de combinação
Leia mais3 Estratégia para o enriquecimento de informações
34 3 Estratégia para o enriquecimento de informações Podemos resumir o processo de enriquecimento de informações em duas grandes etapas, a saber, busca e incorporação de dados, como ilustrado na Figura
Leia maisPadrõ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 maisFundamentos de Banco de Dados e Modelagem de Dados
Abril - 2015 Universidade Federal de Mato Grosso Instituto de Computação Pós Graduação Lato Sensu em Banco de Dados Fundamentos de Banco de Dados e Modelagem de Dados Prof. Dr. Josiel Maimone de Figueiredo
Leia maisUML - 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 mais1 Introdução. Componentes Usuários. Provedor de Serviços. Figura 1.1 Ambiente de oferecimento de serviços
1 Introdução Nos últimos anos, houve um aumento notável de demanda por plataformas com suporte a diferentes mídias. Aplicações manipulando simultaneamente texto, vídeo e áudio são cada vez mais comuns.
Leia maisEspecificação do Trabalho
Especificação do 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, ligação,
Leia maisRequisitos do usuário, do sistema e do software [Sommerville, 2004]
Requisitos Objetivos ou restrições estabelecidas por clientes e usuários do sistema que definem as diversas propriedades do sistema Condição ou capacidade necessária que o software deve possuir para que
Leia maisAtividades da Engenharia de Software ATIVIDADES DE APOIO. Atividades da Engenharia de Software. Atividades da Engenharia de Software
Módulo 1 SCE186-ENGENHARIA DE SOFTWARE Profª Rosely Sanches rsanches@icmc.usp.br CONSTRUÇÃO Planejamento do Codificação Teste MANUTENÇÃO Modificação 2003 2 Planejamento do Gerenciamento CONSTRUÇÃO de Codificação
Leia maisTeste de Software Parte 1. Prof. Jonas Potros
Teste de Software Parte 1 Prof. Jonas Potros Cronograma Verificação e Validação Teste de Software: Definição e Conceitos Técnicas de Teste Fases de Teste Processo de Teste Automatização do Processo de
Leia maisDesenvolvimento estruturado versus orientado a objetos.
Desenvolvimento estruturado versus orientado a objetos. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Objetivos Identificar diferenças entre: Desenvolvimento
Leia maisProgramação Extrema. Luis Fernando Machado. Engenharia de Software
Programação Extrema Luis Fernando Machado Engenharia de Software Desenvolvimento Ágil Programação Extrema, ou Extreme Programming (XP) é um modelo de desenvolvimento ágil. Desenvolvimento ágil foi criado
Leia maisModelagem de Processos. Prof.: Fernando Ascani
Modelagem de Processos Prof.: Fernando Ascani Bibliografia UML Guia de consulta rápida Douglas Marcos da Silva Editora: Novatec UML Guia do usuário Grady Booch James Rumbaugh Ivair Jacobson Editora: Campus
Leia maisSISTEMA 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 maisPrincípios do teste de software
Teste de Software Princípios do teste de software Conforme a Lei de Pareto, 80% dos erros podem ser localizados em 20% do projeto, geralmente nos módulos principais do sistema; A atividade de teste não
Leia maisINSTITUTO TECNOLÓGICO DE AERONÁUTICA DIVISÃO DE ENGENHARIA ELETRÔNICA LABORATÓRIO DE GUERRA ELETRÔNICA
INSTITUTO TECNOLÓGICO DE AERONÁUTICA DIVISÃO DE ENGENHARIA ELETRÔNICA LABORATÓRIO DE GUERRA ELETRÔNICA CURSO DE ESPECIALIZAÇÃO EM ANÁLISE DE AMBIENTE ELETROMAGNÉTICO CEAAE /2008 DISCIPLINA EE-09: Inteligência
Leia maisGuia para elaboração do Modelo de Domínio Metodologia Celepar
Guia para elaboração do Modelo de Domínio Metodologia Celepar Agosto 2009 Sumário de Informações do Documento Documento: guiamodelagemclassesdominio.odt Número de páginas: 20 Versão Data Mudanças Autor
Leia maisUnidade 9: Diálogos deliberativos
Unidade 9: Diálogos deliberativos Como podemos utilizar as sínteses de evidências? Informar os grupos de interesse Divulgação da síntese de políticas Informações adaptadas derivadas da síntese Meios de
Leia maisPADRÕ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 maisRoteiro SENAC. Análise de Riscos. Análise Quantitativa de Riscos. Análise Quantitativa de Riscos. Análise Quantitativa de Riscos
SENAC Pós-Graduação em Segurança da Informação: Análise de Riscos Parte 5 Leandro Loss, Dr. Eng. loss@gsigma.ufsc.br http://www.gsigma.ufsc.br/~loss Roteiro Análise de Qualitativa Quantitativa Medidas
Leia maisTechProf Documento de Arquitetura
TechProf Projeto SuporteProf Versão 1.0 15 de junho de 2016 Responsáveis: Adelson Santos de Melo Filho, Edvaldo Nicolau da Silva, Moisés Luis da Silva Histórico de Revisões Data Versão Descrição Autor
Leia maisGerenciamento de Projetos Modulo IX Qualidade
Gerenciamento de Projetos Modulo IX Qualidade Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com Bibliografia* Project Management Institute. Conjunto de Conhecimentos em Gerenciamento
Leia maisPadrões de Aplicações Empresariais
Padrões de Aplicações Empresariais Paulo Sousa Engenharia da Informação Instituto Superior de Engenharia do Porto Introdução aos Padrões Parte 1 O que é um Pattern? Each pattern describes a problem that
Leia maisIntrodução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização
Prof. Ricardo José Pfitscher Material elaborado com base em: José Luiz Mendes Gerson Volney Lagemann Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento
Leia maisEspecificação Operacional.
Especificação Operacional. Para muitos sistemas, a incerteza acerca dos requisitos leva a mudanças e problemas mais tarde no desenvolvimento de software. Zave (1984) sugere um modelo de processo que permite
Leia maisCURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 4º PERÍODO 7º MÓDULO AVALIAÇÃO A3 DATA 15/10/2009 ENGENHARIA DE SOFTWARE 2009/2 GABARITO COMENTADO QUESTÃO 1: Analise as afirmações
Leia maisUNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC
CURSO: Bacharelado em Ciência da Computação DISCIPLINA: ANPS Análise e Projeto de Sistemas AULA NÚMERO: 3 DATA: PROFESSOR: Murakami Sumário 1 APRESENTAÇÃO...1 2 DESENVOLVIMENTO...1 2.1 Revisão...1 2.1.1
Leia maisProf. Me. Marcos Echevarria
Prof. Me. Marcos Echevarria Já vimos que existem vários tipos de testes de software que podemos usar para que nossos sistemas tenham uma qualidade maior. Além disso, esses testes podem ser executados em
Leia maisnatureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues
Modelo De Desenvolvimento De Software É uma representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas e interrelacionadas
Leia maisModelagem de Processos de Negócio Aula 5 Levantamento de Processos. Andréa Magalhães Magdaleno andrea@ic.uff.br
Modelagem de Processos de Negócio Aula 5 Levantamento de Processos Andréa Magalhães Magdaleno andrea@ic.uff.br Agenda Técnicas de levantamento de processos Análise de documentação Observação Story boarding
Leia maisTop Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV
Top Guia In.Fra: Perguntas para fazer ao seu fornecedor de CFTV 1ª Edição (v1.4) 1 Um projeto de segurança bem feito Até pouco tempo atrás o mercado de CFTV era dividido entre fabricantes de alto custo
Leia maisIntrodução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004
Introdução ao RUP Rational Unified Process por Denize Terra Pimenta Outubro/2004 1 Contexto Não é suficiente apenas a presença de desenvolvedores altamente treinados: Precisamos de uma linguagem para a
Leia mais04/07/2015 UML. Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@hotmail.com DEFINIÇÃO DE REQUSIITOS
UML Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@hotmail.com DEFINIÇÃO DE REQUSIITOS 1 REQUISITOS São os serviços fornecidos para um sistema. São classificados em requisitos
Leia maisOrientação a Objetos I
Serviço Nacional de Aprendizagem Comercial do Rio Grande do Sul Informação e Comunicação Habilitação Técnica de Nível Médio Técnico em Informática Orientação a Objetos I UML: Introdução e Casos de Uso
Leia maisTrabalho de Redes de Computadores
UNIVERSIDADE FEDERAL DO CEARÁ INSTITUTO UFC VIRTUAL PROJETO JOVEM DIGITAL KP NOME: Trabalho de Redes de Computadores Questão 1: Assinale V para verdadeiro e F para falso. Os itens que estiverem falsos
Leia mais