Aula 9 Especificação de Requisitos Exercício
|
|
|
- Iago Freire de Miranda
- 8 Há anos
- Visualizações:
Transcrição
1 Aula 9 Especificação de Requisitos Exercício Alessandro Garcia LES/DI/PUC-Rio Abril 2017 Exercício Faça a especificação de requisitos do programa do jogo FreeCell com base no que foi apresentado na aula passada: não somente requisitos funcionais mas também: não-funcionais (pelo menos 3) A especificação deve ser feita com seu grupo do trabalho T2 Devem ser especificados todos os requisitos que devem ser satisfeitos pelo programa até o T4 Deve ser possível jogar uma partida por completo, obedecendo a todas regras do FreeCell Não inclua requisitos que não serão implementados pela equipe Não é necessário armazenar dados ou estatísticas de partidas em arquivos nem funcionalidades adicionais como undo e verificar se jogo está travado. Alessandro Garcia LES/DI/PUC-Rio 2 /35 1
2 FreeCell Não deve pairar dúvidas sobre as regras de disposição inicial das cartas, movimentação das cartas individuais e em bloco, informações a serem solicitados do jogador, quando o jogo termina, etc.. 3 /35 Critérios de qualidade de especificações Especificações devem ser de boa qualidade quanto melhor a qualidade, menor será o retrabalho inútil é estimado que 70% dos defeitos de um programa são causados por especificações inexistentes, incompleta ou erradas Diferente de programas, não testamos especificações uma forma simples de fazer isso é verificar se a especificação satisfaz um conjunto de critérios 4 /36 2
3 Critérios de qualidade de especificações Especificações devem ser de boa qualidade quanto melhor a qualidade, menor será o retrabalho inútil é estimado que 70% dos defeitos de um programa são causados por especificações inexistentes ou erradas Diferente de programas, não testamos especificações Uma das técnicas de controle da qualidade de especificações é a leitura com intenção de encontrar defeitos uma forma simples de fazer isso é verificar se a especificação satisfaz um conjunto de critérios formas mais eficazes e bem mais complexas revisões por desenvolvedores que não produziram a especificação Ago /36 Critérios de qualidade de especificações Concisão a especificação é redigida com poucas palavras... mas isso não significa omitir definições de conceitos: Explicitude (explícito + -(t)ude) todos os itens da especificação estão explicitamente definidos ex.: esquecer de definir cada uma das peças de um jogo de xadrez Suficiência a especificação não omite aspectos relevantes ex.: esquecer ou omitir conscientemente detalhes de cada rodada ou mão do jogo de truco Exatidão a especificação está em conformidade observável com o mundo real ex. 1: inventar ou banir regras básicas do jogo de xadrez ex. 2: usar termos (tais como nomes de jogadas) que não são aqueles utilizados comumente por jogadores de xadrez Compreensibilidade a especificação deve ser compreensível pelos diversos leitores, em particular por leigos em computação Ago /36 3
4 Critérios de qualidade de especificações Não-ambigüidade (inequívoco) diferentes leitores entendem o item exatamente da mesma maneira ex.: usar o termo jogo, quando quer se referir a uma partida em particular Ausência de redundância Redundância ocorre quando um mesmo item é especificado em vários lugares (duplicação, repetição) Verificabilidade ou testabilidade deve ser possível determinar objetivamente a satisfação de cada item da especificação ex.: extrair raiz quadrada tem menor verificabilidade do que extrair raiz quadrada de um inteiro x com precisão double, onde x >= 0 Prioridade está claro o que é efetivamente requerido e o que é apenas desejado Ago /36 Critérios de qualidade de especificações Consistência a especificação não contém contradições internas, ou com outros documentos ex.: em parte da especificação, se diz que dama pode pular qualquer quantidade de casas na diagonal, mas em outra parte se diz que há um limite no máximo, até a última casa antes da primeira peça da mesma cor na diagonal Nivelamento a especificação está no nível de abstração do artefato sendo especificado ex.: para usar um programa, não interessa saber quais as estruturas de dados utilizadas Ago /36 4
5 Dicas Trabalho T2 - Não esquecer... Preencher tabela de atividades ao longo do processo. NÃO DEIXE PARA ÚLTIMA HORA, POIS VOCÊ NÃO SE LEMBRARÁ DO QUE FEZ TAL DIA, TAL HORA. Com relatórios similares a esse você aprende a planejar o seu trabalho O relatório é INDIVIDUAL Ferramentas como gmake e batches de apoio deve ser utilizados LES/DI/PU C-Rio Dicas para o Trabalho Não esqueça de rever cuidadosamente: critérios de avaliação procedimentos para entrega do trabalho Certifique-se que seu trabalho atende os seguintes pontos: estruturação: contém tanto o fonte dos módulos de implementação quanto módulos definição (interface) siga princípios de modularidade: interfaces simples e documentadas,... obediência a padrões de programação não esqueçam de produzir arquivos LEIAME.TXT e RELATOR.TXT LES/DI/PU C-Rio 5
6 Aula 9 Especificação de Requisitos Exercício Alessandro Garcia LES/DI/PUC-Rio Abril
Aula 8 Especificação de Requisitos
Aula 8 Especificação de Requisitos Alessandro Garcia Abril 2017 Recados Enunciado do trabalho prático (T2) já está disponível no sítio da disciplina: http://www.inf.puc-rio.br/~inf1301/ Enviem mensagem
Aula 10 Arquitetura de Software e Exercício. Alessandro Garcia LES/DI/PUC-Rio Abril de 2017
Aula 10 Arquitetura de Software e Exercício Alessandro Garcia Abril de 2017 Não Esquecer... Preencher tabela de atividades ao longo do processo. NÃO DEIXE PARA ÚLTIMA HORA, POIS VOCÊ NÃO SE LEMBRARÁ DO
Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016
Aula 20 Testes 3 Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016 Slides adaptados de: Staa, A.v. Notas de Aula em Programacao Modular; 2008. Teste de Caixa Branca O que
Aula 02 Conceitos e Princípios de Modularidade 1
Aula 02 Conceitos e Princípios de Modularidade 1 Alessandro Garcia LES/DI/PUC-Rio Março 2017 Lembretes Horário das aulas vamos ter que começar as 13:00 Definição de horário de monitoria Sítio (site) da
Estágio II. Aula 01 Qualidade de Software. Prof. MSc. Fred Viana
Estágio II Aula 01 Qualidade de Software Prof. MSc. Fred Viana Agenda Qualidade de Software Definições Dimensões Qualidade e Produtividade Por que testar um software Definições de Teste Motivação Por que
Aula 02 Conceitos e Princípios de Modularidade 1
Aula 02 Conceitos e Princípios de Modularidade 1 Alessandro Garcia LES/DI/PUC-Rio Agosto 2016 Lembretes Horário das aulas inicio cada aula a partir de 13:15 Sítio (site) da disciplina: www.inf.puc-rio.br/~inf1301
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Prof. Fabiano Papaiz IFRN Um Processo de Desenvolvimento de Software, ou simplesmente Processo de Software, é um conjunto de atividades realizadas por pessoas cujo
Introdução a Teste de Software
Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução a Teste de Software Prof. Luthiano Venecian 1 Conceitos Teste de software
LIVRO ENGENHARIA DE SOFTWARE FUNDAMENTOS, MÉTODOS E PADRÕES
LIVRO ENGENHARIA FUNDAMENTOS, MÉTODOS E PADRÕES WILSON PADUA PAULA FILHO CAPÍTULO REQUISITOS 1 REQUISITOS TECNICO E GERENCIAL ESCOPO (RASCUNHO) CARACTERISTICAS 2 O que são Requisitos? São objetivos ou
especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje
1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria
Requisitos de Software
Engenharia de requisitos Requisitos de Software Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições
SME Introdução à Programação de Computadores Primeiro semestre de Trabalho: jogo Semáforo
SME0230 - Introdução à Programação de Computadores Primeiro semestre de 2017 Professora: Marina Andretta ([email protected]) Monitores: Douglas Buzzanello Tinoco ([email protected]) Amanda Carrijo
Teste de Software. Karen Frigo Busolin Novembro / 2010
Teste de Software Karen Frigo Busolin Novembro / 2010 Processo de Testes de Software Possibilitar aos profissionais maior visibilidade e organização dos trabalhos. Representa uma estruturação de etapas,
3. Engenharia dos requisitos de software
Renato Cardoso Mesquita Departamento de Eng. Elétrica da UFMG [email protected] Engenharia de Software 3. Engenharia dos requisitos de software.......... 3.1. Visão Geral O fluxo de Requisitos reúne
2
ANÁLISE DE SISTEMAS (processo de desenvolvimento de sistemas) por Antônio Maurício Pitangueira 1 2 Levantamento de requisitos Análise de requisitos Projeto Implementação Testes Implantação Foco da disciplina
MODELAGEM DE SISTEMA Apresentação
MODELAGEM DE SISTEMA Apresentação Prof Daves Martins Msc Computação de Alto Desempenho Email: [email protected] Análise de Requisitos Processo de descobrir, analisar, documentar e verificar
Princípios da Engenharia de Software aula 03
Princípios da Engenharia de Software aula 03 Prof.: José Honorato Ferreira Nunes Material cedido por: Prof.: Franklin M. Correia Na aula anterior... Modelos de processos de software: Evolucionário Tipos
VETORES Motivação AULA 19
AULA 19 VETORES 19.1 Motivação Considere o problema de calcular a média aritmética das notas de 5 alunos de uma disciplina e determinar e escrever o número de alunos que obtiveram nota superior à média
Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)
Paradigma Simbólico Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2) Revisão da aula anterior: definição de IA Podemos associar o termo IA com: Parte da ciência da computação
FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001
FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS Projeto de Programas PPR0001 2 Introdução Antes de desenvolver ou construir qualquer produto ou sistema em engenharia é necessário um... o PROJETO O que é um
Qualidade de Software QUALIDADE DE SOFTWARE PRODUTO
Qualidade de Software QUALIDADE DE SOFTWARE PRODUTO O que é Qualidade de Software Produto? Boa fabricação. Deve durar muito. Bom desempenho. Utilizável tanto em UNIX quanto em DOS. Adaptável às minhas
ATIVIDADES PRÁTICAS SUPERVISIONADAS
ATIVIDADES PRÁTICAS SUPERVISIONADAS 7ª Série Linguagens Formais e Autômatos Ciência da Computação A atividade prática supervisionada (ATPS) é um método de ensino-aprendizagem desenvolvido por meio de um
Programação Orientada a Objetos
Ciência da Computação Prof. Elias Ferreira Elaborador por: Ana Claudia Bastos Loureiro Monção JUNIT Teste de Software Processo de Software Um processo de software pode ser visto como o conjunto de atividades,
Análise de sistemas. Engenharia de Requisitos
Análise de sistemas Engenharia de Requisitos Análise de Requisitos Processo de descobrir, analisar, documentar e verificar serviços requeridos para um sistema e suas restrições operacionais. 2 O que é
Engenharia de Software
Engenharia de Software Requisitos de Software Professor: Charles Leite Engenharia de requisitos Os requisitos de um sistema são as descrições do que o sistema deve fazer, os serviços que oferece e as restrições
Aprendizado de Máquina
Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCENS UFES Departamento de Computação Aprendizado de Máquina Inteligência Artificial Site: http://jeiks.net E-mail: [email protected]
Trabalho B Campo Minado
Trabalho B Campo Minado Neste trabalho, você deve implementar um jogo chamado Campo Minado. Neste documento, você encontrará todas as informações sobre a implementação a ser realizada: regras do jogo,
Projeto Xadrez Entrega 01: Polimorfismo e Herança
Professore: Aluno PAE (Turma A): Aluno PAE (Turma C): João do E.S. Batista Neto (jbatista at icmc.usp.br) Felipe S. L. G. Duarte (fgduarte at icmc.usp.br) Oscar Cuadros Linares (ocuadrosl at gmail.com)
Unidade II MODELAGEM DE PROCESSOS. Profa. Gislaine Stachissini
Unidade II MODELAGEM DE PROCESSOS Profa. Gislaine Stachissini Modelagem de sistemas A fase do desenvolvimento do sistema exige: esforço; dedicação; envolvimento; um único objetivo. Estilo de desenvolvimento
Programação Aplicada de Computadores. Trabalho 1 Freecell
Programação Aplicada de Computadores Trabalho 1 Freecell 1. Objetivo O objetivo deste trabalho é implementar o jogo Freecell utilizando a estrutura de dados Pilha (stack). Freecell é um jogo de cartas
Apêndice 1. Recomendações para testes de módulos
Recomendações para testes de módulos - 1 Apêndice 1. Recomendações para testes de módulos O presente conjunto de recomendações tem por objetivo definir um conjunto mínimo de critérios de seleção de casos
Professor Emiliano S. Monteiro
Professor Emiliano S. Monteiro To-Do Doing Done Conhecer os processos de desenvolvimento habilita o aluno a realizar uma melhor escolha de processo para uso em projetos futuros. A vantagem de conhecer
Unidade VI. Inspeção de software
1/06/20 Unidade VI Validação e Verificação de Software Profa. Dra. Sandra Fabbri de software Definição é um método de análise estática para verificar propriedades de qualidade de produtos de software.
Programação II. Trabalho 2 Freecell
Programação II Trabalho 2 Freecell 1. Objetivo O objetivo deste trabalho é implementar o jogo Freecell utilizando o Tipo Abstrato de Dados (TAD) Pilha (stack). Freecell é um jogo de cartas que tem por
1/ 36. Computação 1 - Python Aula 1 - Teórica: Introdução
1/ 36 Computação 1 - Python Aula 1 - Teórica: Introdução Conhecendo a turma Experiência com programação e uso do computador Quantos já programaram antes? Quais linguagens? Quantos tem computador em casa
Computação II - Python Aula 1 - Apresentação do curso e revisão de programação modular
Computação II - Python Aula 1 - Apresentação do curso e revisão de programação modular Carla A. D. M. Delgado João C. P. da Silva Dept. Ciência da Computação - UFRJ http://www.dcc.ufrj.br/ pythonufrj/
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE Nickerson Fonseca Ferreira [email protected] Introdução 2 Antes de qualquer
Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.
Teste de Software Prof. Camila Pedro de Assis Sobreira Jr. 2 Técnicas de Testes Técnica de Teste Funcional Técnica de Teste Estrutural 3 Testes Funcionais Teste de Especificação de Requisitos. Teste de
Trabalho Computacional Jogo da Forca
Universidade Federal do Espírito Santo Centro Tecnológico Trabalho Computacional Jogo da Forca PET Engenharia de Computação 1. Introdução: Você será responsável por implementar o Jogo da Forca como trabalho
PDS. Aula 1.4 Modelos de Processo. Prof. Dr. Bruno Moreno
PDS Aula 1.4 Modelos de Processo Prof. Dr. Bruno Moreno [email protected] 2 Introdução Há alguns anos, o desenvolvimento de softwares era muito obsoleto; Existiam diversos problemas relacionados
Desenvolvimento de um Jogo de Xadrez em Java
Desenvolvimento de um Jogo de Xadrez em Java Bruno Fontana Canella 1, Fabricio Giordani 2 1 Acadêmico do curso de Ciência da Computação Unidade Acadêmica de Ciências, Engenharias e Tecnologias - Universidade
Projeto Integrador. <Projeto Integrador> Documento Visão. Versão <1.0>
Projeto Integrador Documento Visão Versão Histórico de Revisões Data Versão Descrição Autor
Aula 06 Introdução à Teste de Módulos II e Exercícios. Alessandro Garcia LES/DI/PUC-Rio Março 2014
Aula 06 Introdução à Teste de Módulos II e Exercícios Alessandro Garcia LES/DI/PUC-Rio Março 2014 Princípios Discutidos até aqui Cada módulo deveria implementar uma única abstração similarmente: cada função
Introdução a Banco de Dados. Curso: Engenharia de Produção Disciplina: Informática Aplicada Professor: Rodrigo da Rocha
Introdução a Banco de Dados Curso: Engenharia de Produção Disciplina: Informática Aplicada Professor: Rodrigo da Rocha Agenda Introdução Objetos do Banco de Dados Planejar um Banco de Dados Criar um Banco
Teste de Software. Técnica de Teste Estrutural. Rosemary Silveira Filgueiras Melo
Teste de Software Técnica de Teste Estrutural Rosemary Silveira Filgueiras Melo [email protected] 1 Agenda Casos de Teste e Cenários de Teste Técnicas de Teste Técnica de Teste Estrutural 2 Casos
SSC-546 Avaliação de Sistemas Computacionais
QUALIDADE DE PACOTE DE SOFTWARE SSC-546 Avaliação de Sistemas Computacionais Profa. Rosana Braga (material profas Rosely Sanches e Ellen F. Barbosa) Qualidade de Produto de Software Modelo de Qualidade
Engenharia de Software II
Faculdade de Ciências e Tecnologia Departamento de Matemática e Computação Bacharelado em Ciência da Computação Engenharia de Software II Aula 02 ([email protected]) Contetualizando ISO 12207: Estrutura
Computação I - Python Aula 1 - Teórica: Introdução
Computação I - Python Aula 1 - Teórica: Introdução João C. P. da Silva Carla A. D. M. Delgado Ana Luisa Duboc Dept. Ciência da Computação - UFRJ http://ladybugcodingschool.com/ Computação I - Python Aula
Guia do Processo de Teste Metodologia Celepar
Guia do Processo de Teste Metodologia Celepar Agosto de 2009 Sumário de Informações do Documento Documento: guiaprocessoteste.odt Número de páginas: 11 Versão Data Mudanças Autor 1.0 26/12/07 Criação.
4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos
Processos de engenharia de requisitos Processos de Engenharia de Requisitos Os requisitos e as formas de obtê-los e documentálos variam drasticamente de um projeto para o outro Contudo, existe uma série
Introdução a Métodos Ágeis. Curso de Verão IME/USP
Introdução a Métodos Ágeis Curso de Verão 2008 - IME/USP www.agilcoop.org.br Danilo Sato Mariana Bravo Tradicional ou Ágil? 2 Tradicional ou Ágil? Forecast-driven vs Feedback-driven 3 O Que é Sucesso?
A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..
Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Introdução aos Algoritmos A única diferença entre o difícil e o impossível é que o último demora um pouco mais de
1ª Colocação 10 pontos. 2ª Colocação 08 pontos. 3ª Colocação 06 pontos
Regras: Jogo do Xadrez 1. Sorteio: Os confrontos serão definido através de sorteio e relacionados no chaveamento da competição; A ordem de disputa será de acordo com a ordem de retira no sorteio. PS: 2
Requisitos de Software
Requisitos de Software Engenharia de requisitos Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições
Algoritmos e Linguagem de Programação I
Algoritmos e Linguagem de Programação I Roberto [email protected] 2014.1 Módulo I Aula 2 Introdução LÓGICA Lógica Lógica é a forma correta de organizar os pensamentos e demonstrar o
Módulo 1. Tabuleiro, peças, movimentos e capturas
Módulo 1 Tabuleiro, peças, movimentos e capturas O Tabuleiro O Xadrez é praticado entre duas pessoas, que comandam seus exércitos (brancas e negras). O objetivo do jogo é dar Xeque Mate ao rei adversário,
Algoritmos e Programação
Algoritmos e Programação Aula 9 Subalgoritmos, funções e passagem de parâmetros Profa. Marina Gomes [email protected] 22/06/2017 Engenharia de Computação - Unipampa 1 Modularização Facilita a
DCC / ICEx / UFMG. O Jogo SimulES. Eduardo Figueiredo.
DCC / ICEx / UFMG O Jogo SimulES Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo O Jogo SimulES Simulação de Engenharia de Software http://www.dcc.ufmg.br/~figueiredo/simules/ O jogo foi fortemente
2 Fluxos no Ciclo de Vida do Processo Unificado. O Processo Unificado consiste da repetição de uma série de ciclos durante a vida de um sistema.
Processo Unificado Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Ciclo de Vida - Fluxos Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre
MODELAGEM FUNCIONAL USANDO DIAGRAMA DE FLUXO DE DADOS. Professora: Fabíola Gonçalves.
UFU Universidade Federal de Uberlândia MODELAGEM FUNCIONAL USANDO DIAGRAMA DE FLUXO DE DADOS Professora: Fabíola Gonçalves. AGENDA Modelos de Sistema Modelo Essencial de um Sistema Diagrama de Fluxo de
Levantamento, Análise e Gestão Requisitos. Aula 05
Levantamento, Análise e Gestão Requisitos Aula 05 Agenda Requisitos de Software Tipos de Requisitos: funcionais e não-funcionais Definição do escopo do problema Análise do problema Compreensão da necessidade
Programação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Formação Técnica em Administração. Modulo de Padronização e Qualidade
Formação Técnica em Administração Modulo de Padronização e Qualidade Competências a serem trabalhadas ENTENDER OS REQUISITOS DA NORMA ISO 9001:2008 E OS SEUS PROCEDIMENTOS OBRIGATÓRIOS SISTEMA DE GESTÃO
Aula 11 Assertivas. Alessandro Garcia LES/DI/PUC-Rio Abril 2016
Aula 11 Assertivas Alessandro Garcia LES/DI/PUC-Rio Abril 2016 Especificação Objetivo dessa aula Discutir como especificar funções Apresentar assertivas de entrada, de saída e estruturais como um instrumento
