Buscar

Paradigmas de Anlise e Desenvolvimento 04

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Paradigmas de Análise e Desenvolvimento
Aula 04
Análise Essencial
Nesta aula, você irá: 
1 - Entender um projeto desenvolvido com a técnica de análise essencial, através das 3 perspectivas: Modelo Funcional, Modelo de dados de Modelo de Controle do Sistema.
2 - Entender as mudanças sugeridas pela Análise Essencial para sanar os principais problemas com uso da Análise Estruturada.
3 - Entender o conceito de evento e funções que afetam um sistema.
4 - Entender a divisão dos modelos Ambiental e Comportamental do Modelo de trabalho proposto pela Análise Essencial.
5 - Entender as atividades que compõem o Modelo Ambiental.
Contextualizando o momento em que surge a Análise Essencial
Particularmente, vivenciei em meados dos anos 80 e inícios dos anos 90 o processo de desenvolvimento de software com base na técnica da análise estruturada. Era um momento em que as demandas de desenvolvimento eram crescentes. As empresas precisavam dos sistemas para sua melhor organização e consequente crescimento, com bastante urgência.  Ou seja, era um cenário de pressão sobre as equipes de desenvolvimento. 
Por outro lado a análise estruturada preconizava um processo de desenvolvimento onde se despendia muito tempo com as modelagens propostas. Havia  ainda a dificuldade em entender a prática de construção de DFD (Diagrama de Fluxo de Dados), cujo processo era 100% manual ou no máximo usavam softwares que desenhavam os diagramas, em comparação com as réguas (com as formas dos elementos do DFD).
Havia, naturalmente, um problema: a modelagem proposta demandava tempo e o usuário queria o sistema pronto rapidamente. Como fazer?
Era necessário simplificar a modelagem(construção do diagrama) e resolver os principais problemas existentes á época, que em suma eram:
1 - Por onde devemos começar a modelagem do DFD? Qual o ponto de origem do trabalho?
2 - Como chegar nas principais funções do sistema, que eram demostradas no DFD de nível zero?
3 - Subjetividade da abordagem top-down, pois com ela os usuários particionavam o sistema de formas distintas.
4 - Como construir um DFD apenas com aspectos lógicos sem considerar demandas físicas, ou seja aspectos de implementação e tecnologias? Qual o limite? Até que ponto uma funcionalidade diz respeito apenas a uma necessidade do usuário ou faz parte do projeto físico do sistema?
5 - Ausência de modelos que ajudem nos controles do estado do sistema. Por exemplo, quais os possíveis estados de um pedido de um Sistema de Controle de Estoque? Como ocorrem as transições entre esses estados?
Atenção: A técnica de Análise Essencial foi uma evolução e não uma revolução da Análise Estruturada, na medida em que preservou todos os  modelos que nesta foram usados, tais como: DFD, DD (Dicionário de dados) e especificação dos processos.
A abordagem essencial
O problema  4, anteriormente relatado foi resolvido pela Análise Essencial através da delimitação da (tênue) fronteira entre o lógico e o físico com o conceito de Tecnologia Perfeita, que é caracterizada por:
Capacidade ilimitada de processamento 
(velocidade de processamento).
Capacidade ilimitada de armazenamento.
Não custa nada (zero).
Infalível.
Define-se então os requisitos verdadeiros do sistema, ou seja o conjunto de requisitos necessários para atingir o propósito do sistema, independente da tecnologia que venha a ser utilizada (por isso baseia-se na tecnologia perfeita). 
Em suma a análise essencial busca elaborar, inicialmente o modelo ideal, descrevendo os requisitos que o sistema precisa ter, sem qualquer preocupação de como será a implementação. 
A essa fase dá-se o nome de Modelo Essencial, por constituir a essência do sistema, não importando saber se sua implementação será manual ou automatizada e nem mesmo que tipo de hardware ou software vai ser usado. 
O Modelo Essencial corresponde ao projeto lógico do sistema (da Análise Estruturada) e o Modelo de Implementação corresponde ao modelo físico (da Análise Estruturada).
Conforme ilustrado pela figura (“A Abordagem Essencial”) além do Modelo Essencial, temos o Modelo de Implementação, quando são inseridas as tecnologias na solução.
A modelagem Essencial
Vamos descrever como a análise essencial sugere que trabalhemos, com base na imagem.
O Conceito de Evento
A essência do modelo é a resposta do sistema a cada um dos eventos que o afeta.
Em resumo a todo estímulo que chega ao Sistema deve haver uma resposta, gerada por uma das funções do sistema, conforme ilustrado na figura.
Respostas Planejadas aos eventos
Exemplificando:
Evento: Cliente faz pedido de livro
Estimulo: Pedido_Livro (Fluxo de dados)
Função: Incluir Pedido (resposta ao evento)
Respostas: (pedido cadastrado) ou Pedido_Rejeitado
Os parêntesis () entre pedido cadastrado, significa atualização dos dados do pedido no depósito de dados.
Pedido_rejeitado é o chamado fluxo de exceção, ou seja um fluxo que pode ou não ser enviado; no caso só é enviado se o pedido não for aceito.
Considerações sobre análise de eventos:
É importante considerar que o evento não é o estímulo;
O evento é a causa do surgimento dos estímulos no sistema;
Um mesmo evento pode fazer com que duas ou mais entidades externas enviem seus respectivos estímulos ao sistema, indicando assim que um único evento ocorreu.
Não pode existir função para a qual não seja identificado o estímulo correspondente;
Logo NÃO pode existir função sem que haja um EVENTO correspondente.
Resumo: Para cada função a ser executada pelo sistema deve haver um estímulo responsável pela sua ativação, LOGO para descobrir as funções de um sistema basta conhecer os estímulos que chegam ao sistema. Como os estímulos são consequências dos eventos, a primeira atividade proposta pela Análise Essencial é a identificação dos eventos que afetam o sistema. Por isso diz-se que os eventos são o cerne de um sistema, a sua razao de existir.
Descobrindo os eventos, descobrem-se os estímulos e consequentemente as funções que respondem a esses estímulos.
Com essa técnica para a identificação dos eventos de um sistema, a Análise Essencial conseguiu resolver ou ao menos minimizar bem os 2 primeiros problemas apresentados, no inicio da aula, oriundos do processo de desenvolvimento proposto pela Análise Estruturada que são:
1. Por onde devemos começar a modelagem do DFD? Qual o ponto de origem do trabalho?
RESP: pela  Identificação dos Eventos que afetam o sistema.
2. Como chegar nas principais funções do sistema, que eram demostradas no DFD de nível zero?
RESP: identificando as funções que responderão aos estímulos derivados dos eventos.
Atividade Essencial
Sempre que um evento que afeta um sistema ocorrer, ele será responsável por ativar uma das funções do sistema que vai executar tarefas para cumprir com seu propósito. Essas tarefas chamam-se Atividade Essencial.
A Atividade Essencial inicia com a chegada do estímulo ao sistema.
A figura ilustra os 3 tipos possíveis de atividades da modelagem essencial.
O Conceito de Evento
Atividade Essencial
Conjunto de dados que devem ser armazenados no Sistema para que atenda a seus propósitos.
Nos DFD a memória essencial é representada pelos depósitos de dados. 
Já o DER (Diagrama de Entidade e Relacionamento) mostra o relacionamento entre a memória essencial.
Resumos dos principais conceitos da análise essencial
A tabela (“Resumo dos Conceitos da Análise Essencial”) apresenta os principais termos da Análise Essencial.
Mais sobre o conceito de evento
A Análise Essencial parte do pressuposto de que os eventos que afetam o sistema constituem a parte fundamental de um sistema, tanto é que o modelo comportamental começa com a identificação de quais eventos do mundo exterior, o sistema deve responder.
Considerações relevantes sobre o conceito de eventos:
• Um sistema pode ser entendido como uma caixa preta, que a partir de certos estímulos, produz as respostasesperadas;
• Para cada função a ser executada pelo sistema deve haver um estímulo responsável pela sua ativação;
• A Análise Essencial propõe o particionamento do sistema em eventos.
Mais sobre o conceito de evento
Os eventos são classificados em:
Abaixo exemplos de eventos, de sistemas hipotéticos.
Sistema de Biblioteca
Cliente empresta (toma emprestado) exemplar.
Cliente devolve exemplar.
Cliente reserva livro.
Sistema de Hotelaria
Cliente faz reserva.
Cliente cancela reserva.
Cliente faz check-in.
Cliente faz check-out.
É hora de cancelar não comparecimento (temporal).
Sistema de Pessoal
Empregado solicita licença não remunerada.
Empregado recebe aumento de salário.
Receita Federal comunica alterações da tabela de dedução.
É hora de emitir contra-cheque (temporal).
O Modelo Ambiental
Define o ambiente em que o sistema esta inserido. É a definição do sistema do ponto de vista externo. Os componentes do modelo ambiental são:
• Declaração dos Objetivos do Sistema.
• Diagrama de Contexto do Sistema.
• Lista de Eventos que afetam o Sistema.
Na prática a melhor sequencia é: Lista de Eventos, Diagrama de Contexto e Declaração dos objetivos do sistema, pois a medida em que cada evento é identificado, o estímulo (fluxo), sua origem  e a resposta do sistema já servem, respectivamente, como Fluxo de dados de entrada, entidade externa e fluxo de dados de saída no Diagrama de Contexto.
Lista de eventos
A Lista de Eventos deve ser elaborada sob a forma de uma tabela, com as seguintes colunas.
1. Número do Evento (Num. Evento): numeração sequencial dos eventos 
2. Nome do Evento: Nomenclatura que identifique o evento com clareza.
3. Tipo de Evento: que pode ser orientado a Fluxo (F),  a Controle ( C) ou por Tempo (T), conforme a sua natureza.
4. Estímulos: estímulos que chegam ao sistema com a ocorrência do evento (Fluxo de dados de entrada, ou seja, da entidade externa para o sistema)
5. Ações: é a funçao do sistema que vai responder ao estímulo provado pelo evento
6. Respostas: são as respostas da função que respondeu aos estímulos que chegaram. Podem ser:
• Fluxo de dados de saída, ou seja, do sistema para entidade externa.
• Fluxo de dados para manutenção de depósito de dados.
Para cada evento identificado é oportun que se responda as seguintes questões:
O sistema deve realmente responder a esse evento?
Há eventos que devem suceder a esse evento?
Há eventos que devem preceder a esse evento?
Como esse sistema perceberá que esse evento ocorreu? (estímulo)
A tabela apresenta um exemplo de Lista de Eventos para um Sistema de Pedidos.
Lista de Eventos do Sistema de Pedidos
Analisando cada evento descoberto, teremos condições de desenhar o Diagrama de Contexto, que tem a mesma conotação apresentada na aula de Análise Estruturada, apresentando:
O sistema, sendo representado por uma grande bolha
As entidades externas 
Os fluxos de entrada e saída para as entidades externas
 
Como obter o diagrama de Contexto através da lista de eventos?
Resposta: 
Exemplificaremos com eventos da lista da Tabela Lista de Eventos do Sistema de Pedidos.
Leia a exemplificação desses eventos no documento em pdf aula 04-01
Declaração dos objetivos do Sistema
Trata da enumeração das diferentes finalidades que o sistema deve ter.
 Algumas perguntas ajudam na declaração de objetivos do sistema.
Qual a finalidade do sistema?
Quer requisitos devem ser atendidos?
Vai substituir algum sistema?
O que o sistema não vai controlar?
Que problemas o sistema deve resolver?
Atenção: A declaração dos objetivos deve expressar O QUE o sistema deve fazer e NÃO COMO, por isso deve ser livre de detalhes de implementação (aspectos tecnológicos).
Exemplo: O sistema da Livraria ABC deve atender aos pedidos de livros solicitados pelos clientes, sem a necessidade de estoca-los, ou seja, a medida que os livros são adquiridos das Editoras eles devem ser entregues aos clientes. O sistema não deve controlar o financeiro da operação.
Estudo de Caso: Livraria ABC
Apresentaremos, nesse tópico, um estudo de caso, partindo da especificação do mini-mundo (especificação textual dos requisitos) de uma livraria que solicita livros as editoras atendendo especificamente a pedidos prévios de seus clientes.
Abaixo, o mini mundo.
A Livraria ABC atua no mercado de livros há mais de 20 anos. Sua estratégia de atuação não prevê manutenção de livros em estoque. Todos os livros solicitados pelos clientes são, semanalmente, requisitados às editoras. As editoras e os livros oferecidos são selecionados pela Direção da Livraria. 
 
Atualmente, a Livraria possui 1.200 clientes cadastrados, fornece 170 livros e atende a uma média de 150 pedidos por semana.
 
Os clientes enviam seus pedidos pelo correio. O pedido é aceito se o cliente e os livros estiverem previamente cadastrados. Caso contrário, o pedido é rejeitado e devolvido ao cliente.
 
Ao final da semana, a Livraria emite as requisições para as editoras, com base nos pedidos recebidos ao longo da semana.
 
Quando os livros são fornecidos pelas editoras, a Livraria confere as notas fiscais emitidas pelas editoras com as requisições, devolve as que contiverem erros e atende os pedidos dos clientes, emitindo as respectivas faturas, que acompanham os livros. Uma cópia da fatura é encaminhada à Tesouraria, onde é feito o controle de pagamentos.
Sugerimos o acesso aos seguintes sites, referentes aos conceitos e práticas inerentes a técnica de Analise Essencial para desenvolvimento de sistemas.
Procure explorar todos os links existentes nas URLs abaixo relacionadas.
Todos os sites abaixo foram acessados em 26/01/2012
URL: http://javafree.uol.com.br/wiki/Analise%20Essencial
Site Wikipédia sobre Análise Essencial. URL: http://pt.wikipedia.org/wiki/An%C3%A1lise_essencial
Notas de Aula sobre Análise Essencial. URL: http://pt.scribd.com/doc/49617145/8/%E2%80%93-Analise-Essencial-de-Sistemas.
Notas de Aula sobre Análise Essencial. URL: http://sites.seven.com.br/stpd2000/upload/2001/1semestre/aps1/essencial.PDF
Nesta aula, você: 
A importância da Análise Essencial no contexto das necessidades a época de seu surgimento.
A metodologia de desenvolvimento de sistemas partindo pela identificação dos eventos que afetam um sistema.
A modelar sistemas como de respostas planejadas aos eventos que afetam o sistema (análise de eventos).
A proposta de trabalho da Análise Essencial dividido em Modelos Ambiental e Comportamental.
Como a análise essencial aproveitou todos os diagramas e modelos provenientes da análise estruturada e tentou solucionar os problemas de modelagem herdados.
As atividades do modelo Ambiental, da Análise Essencial.
Na próxima aula, estudaremos os seguintes assuntos: 
Conheceremos com mais detalhes das atividades pertinentes ao Modelo Comportamental do Modelo Essencial.

Outros materiais