Análise de Sistemas I Prof. Vera Niedersberg Schuhmacher UNISUL.
Transcript of Análise de Sistemas I Prof. Vera Niedersberg Schuhmacher UNISUL.
Análise de Sistemas IAnálise de Sistemas I
Prof. Vera Niedersberg SchuhmacherProf. Vera Niedersberg Schuhmacher
UNISULUNISUL
IntroduçãoIntrodução1.1 Configuração de Software1.1 Configuração de Software
1.2 Processo do Software1.2 Processo do SoftwareEspecificaçãoEspecificação Definir funcionalidades e restriçõesDefinir funcionalidades e restrições
DesenvolvimentoDesenvolvimento Produção do produtoProdução do produto
ValidaçãoValidação Validar com o desejo do clienteValidar com o desejo do cliente
EvoluçãoEvolução Novas necessidades do clienteNovas necessidades do cliente
Conjunto
de
atividades e
resultados
que
produzem o
produto de
software
Como ?Definição
Desenvolvimento
Manutenção
O Que ?
1.3 Paradigma Genérico1.3 Paradigma Genérico
Porque?
Desenvolvimento de SoftwareDesenvolvimento de Software
Fase de DefiniçãoFase de Definiçãoanálise de sistemaanálise de sistemaplanejamento do projeto de softwareplanejamento do projeto de softwareanálise de requisitosanálise de requisitos
Fase de DesenvolvimentoFase de Desenvolvimentoprojeto de softwareprojeto de softwarecodificaçãocodificaçãoteste de softwareteste de software
Fase de ManutençãoFase de Manutençãoadaptaçãoadaptaçãocorreçãocorreçãoperfectivaperfectiva
A problemática do projeto de softwareA problemática do projeto de software
Brittan 1980
COMO PROPOSTO
COMO ESPECIFICADO
COMO PROJETADO
COMO IMPLEMENTADO
COMO INSTALADO O QUE O USUÁRIO
QUERIA
1.4 Modelos e Abstrações1.4 Modelos e Abstrações
Níveis de Abstração
Dimensões do Modelo Fases do Ciclo de Vida
Conceitual Modelo Lógico (processos e dados)
(classes e objetos)
Análise de Requisitos
Tecnológico Modelo Físico (Procedimentos , programas e bases de dados)
(classes, objetos e métodos)
Projeto
Interno Software implementado Construção
II. Análise de RequisitosII. Análise de RequisitosRequisito de software – Requisito de software – é uma descrição dos principais recursos de um é uma descrição dos principais recursos de um
produto de software, seu fluxo de informações, comportamento e atributos. produto de software, seu fluxo de informações, comportamento e atributos.
O requisito de software fornece uma estrutura básica para o O requisito de software fornece uma estrutura básica para o desenvolvimento de um produto de software. desenvolvimento de um produto de software.
O grau de compreensibilidade, precisão e rigor da descrição O grau de compreensibilidade, precisão e rigor da descrição fornecida por um documento de requisitos de software tende a ser fornecida por um documento de requisitos de software tende a ser diretamente proporcional ao grau de qualidade do produto resultante diretamente proporcional ao grau de qualidade do produto resultante (Peters, 2000).(Peters, 2000).
O pensamento da análise de requisitos deve voltar-se principalmente ao O pensamento da análise de requisitos deve voltar-se principalmente ao problema, não as soluções (David, 1993). problema, não as soluções (David, 1993).
A análise de requisitos é o principal processo executor em um A análise de requisitos é o principal processo executor em um sistema de feedback que produz descrições dos recursos comportamentais sistema de feedback que produz descrições dos recursos comportamentais e não comportamentais do software. e não comportamentais do software.
COMEÇA QUANDOCOMEÇA QUANDO:: se reconhece um problema que necessita de soluçãose reconhece um problema que necessita de solução surge uma idéia de um novo negócio ou sistema de surge uma idéia de um novo negócio ou sistema de
informaçãoinformação
E TERMINA QUANDOE TERMINA QUANDO:: tem-se a descrição completa do comportamento do tem-se a descrição completa do comportamento do
software a ser construídosoftware a ser construído (Especificação de (Especificação de Requisitos)Requisitos)
A análise de requisitos éA análise de requisitos é um processo um processo de descoberta e refinamentode descoberta e refinamento
ATORES:ATORES: cliente e desenvolvedor cliente e desenvolvedor
PROBLEMA:PROBLEMA: grande propensão a mal grande propensão a mal entendidos - "atividade aparentemente entendidos - "atividade aparentemente simples torna-se complexa"simples torna-se complexa"
Durante o levantamento de requisitos voce vai Durante o levantamento de requisitos voce vai se deparar com um grande volume de relatórios, se deparar com um grande volume de relatórios, formulários e documentos. Quais os que voce formulários e documentos. Quais os que voce deve avaliar? deve avaliar?
Detecte as pessoas chaves do processo, Detecte as pessoas chaves do processo, trabalhe usando amostragens da população. trabalhe usando amostragens da população. Escute com atenção a gerência da empresa e Escute com atenção a gerência da empresa e seus objetivos.seus objetivos.
2.1 Resultados da Análise de 2.1 Resultados da Análise de RequisitosRequisitos
Funcional Funcional – – identifica as atividades do sistema (ações principais)identifica as atividades do sistema (ações principais)ComportamentalComportamental – – descreve a seqüência e a possível sobreposição descreve a seqüência e a possível sobreposição de funções do sistema em uma hierarquia de atividades de controlede funções do sistema em uma hierarquia de atividades de controleNão comportamentalNão comportamental – – inclui planejamento de engenharia humana inclui planejamento de engenharia humana e qualidade (atributos)e qualidade (atributos)
2.2 Principais Produtos resultantes do processo:2.2 Principais Produtos resultantes do processo:
Especificação de requisitos de softwareEspecificação de requisitos de software – – descrição do sistema descrição do sistema ( funções, comportamento, desempenho, interfaces e atributos de ( funções, comportamento, desempenho, interfaces e atributos de qualidade).qualidade).Plano de garantia de qualidadePlano de garantia de qualidade – – indicação de portabilidade, indicação de portabilidade, eficiência, confiabilidade, critérios de validação e verificação, custos eficiência, confiabilidade, critérios de validação e verificação, custos critérios de aceitação.critérios de aceitação.
2.3 ATIVIDADES2.3 ATIVIDADES
Análise do Problema
Definição Requisitos
Avaliação da Especificação
Análise do ProblemaAnálise do Problema
““define o espaço de produto de um define o espaço de produto de um processo de software “(Davis, 1993).processo de software “(Davis, 1993).
““Brainstorm”Brainstorm” EntrevistasEntrevistas Identificação de restrições e possíveis soluçõesIdentificação de restrições e possíveis soluções
EntrevistaEntrevista
O uso da entrevista é feito pelo uso do formato “pergunta-O uso da entrevista é feito pelo uso do formato “pergunta-resposta”. Usando esta técnica voce pode obter opiniões resposta”. Usando esta técnica voce pode obter opiniões do usuário, descobrir o que o cliente pensa sobre o sistema do usuário, descobrir o que o cliente pensa sobre o sistema atual, obter metas organizacionais/pessoais e levantar atual, obter metas organizacionais/pessoais e levantar procedimentos informais.procedimentos informais.
Quando voce realizar uma entrevista lembre-se:Quando voce realizar uma entrevista lembre-se: Tente estabelecer com o cliente um clima de confiança e Tente estabelecer com o cliente um clima de confiança e
entendimento;entendimento; Mantenha-se sempre no controle da entrevista;Mantenha-se sempre no controle da entrevista; Tente mostrar ao cliente sua importância dentro do sistema.Tente mostrar ao cliente sua importância dentro do sistema. Prepare-se antecipadamente para a entrevista.Prepare-se antecipadamente para a entrevista.
EntrevistaEntrevista
Lembre-se :Lembre-se : Inclua em sua lista de entrevistados pessoas Inclua em sua lista de entrevistados pessoas
chaves dentro do futuro sistema.chaves dentro do futuro sistema. Quando voce propuser uma entrevista marque a Quando voce propuser uma entrevista marque a
data e a hora com antecedência, com uma data e a hora com antecedência, com uma duração de no mínimo 45 minutos e no máximo duração de no mínimo 45 minutos e no máximo duas horas. duas horas.
Elabore as questões e a estrutura da entrevista, Elabore as questões e a estrutura da entrevista, durante a entrevista registre tudo o que for durante a entrevista registre tudo o que for
possível fazendo uso de anotações ou de um possível fazendo uso de anotações ou de um gravador.gravador.
EntrevistaEntrevista
Ao formular as questões evite:Ao formular as questões evite: usar questões que levam o entrevistado a usar questões que levam o entrevistado a
responder de uma forma específica ou responder de uma forma específica ou tendenciosa.tendenciosa.
Um exemplo ruimUm exemplo ruim: : Voce também acredita que o a Voce também acredita que o a prioridade do desenvolvimento deva ser o prioridade do desenvolvimento deva ser o faturamento como seu gerente afirmou?faturamento como seu gerente afirmou?
MelhorMelhor: : O que você acha que deva ser implantado O que você acha que deva ser implantado em primeiro plano?em primeiro plano?
EntrevistaEntrevista
Evite fazer duas questões em uma, é Evite fazer duas questões em uma, é confuso e a resposta pode não ser confuso e a resposta pode não ser completa. Ainda é possível que o completa. Ainda é possível que o entrevistado acabe respondendo uma das entrevistado acabe respondendo uma das questões apenas.questões apenas.
Um exemplo ruimUm exemplo ruim: : em que situações voce em que situações voce cancela uma nota fiscal e quais os cancela uma nota fiscal e quais os procedimentos que voce faz durante o procedimentos que voce faz durante o cancelamento?cancelamento?
QuestionárioQuestionário
O questionário é uma técnica que permite o levantamento de informações a partir da coleta de informações de diferentes pessoas afetadas pelo sistema.
Sempre que possível, use o vocabulário das pessoas que irão responder.
Prefira o uso de perguntas curtas e simples. Certifique-se de que as questões estão
tecnicamente precisas antes de incluí-las no questionário.
Observação Direta
A observação direta pode ser utilizada como validação das entrevistas, identificação de documentos , esclarecimento do que está sendo feito no ambiente atual e a forma como ocorre.
O analista observa sem intervir diretamente no processo.
É importante planejar a observação e isto significa identificar o que deve ser observado, obter aprovação das gerências apropriadas,
obter as funções e nomes das pessoas envolvidas nas ações que serão observadas.
Se voce optar por esta técnica prepare os usuários com cuidado esclarecendo sobre a forma como o processo vai ocorrer.
Brainstorming
No sentido exato da palavra brainstorming é uma tempestade de idéias.
O uso da discussão em grupos onde a partir dos resultados das técnicas acima procura-se compreender corretamente documentos, respostas oferecidas pelos usuários, processos existentes são a base para que se chegue a uma boa especificação.
Nesta etapa inicia-se a formatação de um documento que deve conter os requisitos necessários ao projeto dentro de um consenso entre desenvolvedores e cliente.
Durante o levantamento dos requisitos é estabelecido o escopo do projeto e também as possíveis restrições que possam delinear algum tipo de risco no horizonte.
Análise De Problemas
Ambiente
Itens produzidosFunções
Modos de operação
Itens processadosItens consumidosItens produzidos para satisfazer as necessidades do sistema
Funções executadas por pessoas, por máquinas Funções necessárias para produzir o serviço ou itemItens consumidosItens produzidos para satisfazer as necessidades do sistema
Métodos utilizadosForma de produzir o itemQuando as operações acontecem
Pessoas no sistema Pessoas afetadasMáquinas no sistemaMáquinas afetadasServiços necessáriosOutros itens afetados pelas operações do software
Análise do ProblemaAnálise do Problema
PROBLEMAS:PROBLEMAS: comunicação com usuáriocomunicação com usuário organização das informaçõesorganização das informações entendimento completo do problemaentendimento completo do problema
2.3.2. Definição dos Requisitos2.3.2. Definição dos Requisitos
B1) ELICITAÇÃO DE REQUISITOS B1) ELICITAÇÃO DE REQUISITOS
A meta é o reconhecimento dos elementos A meta é o reconhecimento dos elementos básicos do problema, conforme percebidos pelo básicos do problema, conforme percebidos pelo
clientecliente..
Avaliar os problemas na situação atualAvaliar os problemas na situação atual Para o novo sistema:Para o novo sistema:
- definir e elaborar todas as funções do sistema- definir e elaborar todas as funções do sistema- identificar dados que o sistema produz e consome - identificar dados que o sistema produz e consome - entender o comportamento do sistema- entender o comportamento do sistema- estabelecer características de interface- estabelecer características de interface- descobrir restrições do projeto- descobrir restrições do projeto
B1) ELICITAÇÃO DE REQUISITOSB1) ELICITAÇÃO DE REQUISITOS
Sintetizar uma ou mais soluções (dentro do Sintetizar uma ou mais soluções (dentro do alcance delineado no Plano de Projeto do alcance delineado no Plano de Projeto do Software)Software)
O processo de avaliação e síntese O processo de avaliação e síntese continua até que o analista e o continua até que o analista e o cliente concordem que o software cliente concordem que o software pode ser adequadamente pode ser adequadamente especificado.É a especificado.É a maiormaior área de área de esforçoesforço
B2. MODELAGEM
Durante a atividade de avaliação e Durante a atividade de avaliação e síntese devem ser criados modelos do síntese devem ser criados modelos do sistema para se compreender melhor o sistema para se compreender melhor o fluxo de dados e de controle, o fluxo de dados e de controle, o processamento funcional e a operação processamento funcional e a operação comportamental, além do conteúdo da comportamental, além do conteúdo da informação.informação.
O modelo serve como fundamento para o O modelo serve como fundamento para o projeto de software e como base para a projeto de software e como base para a criação de sua especificaçãocriação de sua especificação
2.3.3 Especificações de Requisitos de Software
““é a descrição de um produto de sofware, é a descrição de um produto de sofware, programa ou conjunto de programa programa ou conjunto de programa específico que executa uma série de específico que executa uma série de funções do ambiente de destino “(Padrão funções do ambiente de destino “(Padrão IEEE 830,1993).IEEE 830,1993).
Questões da ERS
Funcionalidade
Interfaces Externas Desempenho
Atributos
Restrições
Velocidade, disponibilidadem tempo de resposta, tempo de recuperação das funções do software
O que o software deve fazer (descrição das funções) objetos de ERS, funções e estados Interação do software
com seu ambiente, com as pessoas, com hardware do sistema, outros componentes de hardware e de software Portabilidade,
rastrabilidade, fidedignidade, manutenibilidade, qualidade, estabilidade, segurança
Padrões de qualidade, linguagem de codificação, limites de recursos, orçamento, ambiente....
2.3.4 2.3.4 Avaliar a EspecificaçãoAvaliar a Especificação
comparar a especificação com comparar a especificação com padrões de qualidade previamente padrões de qualidade previamente estabelecidosestabelecidos
validar a especificação com os validar a especificação com os usuáriosusuários
PROBLEMAS:PROBLEMAS:
inexistência de padrõesinexistência de padrões
dificuldade de realizar avaliaçõesdificuldade de realizar avaliações
elementos alocados ao software
determinar domínio das informações e das funções,
interfaces, restrições de projeto e critérios de validação
determinar domínio das informações e das funções,
interfaces, restrições de projeto e critérios de validação
construir protótipo para estabelecer os
requisitos
os requisitos são conhecidos?
revisão administrativa
Plano de
Desenvolvimento do Software
estabelecimento do alcancerecursos, custo cronograma
estabelecimento do alcancerecursos, custo cronograma
revisar e justificar recursos, custos e
cronogramas
Especificação dos Requisitos
do Software
início da fase de desenvolvimento
revisão
aceitável
revisão
não sim
revisão técnica
revisão do plano de projeto do software
aceitável
aceitável
ReferênciasReferências
Rodrigues M. R., Material didático, 2001Rodrigues M. R., Material didático, 2001
Peters, J. , Pedrycz, W., Engenharia de Peters, J. , Pedrycz, W., Engenharia de Software, Editora Campus, 2002Software, Editora Campus, 2002
Exercício – Clínica VeterináriaExercício – Clínica VeterináriaA – VISÃO GERAL DO SISTEMA
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.