Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software

Documentos relacionados
Ciência da Computação ENGENHARIA DE SOFTWARE. Planejamento e Gerenciamento

Ciência da Computação ENGENHARIA DE SOFTWARE. UML-Unified Modeling Language Linguagem de Modelagem Unificada

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Riscos

Ciência da Computação ENGENHARIA DE SOFTWARE. Recursos e Cronograma

Ciência da Computação ENGENHARIA DE SOFTWARE. Teste de Software

APRESENTAÇÃO DA DISCIPLINA QUALIDADE DE SOFTWARE. Isac Aguiar isacaguiar.com.br

Ciência da Computação ENGENHARIA DE SOFTWARE. Métricas e Estimativas do Projeto

:: aula 11. :: Diagrama de Seqüência e Protótipos. :: Olá! Nesta aula, continuaremos a 4ª fase do Projeto Desenho.

Ciência da Computação ENGENHARIA DE SOFTWARE. Capítulo 1 Introdução

UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC CENTRO DE EDUCAÇÃO SUPERIOR DO ALTO VALE DO ITAJAÍ CEAVI DIREÇÃO DE ENSINO DEN PLANO DE ENSINO

Objetivos. Requisitos de Software. Tipos de Requisitos. O que é um requisito? Requisitos Funcionais e Não- Funcionais. Requisitos Funcionais

Engenharia de Software Processo de Desenvolvimento de Software

Prova de Conhecimento para Consultores de Implementação MPS.BR INSTRUÇÕES

Requisitos. Professor Gabriel Baptista ( gabriel.baptista@uninove.br ) ( )

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC

Qualidade de Software

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br

CURSO: Tecnologia em Análise e Desenvolvimento de Sistemas SÉRIE: 3º Semestre TURNO: Noturno DISCIPLINA: ANÁLISE DE SISTEMAS ORIENTADA A OBJETOS

PLANO DE ENSINO E APRENDIZAGEM CURSO: Tecnologia em Análise e Desenvolvimento de Sistemas

O Impacto da Engenharia de Requisitos no Processo de Métricas. Fátima Cesarino CAIXA

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Análise de Requisitos Conceitos

Planejamento de Projetos. Professor Gabriel Baptista ( gabriel.baptista@uninove.br ) ( )

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Diagrama de Caso de Uso e Diagrama de Sequência

Projeto de Sistemas I

Proposta de um método para auditoria de projetos de desenvolvimento de software iterativo e incremental

LEVANTAMENTO DE REQUISITOS. Lílian Simão Oliveira

Curso Superior de Tecnologia em Banco de Dados e Sistemas para Internet Disciplina: Projeto Integrador III Prof.: Fernando Hadad Zaidan

ENGENHARIA DE SOFTWARE I

Requisitos de Software

ISO Aécio Costa

Fundamentos em Teste de Software. Vinicius V. Pessoni

1. Desenvolver o software iterativamente. Um pouco de reflexão: Acabou aí? 31/08/2010

Documento de Requisitos

Engenharia de Requisitos Estudo de Caso

Termo de Abertura Sistema de Vendas de Pizzas Online (PizzaWeb) - Versão 1.0

MÉTRICAS DE SOFTWARE

MODELOS DE PROCESSO. Isac Aguiar isacaguiar.com.br

A Linguagem de Modelagem Unificada (UML)

Análise e Projeto Orientados a Objetos Aula IV Requisitos. Prof.: Bruno E. G. Gomes IFRN

2 Diagrama de Caso de Uso

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite (81 )

Palavras-Chaves: engenharia de requisitos, modelagem, UML.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Processos de Design de IHC (Parte II)

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas.

Implantação de um Processo de Medições de Software

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

UNIVERSIDADE DE MOGI DAS CRUZES Centro de Ciências Exatas e Tecnológicas

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Engenharia de Sistemas de Computador

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: Análise de Sistemas I Conteúdo: Conceitos de Análise de Sistemas Aula 01

Engenharia de Software II

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes

QUALIDADE DE SOFTWARE

Padronização de Documentação de Sistemas. Projeto a ser desenvolvido no âmbito da Gerência de Sistemas/GGTIN e ANVISA

Processos de Desenvolvimento de Software

Padrões de Qualidade de Software e Métricas de Software

Engenharia de Software. Análise de Requisitos de Sistema e de Software. Análise de requisitos

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

Engenharia de Software

Análise do processo de desenvolvimento e manutenção do Sistema de Informação e Gestão Acadêmica (SIGA) com foco no Nível G do MPS.

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

Pós Graduação Engenharia de Software

PROFESSOR: CRISTIANO MARIOTTI

Dicionário da EAP - Software FarmaInfor

GERÊNCIA DE CONFIGURAÇÃO. Isac Aguiar isacaguiar.com.br

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Engenharia de Requisitos

Conceitos Fundamentais de Qualidade de Software

Etapas da Elaboração de um Projeto de Banco de Dados

Ricardo Roberto de Lima UNIPÊ APS-I. Históricos e Modelagem Orientada a Objetos

Introdução à Engenharia de Software

Engenharia de Software

Fase 1: Engenharia de Produto

Rede TSQC / SOFTEX Workshop de Aquisição de software Guia de Aquisição MPS.BR

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

2.12- Criação/Implantação de Processo de Garantia da Qualidade para Empresas de Software de Pequeno Porte

Cargo Função Superior CBO. Tarefas / Responsabilidades T/R Como Faz

Engenharia de Requisitos

Plano de Trabalho Docente Ensino Técnico

APOO Análise e Projeto Orientado a Objetos. Requisitos

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software

CONSULTA AO MERCADO RFI REQUEST FOR INFORMATION CONSOLIDAÇÃO DE DÚVIDAS APRESENTADAS

Engenharia de Software

Melhoria de Processo de Software baseado no Modelo MPS.BR nível G - Um Estudo de Caso

Requisitos. Sistemas de Informações

Um Framework para definição de processos de testes de software que atenda ao nível 3 do TMM-e

Transcrição:

Ciência da Computação ENGENHARIA DE SOFTWARE Análise dos Requisitos de Software Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com

Roteiro Introdução Tipos de requisitos Atividades Princípios da Análise Especificação Análise Estruturada 2/16

Introdução Os requisitos de software é fundamental para o sucesso do projeto de software Análise de requisitos envolve um trabalho de descoberta, refinamento, modelagem e especificação das necessidades relativos ao software que se deseja desenvolver. Tanto o cliente quanto o desenvolvedor desempenham um papel de grande importância. Permite que o engenheiro de sistemas especifique as necessidades do software em termos de funções e desempenho Permite ao engenheiro de software (ou analista), a análise dos requisitos e a construção de modelos do processo, dos dados e dos aspectos comportamentais que serão tratados pelo software 3/16

Tipos de requisitos Requisitos dos usuários: declarações sobre as funções que o sistema deve fornecer e as restrições sobre as quais deve operar Escrito para os gerentes do cliente, usuários finais do sistema, gerentes do fornecedor e desenvolvedores Requisitos do Sistema: estabelecem detalhadamente as funções e restrições do sistema (funcionalidades específicas do sistema, utiliza linguagem natural,notações gráficas ou métodos formais), muitas vezes servem de contrato entre o cliente e o desenvolvedor. Escritos para os usuários finais do sistema e desenvolvedores Especificação do Projeto de software: (fusão dos requisitos do usuário e do sistemas com maiores detalhes de implementação). Escrito para os desenvolvedores do software 4/16

Requisitos Funcionais (funcionalidades específicas, completeza e consistência); Descreve a funcionalidade do sistema detalhadamente, suas entradas, saídas, exceções, etc. Todas as funções requeridas pelo usuário devem ser definidas Não-funcionais (objetivos gerais, difícil de serem verificados e quantificados). número de transações processadas por segundo, o tamanho do sistema em bytes, a quantidade de memória necessária em bytes, o tempo de treinamento necessário para poder operá-lo, o tempo médio de falha, o tempo de reinício após uma falha e outros. 5/16

Atividades Análise da Informação (estuda o plano, revisa o escopo, interação do cliente projetista e desenvolvedores); Avaliação (informações, funções, comportamento e interfaces) e Síntese (uma ou mais soluções); Modelagem (elaborar modelo (protótipo) para melhor compreensão das informações e controle); Especificação dos Requisitos e Revisão (elaborar documento com todas as atividades); 6/16

Processos de Comunicação Desenvolvimento de software envolve: clientes, desenvolvedores, usuários e gerentes; Dificuldades gerais da análise de requisitos: os clientes não entendem de software ou de seu processo de desenvolvimento; o desenvolvedor não entende do sistema no qual o software vai executar. O gerente de software deve preencher esta lacuna. Realizando as seguintes ações: Ajudar no diálogo entre clientes e/ou usuários e desenvolvedor; Identificar e diferenciar expectativas e necessidades; Extrair boas e consistentes informações. 7/16

Princípios da Análise Domínio da Informação (dados ou eventos, entrada processamento saída). Existem três pontos de vista: Fluxo (transformações); Conteúdo (semântica); Estrutura (sintaxe). Modelagem representar informações, funções e comportamentos em uma notação gráfica (o que o software faz!!!); 8/16

Princípios da Análise (cont.) Visão Essencial (funções e informações sem detalhes de processamento). Por exemplo: ler estado do sensor; Vantagem: deixa em aberta a possíveis alternativas de implementação. Visão de Implementação (funções e informações do mundo real, acomodar detalhes de implementação).por exemplo: de que forma o sensor detecta a invasão; Vantagem: auxilia na definição de restrições. 9/16

Especificação Representado por um documento. Nas três seguintes formas: linguagem natural, gráfica ou protótipo; O documento deve mostrar aspectos funcionais, de informação e comportamentais; Para ser eficiente deve considerar os seguintes princípios: Separar Funcionalidade e Implementação Especificar usando linguagem orientada a processos; Representar ambiente, sistema e software; Mostrar a visão que os usuários terão do sistema; Permitir alguma validação; Deve ser localizada e fracamente acoplada. 10/16

Especificação (cont.) 11/16

Revisão da Especificação Realizado pelo cliente e desenvolvedor; A revisão é feita primeiramente de forma geral e depois de forma detalhada; Depois de completar a revisão, um contrato de software deve ser assinado; Solicitações de modificações, depois deste que o contrato é assinado, vai acarretar custo e ajustes no cronograma; Dificuldades: Testar a especificações; Avaliar impacto de modificações no requisito; 12/16

Análise Estruturada Desenvolvida nos meados dos anos 70 por Gane, Sarson e De Marco; Baseada em uma Notação Gráfica para representar dados e os processos que os modificam; Objetivos: Descrição (o que o cliente exige); Base para criar projeto de software; Definir requisitos. Elementos Básicos: Dicionário de dados; Diagrama Entidade-Relacionamento; Diagrama de Fluxo de dados; 13/16

Estudo de Caso Estudar o artigo Medição de Pontos por Função a Partir da Especificação de Requisitos Abstract. Neste trabalho apresentaremos uma proposta para medição de Pontos por Função a partir da especificação de requisitos expressa em casos de uso, notação UML (Unified Modeling Language). Com esta medição torna-se disponível uma métrica confiável na fase de especificação de requisitos do processo de desenvolvimento de software. Esta proposta visa enfatizar a importância da especificação de requisitos para o trabalho de medição de sistemas, minimizando o esforço dos líderes de projeto, obtendo uma compreensão intuitiva do porte do projeto em termos de Pontos por Função de maneira simples e dinâmica. Verifica-se que caso de uso e pontos por função podem ser usados juntos efetivamente para alcançar sucesso no gerenciamento dos requisitos e do projeto. 14/16

Bibliografia BIBLIOGRAFIA BÁSICA: PRESSMAN, R.S. Engenharia de Software. Mc Graw Hill, 5ª Edição 2001. SOMMERVILLE,I. Engenharia de Software. Addison Wesley, 6ª Edição 2003. REZENDE,D.A. Engenharia de Software e Sistemas de Informação. Brasport, 2ª edição. BIBLIOGRAFIA COMPLEMENTAR: WEBER,K.C. et all. Qualidade e produtividade em Software. Makron Books, 1999. ROCHA,A.R.C et all; Qualidade de Software. Editora Linarth, 1999. Anais do SBES - Simpósio Brasileiro de Engenharia de Software. SEI. SOFTWARE ENGINEERING INSTITUTE. CMMI for Development (CMMI-DEV), Version 1.2, Technical report CMU/SEI-2006-TR-008. Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2006. SOFTEX. MPS.BR - Melhoria de Processo do Software Brasileiro. Guia Geral, versão 1.2. 2007. ABNT ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISO/IEC 12207 Tecnologia de informação - Processos de ciclo de vida de software. Rio de Janeiro, 1998. ISO/IEC - The International Organization for Standardization and The International Electrotechnical Commission, ISO/IEC TR 15504 Software Process Assessment. 1998. 15/26

Ciência da Computação ENGENHARIA DE SOFTWARE Análise dos Requisitos de Software Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com