Engenharia de Software
Download
Report
Transcript Engenharia de Software
ANÁLISE ESSENCIAL
Thelma Elita Colanzi Lopes
[email protected]
Métodos e Técnicas para o
desenvolvimento de sistemas
Anos 60: textos e fluxogramas para especificar a lógica dos sistemas;
Meados de 70:
– Análise Estruturada: método que utiliza os componentes e conceitos da
programação estruturada (Tom DeMarco, Gane & Sarson);
– Projeto Estruturado: método que possibilita a elaboração do Diagrama
de Hierarquia de Funções ou Diagrama de Estrutura Modular
(Yourdon);
Anos 80: surge a abordagem de estrutura de dados como forma de modelar
sistemas;
– Método de Jackson (JSD – Jackson System Development)
– Métodos de Warnier
• LCS – Lógica de Construção de Sistemas
• LCP – Lógica de Construção de Programas
Anos 90: surge a abordagem orientada a objetos;
– Método FUSION (Coleman et. al.);
– UML – Unified Modeling Language;
2
Evolução dos métodos
de análise de sistemas
Métodos
Abordagens
Ferramentas
Análise
Tradicional
Funcional
•Textos
•fluxogramas
Análise
Estruturada
Funcional
Dados
•Diagrama de Fluxo de Dados (DFD)
•Diagrama de Estrutura de Dados (Modelo
Conceitual)
•Miniespecificações
•Normalização
•Dicionário de Dados
Análise
Essencial
Funcional
Dados
Controle
•Lista de Eventos
• DFD
•Diagrama Entidade-Relacionamento (DER)
•Diagrama de Transição de Estados (DTE)
•Normalização
•Miniespecificações
•Dicionário de Dados
3
Análise de Sistemas
Qualquer que seja o método utilizado no desenvolvimento de sistemas, o
primeiro passo deve ser o de obtenção de requisitos => ponto fundamental;
Diversas técnicas existem para que os dados/informações sejam obtidos:
entrevistas, questionários, observação direta, brainstorming, entre outras.
Análise Essencial (McMenamin & Palmer) ou
Análise Estruturada Moderna (Yourdon) pode ser encarada
como uma bem-sucedida evolução da Análise Estruturada.
4
ANÁLISE ESSENCIAL
Análise Essencial: recomenda que a especificação do sistema seja
apresentada em três perspectivas que se complementam: modelo de
processos ou funcional, modelo de dados e modelo de controle.
Modelo funcional: mostra a perspectiva dos processos de transformação
dos dados.
Modelo de dados: mostra a perspectiva que representa os dados que
precisam ser armazenados para atender a todas as necessidades de
informações do sistema;
Modelo de controle: representa a perspectiva dos controles. Tem um papel
relevante no caso de sistemas em tempo real.
POR ONDE COMEÇAR A ESPECIFICAÇÃO DO SISTEMA?
Deve-se pensar nos EVENTOS que afetam o sistema. É através do eventos
que se unem os “pólos” – dado e função – do sistema.
5
ANÁLISE ESSENCIAL
COMO ESPECIFICAR O SISTEMA?
A Análise Essencial considera dois níveis: o nível essencial e o de
implementação. Cada um desses é representado por um modelo.
Modelo Essencial:
– apresenta o sistema num nível de abstração completamente
independente de restrições tecnológicas;
– é necessário conhecer a verdadeira essência do sistema;
Modelo de Implementação:
– apresenta o sistema num nível de abstração completamente
dependente de restrições tecnológicas;
– é derivado do modelo essencial;
– diz respeito à implementação do sistema.
6
ANÁLISE ESSENCIAL MODELO ESSENCIAL
Premissa básica: descrever o sistema de maneira independente de
restrições tecnológicas; encontrar o conjunto de requisitos
verdadeiros de um sistema – requisistos essenciais (a essência do
sistema) => deve-se considerar a existência da tecnologia perfeita;
Tecnologia Perfeita (McMenamim & Palmer): deve ser entendida
como uma abstração em que se supõe uma tecnologia ideal, sem
limitações, onde:
– os custos, consumo e desgaste dos equipamentos são zero;
– a capacidade de armazenamento de dados do sistema é infinita;
– a velocidade dos processadores é infinita;
– o tempo de acesso aos dados é instantâneo;
– zero erros (não ocorrem falhas).
7
Requisitos Verdadeiros x Requisitos Falsos
Requisito verdadeiro ou lógico: é uma característica ou capacidade
que um sistema deve ter para cumprir a sua finalidade, independentemente
de como o sistema é implementado.
– O conjunto completo de requisitos verdadeiros é chamado essência do
sistema, ou requisitos essenciais.
Requisito Falso: aquele sem o qual o sistema é capaz de cumprir sua
finalidade, ou seja, é irrelevante para a finalidade do sistema.
– Tipos de requisitos falsos:
• Tecnológicos: ele só existe com a finalidade de atender às
limitações de uma determinada tecnologia de implementação.
• Arbitrários: características não relacionadas ao propósito do
sistema, normalmente impostas pelo analista ou usuário.
8
Principais componentes da Essência do Sistema
Resposta
Estímulo
Estímulo
Memória
Atividade
Custodial
Atividade
Fundamental
Resposta
Atividade Fundamental (essencial): executa uma tarefa que é parte
da finalidade declarada do sistema.
– ex: emissão de contra-cheque
horas_trabalhadas
nome + endereço
salários
deduções
Pagar
trabalhadores
horistas
contra-cheque
9
Principais componentes da Essência do Sistema
(cont.)
Resposta
Estímulo
Estímulo
Memória
Atividade
Custodial
Atividade
Fundamental
Resposta
Memória Essencial: consiste em dados produzidos pelo sistema ou
capturados do mundo exterior, que são utilizados pelas atividades
fundamentais do sistema.
ex: emissão de contra-cheque
• é necessário a identidade do empregado, o seu salário, faixa de
desconto do imposto, tempo que trabalhou, etc.
10
Principais componentes da Essência do Sistema
(cont.)
Resposta
Estímulo
Estímulo
Memória
Atividade
Custodial
Atividade
Fundamental
Resposta
Atividade Custodial: estabelece e mantém a memória essencial do
sistema pela obtenção e armazenamento das informações necessárias às
atividades fundamentais.
ex: sistema folha de pagto
• Manter salários
• Manter empregados
• Manter deduções
11
Principais componentes da Essência do Sistema
(cont.)
Atividades Essenciais Compostas: são aquelas que executam
respostas planejadas, enquanto também mantêm a memória essencial
do sistema.
– As atividades essenciais puras são raras em problemas reais, uma
vez que a maioria das atividades fundamentais tem que guardar
seus resultados para que possam utilizar posteriormente, ou para
passá-los para outras atividades.
• Ex: atividade no sistema folha de pagto que precisa guardar as qtdes
ganhas, retidas e pagas a cada empregado para produzir uma
declaração anual de rendimentos para fins de imposto de renda.
12
Principais componentes da Essência do Sistema
(cont.)
EVENTO
Estímulo
Sistema
Resposta
ESTÍMULO: é um ativador de uma função. É a chegada do estímulo
que indica que um evento ocorreu, e isto faz com que o sistema ative uma
função pré-determinada para produzir a resposta esperada.
EVENTO: um acontecimento do mundo exterior que requer do sistema
uma resposta.
RESPOSTA: é o resultado gerado pelo sistema devido à ocorrência de
um evento – o resultado da execução de alguma função.
– a resposta ao estímulo pode ser interna ou externa.
13
ANÁLISE ESSENCIAL MODELO ESSENCIAL
Subdividido em:
Modelo Ambiental: voltado para o ambiente em que o sistema
está inserido.
– representa a interface do sistema (sua fronteira) com o mundo exterior;
– mostra a interação do sistema com os elementos externos a ele.
Modelo Comportamental: voltado para o sistema, para o
comportamento de suas partes internas.
– mostra como o sistema deve reagir internamente aos estímulos do
ambiente.
14