Introdução à Engª de Requisitos

Documentos relacionados
Análise e Conc epç ão de Sist em as de Inform aç ão,qwurgxomrj(qj GH5HTXLVLWRV. Adaptado a partir de Gerald Kotonya and Ian Sommerville

Parte I Requirement Engineering. Gestão de Projectos Informáticos. Gestão do Âmbito (Scope Management) Requirement Engineering.

engenharia de requisitos

Padrão para Especificação de Requisitos de Produto de Multimídia

Engenharia de Requisitos

1. Conceitos Fundamentais

Laboratório de Desenvolvimento de Software

Requisitos de Software

Relatório de Especificação de Requisitos 1. Introdução

Engenharia de Requisitos

2

Documento de Visão versão 1.0 Desenvolvimento do Sistema de Gestão de Documentos Doc Manager Cliente: São José Agroindustrial Representante do

Fábio Amado João Maio 33306

Engenharia de Requisitos 1 - Introdução

Requisitos de Sistemas

Definição. Arquitecturas de Software. Modelo de Referência. Estilo Arquitectural. Arquitecturas de Software

Ciclo de vida: fases x atividades

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software

Introdução aos Sistemas Integrados de Gestão de Bibliotecas

Introdução à Análise e Projeto de Sistemas

Sumário. Processo de Desenvolvimento. Objectivos. Problemas. Engenharia de Software. Caracterização. Técnicas Avaliação e Validação Exemplo Conclusões

UnoTech Soluções em Histórico da Revisão Data Versão Descrição Autor 27/05/ 1.0 Construção do Documento Carlos GG Flor Página 2

Análise de sistemas. Engenharia de Requisitos

Tópicos da Aula. O que é anunciado. Falha de Comunicação no Desenvolvimento de Software. Engenharia de Software: Conceitos Fundamentais

Introdução a Teste 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

Processo de desenvolvimento de sistema de informação - DSI

2 o Ciclo de Engenharia Informática, 1 o Ano, 1 o Semestre Apontamentos Teóricas - Engenharia de Requisitos 2016/2017

Eng. de Requisitos: Atividades. Engenharia de Requisitos. Eng. de Requisitos: Processo. O Documento de Requisitos. Stakeholders. Estudo de Viabilidade

Processos de software

1. Definição de Processo Comissionamento

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave

Análise e Projeto de Sistemas

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2016

Plano de testes. Norma ANSI/IEEE para Documentação de Teste de Software define plano de testes como:

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

MODELAGEM DE SISTEMA Apresentação

Desenho de Software. Sumário

O Fluxo de Requisitos

3. Engenharia dos requisitos de software

Análise e Projeto de Software

Documento de Requisitos*

Manutenção de Software

ENGENHARIA DOS REQUISITOS

3. análise e negociação de requisitos

Engenharia de Software

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

ENGENHARIA DE SOFTWARE. Aula 03 Processos de Software

Análise e Modelação de Sistemas

Engenharia de Software 2006/2007

Introdução a Engenharia de Software. Professor Joerllys Sérgio

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

Documentação de Software. Simone Vasconcelos

Princípios da Engenharia de Software aula 03

Versão: 1.0 Doc Manager

Levantamento, Análise e Gestão Requisitos. Aula 05

Reuso de Software Aula Maio 2012

Curso de Sistemas de Informação. Karla Donato Fook DESU / DAI

Unidade 1 Introdução à Análise de Sistemas. Objectivos

Requisitos de Software

Análise de Requisitos

Normas ISO:

Elicitação de Requisitos

21/09/2012. Elicitação de Requisitos. Projeto de Interface Homem- Máquina. Prof. Esp. MBA Heuber G. F. Lima. Técnicas etipos de Requisitos

Escopo: PROCESSOS FUNDAMENTAIS

Teste de Software. Competência: Entender as técnicas e estratégias de testes de Software

Engenharia de Software ENGENHARIA DE REQUISITOS

Engenharia de Software. Ficha T. Prática nº 6

Introdução ao RUP Rational Unified Process

Software Requirements Specification

Engenharia de Software

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Arquitecturas de Software Enunciado de Projecto

Aula 4 Engenharia de Requisitos

Léxico Ampliado da Linguagem. (resumo) jcspl. Departamento de Informática PUC-Rio Rio de Janeiro, Brasil. R. Marquês de São Vicente 225

Unidade VI. Inspeção de software

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

Engenharia de Software

Guia do Processo de Teste Metodologia Celepar

Desenho e Registo Digital de Imagem - módulo 7. Desenho e Registo Digital de Imagem - professor Ricardo Ramalho

elaboração da aplicação, estamos dependentes do software usado pelo Helpdesk. Por exemplo, como usam activamente o sistema operativo Linux,

ABD Arquivos e Bibliotecas Digitais

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.

Análise de Requisitos. Tema 4. Análise de Requisitos Profa. Susana M. Iglesias

Curso Especializado de UX

Definições (II) Page 3

Definições. Definições (III) Definições (II)

Apresentação da plataforma.net. Ambientes Virtuais de Execução. Semestre de Verão, 12/13

Analista de Sistemas S. J. Rio Preto

Simulado para CFPS. Questões de Propósito, Tipo e Fronteira. 1. Um dos objetivos da Análise de Pontos de Função é:

Engenharia de Requisitos

Técnicas para Reutilização de Software

Engenheiros de software (algumas vezes conhecidos no mundo da TI como engenheiros de sistemas ou analistas ) e outros interessados no projeto

CASOS DE TESTE PALESTRANTE: MARCIA SILVA

ENGENHARIA DE SOFTWARE. Introdução

Atividades de Desenvolvimento. Desenvolvimento de Software. Especificação de Requisitos. Atividades de Desenvolvimento. Especificação de Requisitos

PROJETO DE PROGRAMAS. Projeto de Programas PPR0001

Transcrição:

Análise e Concepção de Sistemas de Informação Introdução à Engª de Requisitos Adaptado a partir de Gerald Kotonya and Ian Sommerville 1 Objectivos Introduzir as noções requisitos de sistema e processo de engª de requisitos Enquadrar a engª de requisitos na área mais ampla da engª de sistemas A importância do documento de requisitos 2

Requisitos de Sistema Define o que o sistema é suposto realizar e as restrições sobre as quais é requerido operar E.g. (sistema de Gestão de uma Biblioteca) O sistema deve manter registos de todos os materiais da biblioteca, incluindo livros, jornais, revistas, cassetes de video e de audio, relatórios, discos de computadores, CDs e DVDs. O sistema deve permitir os utilizadores pesquisarem qq item por título, autor ou ISBN. O sistema deve providenciar uma interface Web O sistema deve suportar pelo menos 20 transações por segundo As principais funcionalidades do sistema, disponíveis para o público, devem poder ser apresentadas em menos de 15 minutos 3 Tipos de requisitos Requisitos muito gerais que definem em termos gerais o que o sistema deve fazer Requisitos funcionais que definem parte da funcionalidade do sistema Requisitos de implementação que definem como o sistema deve ser implementado Requisitos de desempenho que especificam mínimos de desempenho aceitáveis para o sistema Requisitos de usabilidade que especificam o máximo tempo aceitável para demonstrar o uso do sistema 4

Exercício Explicar os problemas que poderiam surgir nos seguintes requisitos da especificação de um sistema de gestão de biblioteca O sistema deve providenciar uma interface gráfica fácil de usar (easy-to-use) baseada em MS Windows 95 Utilizadores acreditados devem ter acesso privilegiado aos mecanismos do catálogo do sistema O sistema de software deve ser implementado usando módulos separados para catalogação, acesso de utilizadores e arquivo 5 Problemas de requisitos Os requisitos não reflectem as necessidades reais do cliente Os requisitos são inconsistentes e/ou incompletos É caro fazer alterações aos requisitos depois destes terem sido acordados Dificuldade de comunicação e compreensão entre clientes, analistas dos requisitos, e engs que desenvolvem e mantêm o software 6

FAQS sobre requisitos O que é um requisito? Uma condição sobre um serviço ou restrição de um sistema O que é engª de requisitos? O processo que envolve o desenvolvimento de requisitos de sistema Quanto custa a engª de requisitos Cerca de 15% do custo de desenvolvimento do sistema O que é um processo de engª de requisitos? Um conjunto estruturado de actividades que envolve o desenvolvimento de requisitos de sistema 7 FAQS sobre requisitos (cont.) O que acontece qdo os requisitos estão errados? Os sistemas são entregues atrasados, sem qualidade e sem responder às necessidades dos clientes. Existe algum processo de engª de requisitos ideal? Não! O processo tem de ser configurada às necessidades de cada organização. O que é um documento de requisitos? É a definição formal dos requisitos de um sistema Quem são os stakeholders de um sistema? Qualquer pessoa afectada de alguma forma pelo sistema. 8

FAQS sobre requisitos (cont.) Qual a relação entre requisitos e desenho (design)? Requisitos e desenho são na prática misturados. Embora na teoria devam ser vistos como processos separados, na prática tal é impossível/dificil de se concretizar... O que é a gestão de requisitos? O processo que envolve a gestão de alterações de requisitos 9 Classes de sistemas (informáticos) Sistemas de informação Principalmente associados a processamento de informação mantido em alguma(s) base(s) de dados. E.g., sistema de facturação, gestão de clientes,... Sistemas embebidos (embedded systems) Sistemas onde o software é usado como controlador de algum tipo de hardware geral E.g., s.o. para telemóvel Sistemas de comando e controlo Essencialmente uma combinação de sistemas de informação e sistemas embebidos, onde computadores especializados providenciam informação, a qual é recolhida e armazenada para tomada de decisões E.g., SCC de uma rede de gás 10

Propriedades Emergentes São propriedades de um sistema vistas como um todo Apenas têm sentido quando os seus vários sub-sistemas são integrados Exemplos Reliability Maintainability Performance Usability Security Safety 11 Processo de Engª de Sistemas System requirements engineering System validation Architectural design System integration Requirements partitioning Sub-system development Software requirements engineering 12

Documento de Requisitos É um documento formal usado para registar/comunicar os requisitos dos/aos stakeholders Descreve: Os serviços e funções que o sistema deve providenciar As restrições nas quais o sistema deve funcionar Todas as propriedades do sistema, i.e., propriedades emergentes Definições de outros sistemas, com o qual o sistema alvo deverá comunicar e ou integrar-se Informação sobre o domínio de aplicação do sistema Restrições sobre o(s) processo(s) usado para desenvolver o sistema Descrição das plataformas computacionais (hardware, redes,...) sobre as quais o sistema deverá correr 13 Documento de Requisitos Adicionalmente Deve incluir um capítulo introdutório que providencia uma visão geral do sistema, as necessidades de negócio suportadas, e um glossário que descreve a terminologia usada 14

Utilizadores do Documento de Requisitos Clientes do sistema Especificam os requisitos e/ou leem-nos de para validar da sua adequação às necessidades Gestores de projecto Usam o doc de requisitos para planear os custos e prazos, e para planear o processo de desenvolvimento adequado Engs de sistema Usam os requisitos para poderem entender o sistema a desenvolver Engs de teste do sistema Usam os requisitos para desenvolver teste de validação Engs de manutenção do sistema Usam os requisitos para o melhor compreender 15 Estrutura do Documento de Requisitos O standard IEEE/ANSI 830-1993 propoe uma estrutura para docs de requisitos de software Introdução 1.1 Propósito do doc de requisitos 1.2 Contexto do produto 1.3 Definições, acrónimos e abreviaturas 1.4 Referências 1.5 Visão geral do documento IEEE/ANSI 830-1993 16

Estrutura do Documento de Requisitos 2. Descrição geral 2.1 Perspectiva do produto 2.2 Funções do produto 2.3 Características dos utilizadores 2.4 Restrições gerais 2.5 Assunções e dependências 3. Requisitos específicos Envolve requisitos funcionais, não-funcionais e de interface 4. Apêndices Índice IEEE/ANSI 830-1993 17 Estrutura do Documento de Requisitos O standard pode/deve ser adaptado... É um standard genérico para ser aplicado a uma larga gama de docs de requisitos de software Em geral, nem todos os aspectos referidos no standard deverão ser aplicados/desenvolvidos Cada organização deverá adaptar o standard tendo em conta o tipo de sistemas desenvolvidos,... IEEE/ANSI 830-1993 18

Estrutura do Documento de Requisitos Exemplo (1/3): Adaptação do standard à organização MaisSoft! Prefácio Deverá definir a audiência do doc e descrever a história das suas versões incluindo as razões de se criar cada nova versão e um sumário das alterações realizadas em cada versão. Introdução Deverá definir o produto, a sua utilização expectável e apresentar uma visão geral da sua funcionalidade Glossário Deverá definir todos os termos técnicos (e.g., específicos do domínio) e abreviações usados no doc Requisitos gerais de utilizadores Definição dos requisitos da perspectiva dos utilizadores do sistema. Poderá ser descrito por combinação de texto com diagramas... 19 Estrutura do Documento de Requisitos Exemplo (2/3): Adaptação do standard à organização MaisSoft! Arquitectura do sistema Descrição da visão geral e alto nível da arquitectura do sistema, ilustrando a distribuição dos componentes, aplicações, plataformas computacionais, etc. Especificação hardware (Capítulo opcional) Descrição do hardware controlado pelo software (e.g., em sistemas embebidos ou sistemas de CC). Pode ser omitido em SI... Descrição detalhada do software Descrição detalhada da funcionalidade expectável do software do sistema. Pode incluir detalhes de algoritmos específicos, desenho de classes,... Numa aproximação de prototipagem este capítulo pode ser omitido. 20

Estrutura do Documento de Requisitos Exemplo (3/3): Adaptação do standard à organização MaisSoft! Requisitos de fiabilidade, desempenho,... Descrição dos requisitos de fiabilidade, desempenho,... que o sistema deverá providenciar. Estes requisitos deverão estar relacionados com os requisitos dos utilizadores. Poderão ser desenvolvidos os seguintes apêndices Especificação de interfaces de hardware Componentes de software que podem ser reusadas na implementação do sistema Especificação da estrutura de dados Modelo detalhado de objectos/classes Índice 21 Escrita de Requisitos... Os requisitos são geralmente escritos em língua natural complementados por diagramas, tabelas e equações Problemas com requisitos Escrever BEM não é trivial!! Quem escreve assume que os leitores têm o conhecimento do domínio... Quem escreve assume que os leitores têm a capacidade de entender adequadamente os diagramas e fórmulas... Terminologia usada nem sempre é consistente ao longo do doc 22

Escrita de Requisitos... Observações / sugestões... Os requisitos serão lidos muito mais vezes que escritos!! Deve-se investir tempo em escrever requisitos legíveis e claros... Não assumir que todos os leitores dos requisitos têm o mesmo background e usam a mesma terminologia. Planear e reservar tempo para rever, reformular e melhorar o doc de requisitos... 23 Escrita de Requisitos... Observações / sugestões... Definir templates normalizados para descrever requisitos Usar linguagem natural de forma consistente e concisa Usar diagramas apropriadamente Complementar linguagem natural com outras descrições de requisitos (e.g., diagramas, fotografias, mapas) Especificar requisitos quantitativamente!! 24

Resumo dos Pontos-Chave Os requisitos definem o que o sistema deve providenciar (ou como deve funcionar) e que restrições deverão ser suportadas Os problemas nos requisitos implicam prazos ultrapassados e pedidos de alterações após o sistema se encontrar em operação... A engª de requisitos envolve o levantamento, análise e documentação dos requisitos de um sistema 25 Resumo dos Pontos-Chave A engª de sistemas diz respeito a sistemas vistos como um todo, o que inclui hardware, software e processos operacionais O doc de requisitos é a especificação formal dos requisitos dos clientes, engenheiros e gestores O doc de requisitos deverá incluir uma visão geral do sistema, glossário, requisitos funcionais, restrições operacionais,... 26

Questões para discussão... Qual a necessidade de incluir, por vezes, no doc de requisitos informação de desenho de um sistema? Listar os possíveis stakeholders de um sistema de gestão de uma biblioteca. Sugerir que casos de utilização os vários stakeholders identificados, podem realizar sobre o sistema de gestão de uma biblioteca. 27 Questões para discussão... Re-escreva os seguintes requisitos de uma forma mais quantitativa (usar qualquer métrica que seja conveniente) O sistema da biblioteca deve ser fácil de usar (easy-to-use) O sistema da biblioteca deve providenciar serviços fiáveis a todos os tipos de utilizadores O sistema da biblioteca deve providenciar uma resposta rápida a todos os utilizadores que peçam informação sobre livros 28