Fase de Concepção (Início, Planejamento)

Slides:



Advertisements
Apresentações semelhantes
Engenharia de Software
Advertisements

Um pouco mais de cardinalidade e Relacionamentos
Análise e Projeto Orientado a Objetos
Requisitos de Software
Aula 8 Contratos.
UML no CICLO de DESENVOLVIMENTO
APSOO Aula 03.
APSOO Aula 05.
Rational Unified Process(RUP)
Gerenciamento de Projetos de Software Prof. Eduardo Meira Peres
Faculdade de Ciências Sociais de Aplicadas de Petrolina – FACAPE
Prof. Aruanda Simões - Análise e Projeto OO Processo de Desenvolvimento n As grandes fases: –Planejamento e elaboração –Construção –Implantação Sistema.
Introdução a Bancos de Dados
Análise de Requisitos Use Case Renata Araujo Ricardo Storino
SISTEMA DE INFORMAÇÕES DESENVOLVIMENTO DE SISTEMAS
Análise e Projeto de Sistemas
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Introdução Visão Geral do Método.
Diagramas de Sequência e Comunicação
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
SQL Server 2012 Introdução a Modelagem de Dados
Expansão dos Casos de Uso
Prof.Alfredo Parteli Gomes
Fundamentos de Engenharia de SW
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Análise Estruturada.
Processos de Desenvolvimento de Software – Parte 2
Fase de Elaboração: Fluxo de Requisitos
Expansão dos Casos de Uso
Análise e Projeto de Sistemas Levantamento de Requisitos
Análise e Projeto de Sistemas
Introdução e Fundamentos Engenharia de Requisitos
UNIDADE 2 UML MODELAGEM TEMPORAL
Fase de Concepção (Início, Planejamento)
PSBD II Projeto de Sistemas de Banco de Dados II
O Processo de desenvolvimento de software
Levantamento de Requisitos
GESTÃO DE PROJETOS DE MANUTENÇÃO
Especificação em Projeto de Sistemas
Levantamento de Requisitos
O Processo Unificado (UP)
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Sistema Virtual de Venda de Móveis
Laboratório de Programação
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Fase de Concepção Levantamento de Requisitos, Organização de Requisitos, Planejamento dos Ciclos Iterativos.
Fluxos secundários Só devem ser analisados e descritos após a descrição dos fluxos básicos. Fluxos alternativos situações especiais (desconto para um cliente)
Gestão de projetos de Software GTI-16
Instrutor: Objetivos:.
Atividade de Análise Fase de Elaboração. Artefatos Casos de Uso –Expansão dos Casos de Uso Definidos na Fase de Concepção: Formulário Específico –Diagramas.
Fase de Concepção (Início, Planejamento)
Requisitos Não funcionais
Expansão dos Casos de Uso
Modelagem Conceitual Descreve a informação que o sistema vai gerenciar.
Expansão dos Casos de Uso
Modelagem Conceitual Descreve a informação que o sistema vai gerenciar.
Análise e Projeto de Sistemas
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
Engenharia de Software com o RUP - Workflow de Requisitos
Engenharia de Software
Apresentação Leonardo Brussolo de Paula
Apresentação: Eduardo Jesus Coppola Gerenciamento eletrônico de PALESTRAS Kickoff do Projeto.
Estudo de Caso de Gerência de Riscos
1 Projeto Piloto Conclusão em Agenda Projeto Piloto –Descrição –Execução da aplicação –Implementação de requisitos funcionais e não- funcionais.
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.
Levantamento de Requisitos – Simulação do Supermercado
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

Fase de Concepção (Início, Planejamento)

Objetivos Conhecer a empresa Levantar requisitos Organizar requisitos Casos de Uso Manutenção de Entidades Consultas / Relatórios Esboçar o modelo conceitual do sistema Planejar o desenvolvimento Iterações Cronograma Recursos

Conhecimento da Empresa O que a empresa quer com o projeto? Por que ele está sendo proposto? Por que a empresa vai gastar dinheiro com o projeto? O projeto é realizável? A equipe de desenvolvimento tem condições de realizar este projeto? Em caso de uma empresa produtora de software para clientes externos:O cliente tem dinheiro para pagar o desenvolvimento? Há tempo disponível? Comprar ou desenvolver?

Conhecimento da Empresa (2) Se as respostas são positivas, o passo seguinte é elaborar o sumário executivo do projeto Primeiro artefato

Artefatos Sumário Executivo Documento de Requisitos Casos de Uso Modelo Conceitual

Sumário Executivo

Sumário Executivo É um documento de 3 páginas, no máximo, que responde às seguintes perguntas Por quê? O quê? [Onde?] Também chamado de Visão Geral do Sistema Estudo de Caso: sistema de locação de vídeo

Sumário Executivo documento de texto em formato livre

Sumário Executivo (2) Exercício: avalie o documento do slide anterior Ele permitiria responder bem a estas perguntas Por quê? O quê? [Onde?]

Documento de Requisitos

Levantamento de Requisitos Entrevistas Análise de Documentos Existentes na Empresa Estudo Bibliográfico Comparativo

Requisitos Requisitos funcionais correspondem à listagem de todas as coisas  primitivas ou atômicas  que o sistema deve fazer para bem gerir o negócio do usuário Requisitos não funcionais são restrições que se colocam sobre como o sistema deve realizar seus requisitos funcionais

Requisitos Funcionais Requisitos funcionais evidentes são efetuados com conhecimento do usuário Requisitos funcionais ocultos são efetuados pelo sistema sem o conhecimento explícito do usuário A negação de requisito funcional evidente

Requisitos Não Funcionais Permanentes (o contrário: Transitório) Desejáveis (o contrário: Obrigatório)

Requisitos Não Funcionais Categoria de interface de implementação de eficiência de tolerância a falhas de segurança de compatibilidade etc

Requisitos Não Funcionais Associados a requisitos funcionais Suplementares Associados a qualquer requisito funcional, indistintamente

Requisitos Funcionais Código do requisito funcional (Ex.: F1, F2, F3, ...) Nome do requisito funcional (especificação curta) Descrição (especificação longa, ou detalhamento do requisito) Evidente ou oculto?

Requisitos Não Funcionais Código de requisito não funcional associado (Ex.: NF1.1, NF1.2, ... NF2.1, NF2.2, ...) Nome do requisito não funcional (especificação curta) Restrição: especificação (longa) do requisito não funcional, por categoria de restrição Obrigatório ou Desejável? Permanente ou Transitório?

Requisitos Não Funcionais (2) Suplementares S<índice i >

Requisitos Funcionais e Não Funcionais Associados

Requisitos Funcionais e Não Funcionais Associados (2) Com relação a F1 e F2, e para sermos mais precisos (atomicidade) Registrar (1) empréstimo Calcular (1) desconto

Requisitos Suplementares

Desafios da Análise de Requisitos Como descobrir os requisitos Como comunicar os requisitos para as outras fases e as equipes do projeto Como lembrar dos requisitos durante o desenvolvimento e verificar se foram todos atendidos Como gerenciar a mudança

Organização dos Requisitos Casos de Uso Manutenção de Conceitos (Entidades) Consultas/Relatórios

Casos de Uso

Caso de Uso Um cenário de interação usuário-sistema Ordenação de um subconjunto de requisitos funcionais, e seus requisitos não-funcionais associados, relacionados com a interação Implica em mudança de estado do sistema ( consulta / relatório) Pouco detalhado na fase de concepção Bastante detalhado na fase de elaboração (refinamento de casos de uso)

Caso de Uso (2) Um caso de uso pode ser também pensado como um grande  nível de agregação mais alto  requisito funcional Caso de Uso F1 F2 Fi Fn Pelo menos um requisito funcional deve modificar o estado do sistema

Caso de Uso (3) O nome de um caso de uso é sempre uma expressão verbal Emprestar Fitas Devolver Fitas Reservar Fitas

Validação de Requisitos Funcionais Dado um requisito funcional, ele deve aparecer em pelo menos um caso de uso, ou uma manutenção de entidade, ou um relatório / consulta

Organizando Requisitos em Casos de Uso Exercício: Mostre que cada caso de uso modifica, à sua maneira, o estado do sistema

Diagrama UML de Casos de Uso (Alto Nível, ou sem Decomposição)

Diagrama de Caso de Uso Em geral, na fase de concepção, um caso de uso não é decomposto Decomposição é detalhamento (fase de elaboração) Atores primários e secundários Funcionário: primário Interage diretamente com o sistema Cliente: secundário Interage com o sistema via um ator primário

‘Tamanho’ de um Caso de Uso Um caso de uso deve ser uma unidade lógica de trabalho Critérios de tamanho de um caso de uso De 3 a 10 passos Um passo é um elemento descritivo, não necessariamente um requisito Duração de minutos a 1 hora Um caso de uso deve ser interativo, com informações fluindo para dentro e para fora do sistema Um caso de uso deve produzir uma alteração consistente na informação armazenada Uma seqüência de consultas puras ao sistema não caracteriza um caso de uso

‘Tamanho’ de um Caso de Uso (2) Algumas operações relativamente simples e elementares (de um único passo), como o registro de uma fita, ou de um pagamento, não devem ser consideradas como casos de uso por si só (um único passo) Outra maneira de dizer: nestas casos, o caso de uso reduz-se a um requisito funcional

Modelo Conceitual Preliminar

Modelo Conceitual A entrada para o modelo conceitual são os casos de uso Cada conceito ou entidade, assim como seus relacionamentos, deve aparecer direta ou indiretamente nas descrições dos casos de uso Terminologia UML Diagrama de Classes em Alto Nível, ou Diagrama de Entidades e Relacionamentos ‘Mais tarde’, conceitos ou entidades se tornam classes de software Diagrama de Classes

Caso de Uso: Diagrama Preliminar de Entidades e Relacionamentos Entidades (não exaustivamente) Cliente, Empréstimo, Reserva, Fita Note que entidades são designadas por substantivos Relacionamentos (não exaustivamente) Cliente Fez Empréstimo Cliente Solicitou Reserva Empréstimo Locou Fita Reserva Referenciou Fita Note que relacionamentos são designados por verbos Estes relacionamentos e entidades foram extraídos dos casos de uso Emprestar Fitas e Reservar Fitas

Diagrama Preliminar

Diagrama Preliminar (2) Note que o diagrama está incompleto Faltando contemplar o caso de uso Devolver Fitas Esta situação é normal, na fase de concepção Os refinamentos e detalhamentos são feitos principalmente durante a fase de elaboração

Diagrama Preliminar (3) Note também que faltam as multiplicidades dos relacionamentos 1:1 1:N M:N As multiplicidades devem aparecem já no modelo conceitual preliminar

Diagrama Preliminar (4) Exercícios Qual a diferença entre Modelo e Diagrama? Modifique o diagrama para só contemplar um empréstimo ou uma reserva correntes Inclua as multiplicidades dos relacionamentos Modifique o diagrama para contemplar históricos de empréstimos e reservas

Manutenção de Conceitos ou Entidades

O Padrão Manutenção de Caso de Uso Cada conceito normalmente tem operações associadas de inserção (I) alteração (A) exclusão (E) consulta a um conceito (C) Isso configura um padrão de caso de uso Manter Conceitos ou Entidades Cada caso de uso do padrão é uma manutenção de entidade Recebe um tratamento específico e simplificado

Manutenção (Estudo de Caso) Conceito I A E C Obs Ref. Cruzadas Cliente X Só é possível excluir se não houver empréstimos associados F13, F14, F20, F21 Fita F18, F30, F31, F32 Reserva I, A e E: dentro dos casos de uso Reservar Fitas (I e A) e Emprestar Fitas (E) F15, F16 Empréstimo A: não é possível I e E: dentro dos casos de uso Emprestar Fitas (I) e Devolver Fitas (E) F17, F19

Consultas / Relatórios

Organização de Requisitos em Consultas / Relatórios Muitos requisitos funcionais não mudam o estado do sistema Eles podem ser organizados em consultas / relatórios Não incluem consultas a entidades simples Consultas / relatórios são importantes para validar modelos conceituais Importante: qualquer sistema de informação tem um conjunto relativamente diverso de consultas / relatórios

Organização de Requisitos em Consultas / Relatórios (Estudo de Caso)

Planejamento das Iterações

Planejamento do Desenvolvimento Alocar o desenvolvimento em ciclos iterativos de mesma duração Observar as fases do processo UP (“Major milestones”) Estimativa de esforço para cada iteração

Estabelecendo Prioridades Prioridade #1: Casos de Uso Críticos Definidos pelo cliente Prioridade #2: Casos de Uso Não-críticos Prioridade #3: Manutenção de Conceitos Prioridade #4: Consultas / Relatórios

Estabelecendo Prioridades (2) Fase de Elaboração Requisitos funcionais Alguns requisitos não-funcionais associados a requisitos funcionais Fase de Construção Requisitos não-funcionais associados a requisitos funcionais Requisitos não-funcionais suplementares

Planejamento dos Ciclos Iterativos (Fase de Elaboração)

Cronograma de Execução Considerar Tempo total estimado para o projeto (em hora/pessoa) Tempo disponível (em semanas ou meses) Tamanho da equipe Estruturação em equipes

Planejamento com 4 equipes

Planejamento com 2 equipes

Observações Note que, associando requisitos não-funcionais a requisitos funcionais, uma parte dos requisitos não-funcionais é implementada na fase de elaboração Fase de construção: os demais requisitos não-funcionais e os requisitos suplementares Note também que, trabalhando com várias equipes, somente as atividades de implementação-testes são seqüênciais Atividades de análise-projeto podem ocorrer em paralelo

Projeto do Curso

Projeto Fase Início (Concepção, Planejamento) Documento constando de: Sumário Executivo Requisitos Funcionais e Não-funcionais Associados Requisitos suplementares Casos de uso Modelo Conceitual Manutenção de Entidades Consultas / Relatórios Planejamento das Iterações Prazo de entrega: 20/07