03. aula 03 - jackson - fases de desenvolvimento

74
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Professor: Professor: Jackson Moreira Oliveira Jackson Moreira Oliveira IFPA

Upload: setokaibas

Post on 02-Jan-2016

264 views

Category:

Documents


59 download

TRANSCRIPT

Page 1: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Análise e Projeto de SistemasAnálise e Projeto de Sistemas

Professor:Professor: Jackson Moreira OliveiraJackson Moreira Oliveira

IFPA

Page 2: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas

Conceito de PDS

Objetivos

Componentes do Processo

Modelos de ciclo de vida

Page 3: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas

Uma linguagem de modelagem apenas não é suficiente.

É necessário seguir um processo de desenvolvimento. “Um processo de software é um método para desenvolver ou produzir software.

Define quem faz o que, quando e como, para atingir um

certo alvo.

Page 4: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas

O desenvolvimento de software é uma atividade complexa.

Tentativas de lidar com essa compexidade e de minimizar

os problemas envolvidos no desenvolvimento de software

envolvem a definição de processos de desenvolvimento de

software.

Há vários processos de desenvolvimento propostos.

Não existe o melhor processo de desenvolvimento.

Page 5: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas

Um processo de desenvolvimento de software (Processo de

desenvolvimento ou metodologia de desenvolvimento)

compreende todas as atividades necessárias para:

Definir (Planejamento e elaboração);

Desenvolver (Codificação);

Testar e

Manter um produto de software (Colocar em produção,

treinar usuários).

Page 6: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de SW

Todo processo de transformação tem início e fim.

Essa variável temporal, denominada de ciclo de vida,

determina as fases do desenvolvimento de software.

6

Page 7: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas

Alguns objetivos são:

Definir quais as atividades a serem executadas ao longo do

projeto;

Quando, como e por quem tais atividades serão executadas;

Prover pontos de controle para verificar o andamento do

desenvolvimento;

Padronizar a forma de desenvolver software em uma

organização.

Page 8: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

O desenvolvimento de software é uma tarefa altamente

cooperativa.

Tecnologias complexas demandam especialistas em áreas

específicas.

Uma equipe de desenvolvimento de sistemas de software

pode envolver vários especialistas.

Uma equipe típica consiste em um gerente, analistas,

projetistas, programadores, clientes e grupos de avaliação

de qualidade.

Page 9: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Gerentes de projeto

É o profissional responsável pela gerência ou coordenacão

das atividades necessárias à construção do sistema.

Fazer o orçamento;

Verificar o tempo necessário;

Defini qual o processo de desenvolvimento;

O cronograma de execução das atividades;

A mão-de-obra especializada;

Os recursos de hardware e software etc.

Page 10: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Analista

É o profissional que deve ter conhecimento do domínio do

negócio;

Deve entender os problemas do domínio do negócio para

que possa definir os requisitos do sistema a ser

desenvolvido;

Ele deve ter suficiente domínio do vocabulário da área de

conhecimento na qual o sistema será implantado.

Page 11: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Analista

O analisla deve entender não só do domínio do negócio da

organização, mas também ter sólido conhecimento dos

aspectos relativos à modelarem sistemas;

Funciona como um Tradutor, que mapeia informações entre

duas linguagens diferentes: a dos especilistas do dominio e

a dos profissionais em uma equipe de desenvolvimento.

Page 12: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Projetistas

É o integrante da equipe de desenvolvimento cujas funções

são:

o Avaliar as alternativas de solução (da definição) do

problema resultante da análise e

o Gerar a especificação de uma solução computacional

detalhada.

Page 13: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Arquitetos de software

Ele elabora arquitetura do sistema como um todo.

É ele quem toma decisões sobre quais são os subsistemas

que compõem o sistema como um todo e quais são as

interfaces entre esses subsistemas.

Page 14: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Programadores

É o responsavel pela implementação do sistema;

O analista está envolvido em todas as etapas,

diferentemente do programador, que participa das fases

finais (implementação e testes).

Analistas de sistemas devem entender tanto de tecnologia

de informação quanto do processo de negócio;

programadores tendem a se preocupar somente com os

aspectos tecnologicos do desenvolvimento.

Page 15: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Especialista do domínio

É o individuo, ou grupo de individuos, que possui

conhecimento acerca da área ou do negócio em que o

sistema em desenvolvimento estará inserido.

Um exemplo é o Cliente (O usuário).

Page 16: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O componente humano (participantes do processo)

Avaliadores de qualidade

Avaliadores de qualidade asseguram a adequação do

processo de desenvolvimento e do produto de software;

Sendo desenvolvido aos padrões de qualidade estabelecidos

pela organização.

Page 17: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Levantamento de Requisitos;

Análise de Sistemas;

Projeto de Sistemas;

Implementação de Sistemas;

Testes;

Implantação;

Manutenção e Revisão de Sistemas.

Processo de Desenvolvimento de Sistemas – Atividades Típicas

Page 18: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas – Atividades Típicas

Page 19: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas – Atividades Típicas

Page 20: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo de Desenvolvimento de Sistemas – Atividades Típicas

Page 21: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Compreende todas as atividades necessárias para definir,

desenvolver, testar, operar e manter um sistema.

Objetivos:

definir as atividades a serem executadas;

prover pontos de controle e

padronizar o processo de desenvolvimento.

Processo de Desenvolvimento de Sistemas – Atividades Típicas

Page 22: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Um processo de desenvolvimento classifica em atividades

as tarefas realizadas durante a construção de um sistema

de software.

Cada processo tem suas particularidades em relação ao

modo de arranjar e encadear as atividades de

desenvolvimeno.

Processo de Desenvolvimento de Sistemas – Atividades Típicas

Page 23: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Também conhecida como elicitação de requisitos,

corresponde à etapa de compreensão do problema aplicada

ao desenvolvimento de software.

O principal objetivo do levantamento de requisitos é que

usuários e desenvolvedores tenham a mesma visão do

problema a ser resolvido, levantar e definir as necessidades

denominadas requisitos.

Levantamento de Requisitos

Page 24: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Mas afinal o que é um Problema?

A essência de um problema é a necessidade;

É tudo aquilo que se desconhece;

Quando o não saber é elevado ao extremo, implicando na

impossibilidade do saber, configurando-se um mistério,

este é a solução para o problema.

Algo que não sei, não é um problema, mas quando preciso

saber, aí sim, estou diante de um problema.

Page 25: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Qual a essência do Problema?

A necessidade!!!

Levantamento de Requisitos• Entrevistas• Análise de Documentos• Estudo Bibliográfico Comparativo

Page 26: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Requisitos – O que são?

Objetivos ou restrições estabelecidas pelos clientes e

usuários do sistema.

Definem as diversas propriedades do sistema.

Combinação complexa das necessidades de diferentes

pessoas, em vários níveis da organização, e necessidades

do ambiente onde o software será executado.

Levantamento de Requisitos

Page 27: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Formalmente, um requisito é uma condição ou capacidade

que deve ser alcançada ou possuída por um sistema ou

componente deste para satisfazer um contrato.

Os requisito de um sistema são identificados, apartir de um

domínio (dominio do problema ou domínio do negócio).

Denomina-se domínio a área de conhecimento ou de

atividade específica caracterizada por um conjunto de

conceitos e de terminologia compreendidos por especialista

nessa área.

Levantamento de Requisitos

Page 28: 03. AULA 03 - Jackson - Fases de Desenvolvimento

A equipe de desenvolvimento tenta entender o domínio que

deve ser automatizado pelo sistema de software.

Há várias técnicas utilizadas para isso, como, por exemplo:

leitura de obras de referência e livros-texto;

observação do ambiente do usuário;

realização de entrevistas com os usuários;

entrevistas com especialistas do domímo;

reutilização de análises anteriores;

comparação com sistemas preexistentes.

Levantamento de Requisitos

Page 29: 03. AULA 03 - Jackson - Fases de Desenvolvimento

As principais seções de um documento de requisitos são:

Requisitos funcionais: definem as funcionalidades do

sistema. Todas as coisas que o sistema deve fazer. Deve

determinar O QUE o sistema deve fazer sem a preocupação

de COMO fazer.

Calcular gastos diários, semanais e mensais com pessoal Emitir relatórios de compras quinzenais Registrar o empréstimo de uma fita é um requisito

funcional.

Levantamento de Requisitos

Page 30: 03. AULA 03 - Jackson - Fases de Desenvolvimento

As principais seções de um documento de requisitos são:

Requisitos não-funcionais: declaram as características de

qualidade que o sistema deve possuir e que estão

relacionadas às suas funcionalidades (Técnica, econômica,

da organização, etc). São restrições que se coloca sobre

como o sistema deve realizar seus requisitos funcionais.

Expressam qualidade e restrições sobre os serviços ou as

funções oferecidos pelo sistema.

Levantamento de Requisitos

Page 31: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Exemplo de Requisitos não-funcionais

Estabelecer que o tempo de empréstimo da fita não pode

ser superior a 48 horas é uma restrição, ou requisito não

funcional.

A base de dados deve ser protegida;

Tempo de resposta não pode ultrapassar 30 segundos;

O sistema deve ser multiplataforma (Linux e Windows);

restrições de tempo, restrições sobre o processo de

desenvolvimento, padrões, etc.

Levantamento de Requisitos

Page 32: 03. AULA 03 - Jackson - Fases de Desenvolvimento

As principais seções de um documento de requisitos são:

Requisitos funcionais:o "O sistema deve permitir que cada professor realize o

lançamento de notas das turmas nas quais lecionou."

o "O sistema deve permitir que um aluno realize a sua matrícula nas disciplinas oferecidas em um semestre letivo."

o "Os coordenadores de escola devem poder obter o número de aprovações, reprovações e trancamentos em cada disciplina oferecida em um determinado período.“

Levantamento de Requisitos

Page 33: 03. AULA 03 - Jackson - Fases de Desenvolvimento

As principais seções de um documento de requisitos são:

Requisitos não-funcionais:

o Confiabilidade: corresponde a medidas quantitativas da

confiabílidade do sistema, tais como: tempo médio entre

falhas, recuperação de falhas ou quantidade de erros por

milhares de linhas de código-fonte;

o Desempenho: requisitos que definem tempos de resposta

esperados para as funcionalidades do sistema.

Levantamento de Requisitos

Page 34: 03. AULA 03 - Jackson - Fases de Desenvolvimento

As principais seções de um documento de requisitos são:

Requisitos não-funcionais:

o Portabilidade: restrições sobre as plataformas de

hardware e de software nas quais o sistema será implantado

e sobre o.grau de facilidade para transportar o sistema para

outras plataformas.

o Segurança: limitações sobre a segurança do sistema em

relação a acessos não-autorizados.

Levantamento de Requisitos

Page 35: 03. AULA 03 - Jackson - Fases de Desenvolvimento

De forma geral, a diferença entre requisitos funcionais e

não-funcionais está no fato dos primeiros descreverem o

que o sistema deve fazer, enquanto que os outros fixam

restrições sobre como os requisitos funcionais serão

implementados.

Levantamento de Requisitos

Page 36: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Os requisitos devem ser expressos de uma maneira tal que

eles possam ser verificados e comunicados a leitores

técnicos e não-técnicos.

O enfoque prioritário do levantamento de requisitos

responder claramente à questão "o que o usuário necessita

do novo sistema?".

Requistos definem o problema a ser resolvido pelo sistema

de software; eles não descrevem o soltware que resolve o

problema.

Levantamento de Requisitos

Page 37: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O documento de requisitos serve como um termo de

consenso entre a equipe técnica (desenvolvedores) e o

cliente.

Esse documento constitui a base para as atividades

subsequentes do desenvolvimento do sistema.

O documento de requisitos estabelece o escopo do sistema.

O escopo de um sistema muitas vezes muda durante o seu

desenvolvimento.

Levantamento de Requisitos

Page 38: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Entrevistas

São situações inseridas nas relações humanas que não

estão sujeitas a regras ou fórmulas exatas;

Mas pode ser útil ao Analista de Sistemas que tem

domínio do problema;

Page 39: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Entrevista

O objetivo de uma entrevista para análise de sistemas é a

coleta de informações sobre o sistema a ser desenvolvido;

Ajuda nos aspectos chaves do sistema bem como esclarece

pontos contraditórios do mesmo;

Verifica-se posicionamentos pessoais acerca das questões

envolvidas (omissões, medo, desvios);

Page 40: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Entrevista

A entrevista pode ser um simples bate-papo durante o

cafezinho, um encontro no corredor, por acaso.. O analista

tem que estar sempre pronto para realizá-la;

Qualquer situação que se apresente como oportunidade

para se buscar a informação necessária.

Page 41: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Como preparar a Entrevista

Clareza de sua finalidade;

Identificação de perguntas chaves;

Repasse de documentação formal;

Aspectos mais gerais sobre o assunto a pessoa mais

indicada para obter a informação é a gerência;

Quando houver maior riquezas de detalhes é ideal

entrevistar uma pessoa operacional que esteja envolvida.

Page 42: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Como preparar a Entrevista

Programe a entrevista de acordo com a disponibilidade

do entrevistado;

Toda entrevista, formal ou não, possui 3 aspectos:

abertura, corpo e o fecho;

Procure estabelecer na abertura uma atmosfera

amigável para a comunicação, informe sobre o

objetivo;

A arrancada é feita com sua 1ª pergunta;

Page 43: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Como preparar a Entrevista

Certifique-se de que entendeu o que lhe foi transmitido,

meio indicado: repasse, repita;

Ouça as respostas enquanto a questão esta sendo

respondida, não se preocupe em elaborar a próxima;

Anote o que for necessário de forma breve, sintetize

idéias;

Page 44: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Como preparar a Entrevista

Entrevista não é julgamento, disputa do saber ou

concorrência com o entrevistado;

A pessoa é especializada no que faz e você só busca

informações;

Procure distinguir fatos de opiniões pessoais;

No fecho, mantenha a atmosfera de comunicabilidade.

Page 45: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Análise de Sistemas

AnáliseAnálise

Projeto

Implemen-tação

Testes

Implantação

Levantamento de

Requisitos

Objetivos: Estudo dos requisitos levantados na fase anterior para construção de modelos que

representemrepresentem o sistema a ser desenvolvido.Envolve: eliminar falhas eliminar falhas da análise de requisitos, abordar

questões técnicas do desenvolvimento desoftware (como e não o que).

Dificuldades: as mesmas dificuldades da análise de requisitos

OBJETIVOS DAS OBJETIVOS DAS ATIVIDADES INDEPENDENTE ATIVIDADES INDEPENDENTE

DO CICLO DE VIDADO CICLO DE VIDA

Page 46: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Esta fase consiste em um estudo detalhado dos requisitos.

A análise de requisitos não leva em conta ambiente

tecnológico.

A idéia apenas é construir uma estratégia de solução sem se

preocupar como a estratégia será implementada.

Não trata detalhes de implementação.

Análise de Sistemas

Page 47: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Projeto de Sistemas

Análise

Projeto

Implemen-tação

Testes

Implantação

Levantamento de Requisitos

Projeto

Objetivos: proposta de uma solução que atenda os requisitos da análise requisitos da análise e que seja passível de passível de

implementaçãoimplementação.Envolve: detalhes físicos de implementações, trabalha o comportamento interno do software,

plano e implementação das decisões arquitetônicas.

OBJETIVOS DAS OBJETIVOS DAS ATIVIDADES INDEPENDENTE ATIVIDADES INDEPENDENTE

DO CICLO DE VIDADO CICLO DE VIDA

Page 48: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Neste estágio têm início as preocupações com a

implementação. Aspectos físicos como o tipo de SGBD

usado e a linguagem de programação passam a influir nas

decisões.

São especificados os componentes do sistema (funções,

dados, etc.) e o relacionamento existente entre eles.

Projeto de Sistemas

Page 49: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Projeto de Sistemas

Podemos concluir que...-O resultado da análise é o enunciado do problema, e que o projeto será a sua resolução.-Problemas mal enunciados podem até ser resolvidos, mas a solução não corresponderá às expectativas.

- A qualidade do processo de análise é importante porque um erro de concepção resolvido na fase de análise tem um custo; na fase de projeto tem um custo maior; na fase de implementação maior ainda, e na fase de implantação do sistema tem um custo relativamente astronômico.

Page 50: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Esta fase descreve como funcionará o sistema para atender

aos requisitos de acordo com:

os recursos tecnológicos;

arquitetura do sistema;

padrão de interface gráfica;

linguagem de programação;

gerenciador de banco de dados;

etc.

Projeto de Sistemas

Page 51: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Principais atividades:

Projeto da arquitetura (alto nível): indica como o software

funciona;

Definição de pacotes (módulos), interfaces entre pacotes;

Decisão sobre uso/criação de bibliotecas e/ou componentes.

Projeto de Sistemas

Page 52: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Implementação de Sistemas

Análise

Projeto

Implemen-tação

Testes

Implantação

Levantamento de Requisitos

Implemen-tação

Objetivos: construir uma versão operacional construir uma versão operacional do software que possa ser entregue ao cliente para

avaliação.Envolve: implementar código fonte em uma

determinada linguagem, implementar código de teste unitário para o código fonte e integrar o sistema.Dificuldade: falta de conhecimento da equipe de

desenvolvimento sobre a uma determinada tecnologia.

OBJETIVOS DAS OBJETIVOS DAS ATIVIDADES INDEPENDENTE ATIVIDADES INDEPENDENTE

DO CICLO DE VIDADO CICLO DE VIDA

Page 53: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O sistema é codificado.

Nesta fase ocorre a realização física das especificações do

Projeto. Envolve a codificação, depuração, teste de módulos

individuais e documentação do sistema.

Ocorre a tradução da descrição computacional obtida na

fase de projeto em código executável mediante o uso de

uma ou mais linguagens de programação.

Implementação de Sistemas

Page 54: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Testes

Análise

Projeto

Implemen-tação

Testes

Implantação

Levantamento de

Requisitos

Testes

Objetivos: assegurarassegurar que o sistema tenha qualidadequalidade antesantes de ser entregue aos clientes;

Envolve: definir o que será testado, executar os testes de integração do sistema e avaliar os testes.

OBJETIVOS DAS OBJETIVOS DAS ATIVIDADES INDEPENDENTE ATIVIDADES INDEPENDENTE

DO CICLO DE VIDADO CICLO DE VIDA

Page 55: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Diversas atividades são realizadas para verificação do

sistema construído, levando-se em conta a especificação

feita na fase de projeto.

O principal produto dessa fase é o relatório de testes,

Contém informações sobre erros detectados no software.

Após a atividade de testes, os diversos módulos do sistema

são integrados, resultando finalmente no produto de

software.

Testes

Page 56: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Testes

Page 57: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Implantação

Análise

Projeto

Implemen-tação

Testes

Implantação

Levantamento de Requisitos

Implantação

O sistema é empacotado, distribuído e instalado no ambiente do usuárioambiente do usuário.

Os manuais são escritos, os dados são importados para o sistema

e o pessoal é treinado para operá-lo.

OBJETIVOS DAS OBJETIVOS DAS ATIVIDADES INDEPENDENTE ATIVIDADES INDEPENDENTE

DO CICLO DE VIDADO CICLO DE VIDA

Page 58: 03. AULA 03 - Jackson - Fases de Desenvolvimento

O sistema é empacotado, distribuído e instalado no

ambiente do usuário.

Os manuais do sistema são escritos.

Os arquivos são carregados

Os dados são importados para o sistema,

E os usuários treinados para utilizar o sistema corretamente.

Implantação

Page 59: 03. AULA 03 - Jackson - Fases de Desenvolvimento

Processo geral de modificação de um sistema depois de ter

sido colocado em uso;

Tipos de Manutenção:

Para reparar defeitos;

Para adaptar o software a ambiente operacional diferente;

Para fazer acréscimo de funcionalidade;

Melhorar o desempenho.

Manutenção e Revisão de Sistemas

Page 60: 03. AULA 03 - Jackson - Fases de Desenvolvimento

3. Exercícios

1. O que é um Processo de Desenvolvimento de Sistemas?

2. Quais as atividades incluídas em um Processo de

Desenvolvimento de Sistemas?

3. Cite alguns objetivos do P. D. de Sistemas?

4. Quais os participantes de um P. D. de Sistemas?

5. Qual a diferença entre o Analista e o Programador?

6. Por que a fase de Análise é de grande importância em todo o

processo de desenvolvimento?

Page 61: 03. AULA 03 - Jackson - Fases de Desenvolvimento

3. Exercícios

7. Explique o que é a etapa de Levantamento de Requisitos?

8. Qual o principal objetivo do levantamento de requisitos?

9. O que é Requisito?

10. Defina Domínio do Problema?

11. Quais são as técnicas para entender o Domínio?

12. Qual a diferença entre Requisito Funcional e Não-Funcional?

13. Dê exemplos de Requisito Funcional e Não-Funcional?

14. Quais os tipos de Manutenção de Sistemas de software.

Page 62: 03. AULA 03 - Jackson - Fases de Desenvolvimento

15. Classificar os requisitos dos projetos abaixo em: OBJ = “Objetivo” RF = “Requisito Funcional” RNF = “Requisito Não funcional”

Projeto 1 - Sistema de segurança predial O SSI é um Sistema de Segurança Integrado cuja finalidade é a proteção residencial.

Lista de requisitos · OBJ[ ] RF[X] RNF[ ] - Detectar presença de estranhos · OBJ[ ] RF[X ] RNF[ ] - Registrar imagem do estranho · OBJ[ ] RF[ ] RNF[X ] - Avisar remotamente sobre a ocorrência de uma invasão · OBJ[ ] RF[ ] RNF[X ] - Funcionar mesmo com queda de energia elétrica · OBJ[ ] RF[ ] RNF[X ] - Deve suportar a configuração de pelo menos 20 circuitos · OBJ[ ] RF[ ] RNF[X ] - Avisar que a energia acabou · OBJ[ ] RF[ ] RNF[X ] - Permitir monitoração remota · OBJ[ ] RF[X ] RNF[ ] - Identificar a posição do estranho e o caminho permitido · OBJ[ ] RF[ ] RNF[X ] - Deve suportar o registro de 5.000 eventos no log · OBJ[ ] RF[X ] RNF[ ] - Emitir sinalização sonora · OBJ[ ] RF[ ] RNF[X ] - Realizar o TCC de minha graduação · OBJ[ ] RF[ ] RNF[X ] - Registrar log de eventos · OBJ[ ] RF[ ] RNF[X ] - Habilitar circuitos parciais · OBJ[ ] RF[ ] RNF[X ] - Deverá manter armazenadas as imagens de pelo menos 3 dias anteriores · OBJ[ ] RF[X ] RNF[ ] - Exibir imagens internas e externas do imóvel · OBJ[ ] RF[ ] RNF[X ] - Configurar sensores · OBJ[ ] RF[ ] RNF[X ] - Gerar um sistema de segurança de baixo custo · OBJ[ ] RF[ ] RNF[X ] - Avisar a vários destinos sobre a invasão · OBJ[ ] RF[ ] RNF[X ] - Uma câmera deverá ser associada a um grupo de sensores · OBJ[ ] RF[ ] RNF[X ] - Cadastrar senhas de usuários · OBJ[ ] RF[X ] RNF[ ] - Configurar, ativar e desativar o sistema através de senhas de acesso. · OBJ[ ] RF[ ] RNF[X ] - Deve suportar pelo menos 200 sensores espalhados pela casa · OBJ[ ] RF[ ] RNF[X ] - Deverá suportar a falta de energia pelo menos por 2 horas · OBJ[ ] RF[ ] RNF[X ] - Aumentar a invulnerabilidade do sistema · OBJ[ ] RF[ ] RNF[X ] - Deve suportar pelo menos 20 usuários · OBJ[ ] RF[ ] RNF[X ] - O atraso para avisar o destino sobre invasão não pode ultrapassar 5 minutos

3. Exercícios – Quais os Requisitos?

Page 63: 03. AULA 03 - Jackson - Fases de Desenvolvimento

16. (1)Sistema VideolocadoraVisão Geral do Sistema

É proposto o desenvolvimento de um sistema de controle de videolocadora, que vai informatizar as funções de empréstimo, devolução e reserva de fitas. O objetivo do sistema é agilizar o processo de empréstimo e garantir maior segurança, ao mesmo tempo que possibilita um melhor controle das informações por parte da gerência. Deverão ser gerados relatórios de empréstimos por cliente, empréstimos por fita e empréstimos no mês. O sistema deverá calcular automaticamente o valor dos pagamentos a serem efetuados em cada empréstimo inclusive multas e descontos devidos. A cada devolução de fitas corresponderá um pagamento, não sendo possível trabalhar com sistema de créditos. A impossibilidade de efetuar um pagamento deve deixar o cliente suspenso, ou seja, impossibilitado de emprestar novas fitas até saldar a dívida.

3. Exercícios – Quais os Requisitos?

Page 64: 03. AULA 03 - Jackson - Fases de Desenvolvimento

16. (2)Sistema VideolocadoraVisão Geral do Sistema

Uma vez que a vídeo locadora tem diversos funcionários, inclusive de níveis hierárquicos distintos, os usuários do sistema devem ser devidamente identificados.

O sistema deve permitir também que consultas sejam realizadas de forma a informar ao usuário se o vídeo está disponível e agilizar o processo de busca do vídeo na prateleira.

Os meus funcionários atuais têm familiaridade com a plataforma Windows, no entanto o nível de conhecimento de informática pode ser classificado como baixo e/ou médio.

3. Exercícios – Quais os Requisitos?

Page 65: 03. AULA 03 - Jackson - Fases de Desenvolvimento

16.Sistema VideolocadoraVisão Geral do Sistema

Requisitos funcionais:fazer emprestimo,fazer devolução,fazer reserva,fazer consultas,gerar Relatórios de empréstimos por cliente, empréstimos por vídeo e empréstimos no mêscálculo de multa

Requisitos não funcionaisrapidez no processo de empréstimo,autenticação dos funcionários,preferência pela plataforma windows

3. Exercícios – Quais os Requisitos?

Page 66: 03. AULA 03 - Jackson - Fases de Desenvolvimento

3. Exercícios – Quais os Requisitos?

Page 67: 03. AULA 03 - Jackson - Fases de Desenvolvimento

17.Clínica Veterinária

O sistema para a Clínica Veterinária Animal & Cia trata do gerenciamento das consultas realizadas em animais domésticos (por exemplo, cães e gatos). A consulta pode ser de rotina, mas pode implicar em diagnósticos que envolvam outros serviços a serem prestados pelo veterinário, como injeções, vacinação, cirurgias, etc. Além disso, o animal pode precisar de medicamentos, que podem ser adquiridos na própria clínica. A clínica possui também diversos produtos para venda, como rações, brinquedos, casas de madeira, shampoos, escovas, bebedouros, etc. Esses produtos podem ser vendidos separadamente, ou integrados a uma consulta. Diversos relatórios devem ser gerados pelo sistema para permitir a gestão adequada da clínica, como o relatório de estoque de medicamentos e produtos, consultas feitas em um determinado animal, relatório de vendas de produtos, etc.

3. Exercícios – Clínica Veterinária

Page 68: 03. AULA 03 - Jackson - Fases de Desenvolvimento

18. (1)Sistema de empréstimo de publicações de uma biblioteca.

As publicações disponíveis são livros e revistas. Quando um aluno quer requisitar uma publicação, preenche um

formulário por cada publicação, indicando a cota, o título e os autores (no caso de ser um livro) e entrega-o a um funcionário. Cada aluno pode efectuar até 3 empréstimos.

A biblioteca também deverá fazer controlo dos empréstimos atrasados, avisando os leitores por email quando ultrapassar os 7 dias de atraso.

Os alunos devem poder pesquisar as publicações existentes na biblioteca. No caso de uma publicação já estar requisitada, é mostrada a data esperada para entrega.

Quando chega uma nova publicação, esta é encaminhada para o responsável pela catalogação, onde será analisada e definida a sua área de conhecimento. Existem várias áreas de conhecimento, pondendo ser criadas outras.

Os leitores, professores e alunos, interessados em consultar publicações não existentes na biblioteca, poderão apresentar uma proposta de aquisição das mesmas ao responsável.

3. Exercícios

Page 69: 03. AULA 03 - Jackson - Fases de Desenvolvimento

18. (2)Sistema de empréstimo de publicações de uma biblioteca.

As propostas são analisadas e em função dos preços e do orçamento disponível, serão seleccionadas as publicações a adquirir. A biblioteca estabeleceu critérios que dão prioridade à aquisição de publicações formativas que façam parte do sistema de ensino.

Após ter sido definida a lista de publicações a adquirir, são enivadas notas de encomenda para os fornecedores. As publicações entregues pelos fornecedores são verificadas no momento da recepção.

Depois de catalogadas e registadas, as publicações ficam num expositor especial de divulgação durante 5 dias, antes de serem colocadas na prateleira. A partir desta altura ficam disponíveis para empréstimo.

A biblioteca analisa as publicações periodicamente em função do seu estado de conservação. As que estão em mau estado são retiradas do circuito de empréstimo.

As que são valiosas também são retiradas do circuito de empréstimo e colocadas em exposição.

3. Exercícios

Page 70: 03. AULA 03 - Jackson - Fases de Desenvolvimento

19. (1)Controle da Produção e Venda da Cervejaria BeboSim

A Cervejaria BeboSim solicitou à empresa Avalon – Software do Futuro que desenvolvesse um sistema de controle de produção e venda de seus produtos. Os requisitos descritos abaixo devem ser atendidos pelo sistema. 1. A cervejaria produz diversos produtos líquidos, tais como: cerveja branca, cerveja escura, guaraná normal, guaraná light, água mineral com gás, água mineral sem gás, etc, que devem estar cadastrados no sistema. De cada produto, devem ser armazenados: nome, quantidade em estoque, preço normal de venda atual (único em todo o país), o percentual de comissão sobre a venda e fórmula de produção. 2. A cervejaria possui diversas unidades de produção (fábricas). De cada uma delas é necessário armazenar seu nome, endereço, CNPJ, área construída e telefone de contato. 3. Cada produto pode ser produzido em mais de uma unidade de produção. Uma unidade de produção pode produzir mais de um produto, mas não necessariamente todos. Por exemplo, na unidade da Bahia, são produzidas apenas cerveja branca e cerveja escura. No Espírito Santo são produzidas, por exemplo, cerveja branca, água mineral com gás e sem gás e guaraná normal.

3. Exercícios

Page 71: 03. AULA 03 - Jackson - Fases de Desenvolvimento

19. (2)Controle da Produção e Venda da Cervejaria BeboSim4. Os produtos são engarrafados em embalagens dos mais variados tipos: garrafas de plástico de tamanhos variados, garrafas de vidro, latinhas de alumínio de tamanhos variados, etc. Um produto pode ser armazenado em mais de uma embalagem e uma embalagem pode ser usada por mais de um produto. De cada embalagem, é necessário armazenar o nome, uma descrição do tipo de material de que é feita (plástico, alumínio, etc.), o custo de cada embalagem, o volume que ela pode conter e a unidade do volume (ex. uma latinha de alumínio de 350 ml, uma garrafa de plástico de 1,5 litros, etc.). 5. A cervejaria possui várias equipes de vendas espalhadas pelo país. De cada equipe é necessário controlar o nome da equipe e a região que atende (por ex. norte do ES, sul de Minas Gerais, Grande Vitória, etc).6. Uma equipe atende somente a uma região por vez. Uma região pode ter mais de uma equipe de vendas ao mesmo tempo. Uma equipe não muda de região. 7. Cada equipe é composta por vendedores e por um gerente. Tanto do gerente quanto do vendedor, (ambos funcionários da cervejaria) é necessário armazenar o nome, data de admissão, número da carteirade trabalho, do CPF, o endereço residencial, os telefone e e-mail de contato.

3. Exercícios

Page 72: 03. AULA 03 - Jackson - Fases de Desenvolvimento

19. (3)Controle da Produção e Venda da Cervejaria BeboSim8. É necessário armazenar o histórico da gerência de cada equipe, armazenando data de início e fim da gerência de cada pessoa. 9. Um funcionário pode mudar de equipe e é necessário armazenar a data de início e fim de cada funcionário em cada equipe. 10. A cervejaria possui diversos clientes cadastrados. Somente as pessoas jurídicas podem ser clientes. Dos clientes deve-se armazenar a razão social, o CNPJ, o endereço, o telefone e a pessoa de contato. 11. O vendedor emite pedidos de venda, que devem ser registrados no sistema. Para cada pedido de venda é necessário armazenar o vendedor que emitiu o pedido, o cliente do pedido, o número do pedido e sua data de emissão. 12. O pedido pode discriminar vários produtos. De cada um deles é necessário armazenar a quantidade vendida.

3. Exercícios

Page 73: 03. AULA 03 - Jackson - Fases de Desenvolvimento

19. (4)Controle da Produção e Venda da Cervejaria BeboSim13. A Cervejaria BeboSim faz constantes campanhas publicitárias, que devem ser controladas pelo sistema. De cada campanha publicitária é importante armazenar o nome da campanha, as datas de início e fim, os produtos que farão parte da campanha, os preços promocionais de cada produto em cada campanha, o nome do garoto/garota propaganda da campanha (ex. Guga, Ronaldinho, Pelé, Romário, Luiza Brunet, Paloma Duarte, etc...), o valor total previsto para ser gasto na campanha publicitária, o valor total previsto de retorno com a campanha e o percentual previsto de aumento das vendas.

3. Exercícios

Page 74: 03. AULA 03 - Jackson - Fases de Desenvolvimento

20.Parque de EstacionamentoConsidere os seguintes requisitos de um sistema informático para a gestão de um parque de estacionamento.a)O controle é efetuado com base na matrícula do veículo.b) Na entrada do parque existirá um funcionário que introduz as matrículas no sistema, ficando de imediato registrado a data e hora de início do estacionamento. O sistema tem que verificar se a matrícula existe.c) Se a matrícula não for reconhecida pelo sistema, então o funcionário registrará um novo veículo no sistema.

3. Exercícios