Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.



Documentos relacionados
Requisitos de Software

Requisitos do usuário, do sistema e do software [Sommerville, 2004]

O Processo de Engenharia de Requisitos

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

Elicitação de requisitos e análise

Professor: Curso: Disciplina: Aula 4-5-6

Requisitos de Software

Engenharia de Software

Engenharia de Software

LEVANTAMENTO DE REQUISITOS. Lílian Simão Oliveira

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

Engenharia de Software II

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

Requisitos de Software

Engenharia de Requisitos de Software

Projeto de Sistemas I

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

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

Gerenciamento de Requisitos Gerenciamento de Requisitos

Modelos de Sistemas Casos de Uso

Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Diagrama de Casos de Uso. Componentes do Diagrama

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

04/07/2015 UML. Prof. Esp. Fabiano Taguchi DEFINIÇÃO DE REQUSIITOS

Casos de uso Objetivo:

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

Qualidade de Software. Qualidade de Software. Adequado à Especificação. Alguns Atributos de Qualidade. Equipe de Qualidade

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

GERÊNCIA DE PROJETOS DE SOFTWARE. Introdução

Modelos de Sistemas. Leitura: Cap7: Sommerville; Cap: 7-8 Pressman; Cap3: Ariadne

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

Engenharia de Requisitos

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

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

ELABORAÇÃO DE PROJETOS

Fundamentos de Teste de Software

Atividades da Engenharia de Software ATIVIDADES DE APOIO. Atividades da Engenharia de Software. Atividades da Engenharia de Software

Introdução. Escritório de projetos

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Engenharia de Requisitos

MODELAGEM DE SISTEMAS

Resolução da lista de exercícios de casos de uso

Análise de Sistemas. Contextualização. O Sucesso. Aula 4. Instrumentalização. Aula 4. Prof. Emerson Klisiewicz. Clientes satisfeitos

MODELAGEM DE SISTEMA Apresentação

UML & Padrões Aula 3. UML e Padrões - Profª Kelly Christine C. Silva

Qualidade de Software

rosefib.webnode.com.br

Gerenciamento de Projetos Modulo VIII Riscos

Gerenciamento de Qualidade. Paulo C. Masiero Cap SMVL

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP

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

Introdução à. Engenharia de Software. Givanaldo Rocha de Souza

Processo de Desenvolvimento de Software

Gerenciamento de Requisitos

agility made possible

Gestão do Risco e da Qualidade no Desenvolvimento de Software

Técnicas de Elicitação de Requisitos

UNEMAT SISTEMA DE INFORMAÇÃO (SI) Professora: Priscila Pelegrini

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

Exercícios Diagrama de Casos de Uso. Disciplina: Engenharia de Requisitos

UML Unified Modeling Language. Professor: André Gustavo Bastos Lima

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

4.1. UML Diagramas de casos de uso

3 Qualidade de Software

Introdução. Leitura: Sommerville Pressman. UML 2 - Uma Abordagem Prática

Processos de gerenciamento de projetos em um projeto

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE

Casos de Uso. Professor MSc Wylliams Barbosa Santos wylliams.wordpress.com Laboratório de Programação

Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização

Requisitos. Sistemas de Informações

PROJETO (OU DESIGN) DO SOFTWARE Diagrama de Estrutura

Qualidade de Software. Prof.: Ivon Rodrigues Canedo. PUC Goiás

Engenharia de Software 2012/3 Aula 4 Engenharia de Requisitos

Introdução ao Modelo de Referência para melhoria do processo de software (MR mps) Projeto: mps Br melhoria de processo do software Brasileiro

Qualidade de Software

Engenharia de Requisitos Estudo de Caso

Engenharia de Software III

Sistemas Operacionais. Prof. André Y. Kusumoto

Engenharia de Software Tema da Aula Definição e Especificação de Requisitos I - Conceitos. Exercício

Modelagem de Processos de Negócio Aula 5 Levantamento de Processos. Andréa Magalhães Magdaleno andrea@ic.uff.br

Componentes do modelo ambiental

Análise de Tarefas. Análise Hierárquica de Tarefas

Unidade II MODELAGEM DE PROCESSOS

A SEGUIR ALGUMAS DICAS PARA O DESENVOLVIMENTO DE UM PROJETO CIENTÍFICO

DESENVOLVENDO O SISTEMA

O Uso da Inteligência Competitiva e Seus Sete Subprocessos nas Empresas Familiares

3. Fase de Planejamento dos Ciclos de Construção do Software

Roteiro SENAC. Análise de Riscos. Planejamento do Gerenciamento de Riscos. Planejamento do Gerenciamento de Riscos

Atendimento de Demandas CTIC

Fase de Análise de Requisitos. Engenharia de Software ANÁLISE DE REQUISITOS. Tipos de Requisitos. Tipos de requisitos. Tipos de requisitos

Curso de Especialização em Tecnologia da Informação. Engenharia de Software

Banco de Dados Orientado a Objetos

Mauricio Barbosa e Castro

ATIVIDADES PRÁTICAS SUPERVISIONADAS

Simulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr

Transcrição:

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 de viabilidade Elicitação e análise de Validação dos Que é são? Descrições De serviços fornecidos pelo De restrições destes serviços Podem ser especificado formalmente Engenharia de Processo de descobrir, analisar, documentar e verificar Tipos de Classificação Funcionais Não Funcionais Visão dos Usuário do Sistema Funcionais Classificação de Funcionais Não Funcionais Descrevem explicitamente as funcionalidades e serviços do Documenta como o deve reagir a entradas específicas como deve se comportar em determinadas situações o que o não deve fazer

Atributos dos Funcionais Completude Todas os serviços devem estar definidos Consistência Os não devem ter definições contraditórias Na prática é quase impossível atingir completude e consistência dos Exemplos de Funcionais O usuário pode pesquisar todo ou um subconjunto do banco de dados O deve oferecer telas apropriadas para o usuário ler documentos armazenados Cada pedido deve ser associado a um identificador único (PID), o qual o usuário pode copiar para a área de armazenamento permanente da conta Ambiguidades em A imprecisão na especificação de é motivo de vários problemas O desenvolvedor tende a interpretar o requisito da maneira mais fácil de implementar O deve oferecer telas apropriadas... O que são telas apropriadas? Não-Funcionais (RNF) Definem propriedades e restrições do Exemplos: segurança, desempenho, espaço em disco Podem ser do todo ou de partes do não-funcionais podem ser mais críticos que funcionais Se não satisfaz, o é inútil Classificação de RNF do Produto Especificam o comportamento do software (ex.: desempenho) Organizacionais Consequência de políticas e procedimentos das empresas (ex.: padrões do cliente) Externos Derivados do ambiente ou fatores externos ao (ex.: legislação) Exemplos de RNF do Produto A interface do usuário deve ser implementada como simples HTML Organizacionais Todos os documentos entregues devem seguir o padrão de relatórios XYZ-00 Externos Informações pessoais do usuário não podem ser vistas pelos operadores do

não funcionais Verificação de RNF do produto organizacionais externos Às vezes são de difícil verificação eficiência facilidade de uso confiabilidade portabilidade entrega interoperabilidade implementação de padrões éticos legais Idealmente, não-funcionais devem ser mensuráveis Após a implementação, estes podem ser testados objetivamente desempenho de espaço privacidade segurança Métricas de RNF Velocidade Transações processadas por segundo Tempo de resposta Tempo de atualização de tela Facilidade de uso Tempo gasto em treinamento Número de frames de ajuda Métricas de RNF Confiabilidade Tempo médio para falhar Probabilidade de indisponibilidade Taxa de ocorrência de falhas Disponibilidade Robustez Tempo de reinício após uma falha Porcentagem de eventos que causam falhas Alguns Problemas de RNF A especificação quantitativa de não funcionais é difícil Visões de Ocorre mistura de funcionais e não funcionais não funcionais podem conflitar com outros (funcionais ou não) Usuário do Sistema

Visões da Especificação É interessante gerar diferentes visões da especificação de Comunicação com diferentes tipos de interessados (stakeholders) do Usuário Gerentes Usuários finais Engenheiros do cliente Fornecedores Sistema Analistas do Arquitetos de Desenvolvedores... Usuário Descreve as funções e restrições do de forma abstrata Inteligível pelo usuário / cliente Ponto de vista das necessidades da empresa Não indica uma solução Escrito em linguagem natural com diagramas simples (ex. tabelas) Alguns Problemas Falta de clareza Pode ser difícil uma linguagem precisa e não ambígua Confusão de pode estar misturados com informações do projeto Fusão de Diversos expressos juntos Diretrizes Gerais de Redação Adotar um formato padrão e usá-lo em todas as definições de Usar a linguagem de forma simples e consistente (pode x deve) Usar destaque (negrito, itálico ou sublinhado) para partes importantes Evitar usar jargões de informática Exemplo de Problema São descrições mais detalhadas que os do usuário Devem ser padronizados, completos e consistente Usados pela equipe de desenvolvimento Fazem parte do contrato Não é fácil padronizar os usando linguagem natural Na escada rolante dizia Calçados devem ser usados Cachorros devem ser carregados

Uso de Linguagem Estruturada x Projeto É uma forma restrita da linguagem natural Vantagens Mantém a facilidade de expressão e compreensão da linguagem natural Garante algum grau de uniformidade na especificação Podem ser escritas formulários especiais finem o que o faz E não como ele faz (projeto) No entanto, eles sempre incluem, alguns detalhes de projeto, pois... Os são organizados de acordo com os diferentes subs O deve interoperar com outros s existentes O uso de uma arquitetura específica pode ser um requisito externo do Eng. de : Atividades Engenharia de Inclui quatro fases principais Estudo de viabilidade Elicitação (ou análise) de Especificação de Validação dos Eng. de : Processo O Documento de Estudo de viabilidade Elicitação e análise de Especificação de Validação de Declaração oficial do que os desenvolvedores devem implementar Deve incluir tanto de usuário quanto do Relatório de viabilidade Modelos de usuário e de É lido por várias pessoas interessadas no documento (stakeholders) Documento de

Stakeholders Pessoas que têm qualquer influência direta ou indireta sobre os Clientes e usuários Gerentes de projeto Analistas de Engenheiros de testes Mantenedores, etc. Estudo de Viabilidade Estudo de Viabilidade Sistemas novos devem começar com um estudo da viabilidade Responder Perguntas O contribui para os objetivos gerais da organização? O pode ser implementado com a tecnologia atual dentro das restrições de custo e de prazo? O pode ser integrado a outros s já em operação? Outras Perguntas... Como a organização se comportaria se esse não fosse implementado? Quais são os problemas com os processos atuais e como um novo ajudaria a diminuir esses problemas? Que contribuição direta o trará para os objetivos da empresa? Relatório de Viabilidade Após responder às perguntas, deve ser preparado o relatório de viabilidade Elicitação e Análise de O relatório pode Propor mudanças no enfoque, no orçamento e/ou no cronograma Sugerir outros de alto nível para o Simplesmente cancelar o projeto de desenvolvimento do

Elicitação e Análise de Descoberta de 3. Priorização e Negociação 2. Classificação e Organização O objetivo é descobrir O domínio de aplicação Serviços que devem ser fornecidos pelo Restrições associadas ao domínio ou serviços 4. Especificação de 1. Descoberta dos Várias técnicas podem ser usadas Envolvem diversos stakeholders Obtendo os Obtendo os Descoberta de Descoberta de Levantamento por Pontos de Vista Pontos de Vista do Banco Em uma empresa de tamanho médio ou grande, existem vários stakeholders Cada stakeholder tem um ponto de vista diferente Cada um vê o problema de modo diferente Objetivo: conhecer o problema por várias perspectivas Titular da conta Lista de Serviços Retirar dinheiro Consultar saldo Pedir cheques Enviar mensagem Desbloquear cartão Executar transação Pedir extrato Transferir fundos Contrair empréstimo Não-Titular da conta Lista de Serviços Retirar dinheiro Consultar saldo Caixa do banco Lista de Serviços Executar diagnósticos Somar dinheiro Colocar papel Enviar mensagem

Estruturar os Pontos de Vista Algumas Dificuldades Titular da conta Cliente Não-Titular da conta Todos os pontos de vista Funcionários do banco Caixa Gerente Segurador Stakeholders frequentemente: Não sabem na realidade o que querem Não conseguem expressar claramente o que desejam Fazem pedidos não realistas Se expressam com seus próprios termos (técnicos) Diferentes stakeholders expressam o mesmo requisito de forma diferente Armadilhas da Técnica Obtendo os Alguns stakeholders podem pedir para aumentar o seu poder na empresa O ambiente é dinâmico: novos stakeholders e novos podem surgir Pontos de vista podem apresentar duplicidade ou inconsistência Descoberta de Obtendo os Questionar os stakeholders sobre o (ou processo) atual e sobre o que será desenvolvido Tipos de entrevistas fechadas: conjunto prédefinido de perguntas abertas: sem agenda prédefinida; se adapta para explorar o conhecimento do stakeholder Descoberta de

A Técnica de Descreve uma situação de uso do Inclui informações como Nome do Cenário Ator Pré-condição Fluxo normal Fluxos alternativos Pós-condição Exemplo de Cenário (ATM) Nome do Cenário: Sacar dinheiro Ator: Correntista Pré-condição: Conta e senha validada Fluxo normal 1. Entrar com valor do saque 2. Confirmar dados e operação 3. Debitar valor da conta do cliente Fluxos alternativo: Saldo insuficiente 3.1 Apresentar aviso ao cliente Pós-condição: Valor sacado é debitado do saldo do cliente Obtendo os Descoberta de De Cenário ao Caso de Uso identificam Os atores envolvidos As funcionalidades principais A interação entre atores e funcionalidades do Veremos mais sobre e na próxima aula. Obtendo os Descoberta de É uma técnica de observação utilizada para compreender os sociais e organizacionais O analista (engenheiro de ) se insere na organização do cliente Observa o trabalho no dia a dia Anota as tarefas dos funcionários

é eficaz... Para descobrir como as pessoas realmente trabalham Para descobrir a cooperação e conscientização das atividades de outras pessoas Para desenvolver um protótipo Para descobrir importantes detalhes que outros métodos omitem Validação dos Objetivos da Validação Mostrar que os realmente definem o que o cliente deseja Descobrir problemas com os Verificações da Validação Verificações de validade Quais serviços são necessários? Verificações de consistência Existe conflitos entre? Verificações de completude Todos os estão documentados? Verificações de realismo Os podem ser implementados? Facilidade de verificação Como verificar se o requisito foi implementado? Revisão da Aula Revisão da Aula Funcionais Não-funcionais De Usuário Do Sistema Engenharia de Estudo de Viabilidade Elicitação e Análise Especificação de Validação dos

Bibliografia Principal Ian Sommerville. Engenharia de Software, 9ª Edição. Pearson Education, 2011. Cap. 4: Seções 4.1 a 4.6