Вы находитесь на странице: 1из 22

Processo de anlise estruturada - Abordagem clssica

Desenvolver modelo fsico actual Modelo fsico actual

Modelos a desenvolver tendo em conta a abordagem clssica

Desenvolver modelo lgico actual Modelo lgico actual Desenvolver modelo lgico novo Modelo lgico novo Desenvolver modelo fsico novo Modelo fsico novo

Modelo fsico (Actualmente) Modelo de implementao Modelo do sistema que o utilizador usa no momento. Pode ser um sistema manual, automatizado ou uma mistura de ambos.

Aspectos mais comuns de detalhes de implementao: Sequenciao de actividades: Dados temporrios, redundantes ou derivveis; Validaes de dados e processos Modelo lgico (Actualmente) Modelo essencial Modelo dos requisitos puros ou essenciais do sistema, ou seja, sem detalhes de implementao.
Anlise Estruturada 21

A abordagem clssica baseia-se nos seguintes pressupostos: O analista de sistemas pode no conhecer aspectos da rea da aplicao, sendo a elaborao dos modelos, fsico e lgico, do sistema actual um meio de aprendizagem; O utilizador tem dificuldade em analisar o modelo abstracto do sistema, servindo a modelao do sistema fsico actual, simultaneamente, como um mecanismo de introduo do processo de anlise estruturada e como uma garantia, para o utilizador, de que analista est a modelar o sistema correctamente; A transformao do modelo lgico actual no novo modelo lgico, no requer grande esforo, nem trabalho desperdiado, quando o utilizador s quer acrescentar novas funes ou dados, a um sistema que j existe, permanecendo a maior parte do sistema intacto.

Motivos de insucesso da abordagem clssica Os pressupostos da abordagem clssica podem ser correctos em alguns casos, mas, na maior parte dos casos representam: grande dispndio de tempo e esforo quando analista especifica todos os aspectos; desperdcio de tempo e esforo pois grande percentagem do modelo fsico ser deixado de lado na sua transio para modelo lgico actual, devido a redundncia, e aspectos relacionados com validaes que no fazem parte do modelo lgico; uma influncia negativa quando diminui a tendncia de colocar em causa determinados procedimentos, possivelmente, menos adequados ou

desactualizados.

Anlise Estruturada 22

Processo de anlise estruturada - Modelo essencial


O modelo essencial o modelo do que o sistema tem de fazer, de forma a satisfazer os requisitos do utilizador, com o mnimo possvel de informao sobre como o sistema deve ser implementado.

O modelo essencial descreve: Poltica essencial ou lgica das actividades que tm de ser executadas; Contedo essencial dos dados armazenados e que circulam pelo sistema; Comportamento dependente do tempo essencial que o sistema possui para tratar sinais e interrupes do ambiente.

O modelo essencial constitudo por: Modelo ambiental Modelo comportamental

Modelos Ambiental

Ferramentas utilizadas Declarao de propsito Diagrama de Contexto (DC) Lista de Eventos

Comportamental

Diagrama Entidade Relacionamento (DER) Diagrama de Fluxo de Dados (DFD) Diagrama de transio de estados (DTE) Dicionrio de dados (DD) Especificao de Processos

Anlise Estruturada 23

Modelo ambiental
O modelo ambiental define: Limites essenciais do sistema Determinao do que faz parte do sistema, definindo fronteiras entre o sistema e o ambiente. Interfaces entre o sistema e o ambiente Determinao da informao proveniente do exterior e da informao que o sistema tem de produzir e enviar para exterior. Eventos externos Identificao dos eventos, ou estmulos, que ocorrem no ambiente, aos quais, o sistema tem de responder.

Exemplo considerado Pretende-se uma aplicao para automatizar os servios prestados por uma biblioteca, tendo em conta os seguintes aspectos: Um utente, no acto de inscrio, preenche uma ficha de leitor, que obrigatoriamente contm o nome, morada, BI, telefone e profisso. O leitor escolhe os livros que pretende consultar, podendo lev-los por um prazo a definir pela administrao da biblioteca, mediante o registo do respectivo emprstimo. Caso o livro no seja entregue no prazo devido, o utente ser sancionado com uma multa. Um emprstimo no concedido se o leitor possui multas por pagar ou livros que excederam o prazo de entrega. Devem ser implementadas pesquisas de ttulos, autores e de disponibilidade de um livro. A deciso de aquisio de livros baseia-se num relatrio, produzido mensalmente, dos emprstimos concedidos aos utentes. Os livros adquiridos so registados depois de catalogados.
Anlise Estruturada 24

Declarao de propsito do sistema


Consiste numa descrio textual breve da razo de ser do sistema. uma primeira tentativa de diferenciao entre o que est dentro e o que est fora do sistema.

Caractersticas de uma declarao de propsito: deve ser curta, de preferncia uma nica frase longa; deve fornecer uma viso muito geral do sistema, permanecendo ao mesmo tempo to especfica quanto possvel (no deve incluir generalizaes verdadeiras para todos os sistemas); deve ser completa; alguns analistas consideram que deve apresentar o resumo dos benefcios quantificveis visados com o novo sistema. Em projectos de elevada dimenso ser prefervel apresentar uma anlise de custos benefcios separadamente.

Exemplos de declarao de propsito: O propsito do sistema GB manter e disponibilizar informao sobre livros e leitores, controlar emprstimos e produzir relatrios de emprstimos. O propsito da GSP manter a informao necessria para a gesto de um stock de produtos, o que inclu controlo de stocks, processamento de encomendas e registo de movimentos.

Anlise Estruturada 25

Diagrama de contexto
Os principais aspectos que este diagrama especifica so: As pessoas, organizaes, ou sistemas com os quais o sistema comunica (terminadores); Os dados que o sistema recebe do ambiente e que tm de ser processados (fluxos de dados de entrada) Os dados produzidos pelo sistema e enviados para o ambiente (fluxos de dados de sada); As fronteiras entre o sistema e o resto do universo.

Um diagrama de contexto constitudo por terminadores, fluxos de dados, um s processo que representa todo o sistema, podendo ainda conter, fluxos de controlo e depsitos de dados externos.

Exemplo: Gesto de bibliotecas (simplificado)


Dilogo_emprstimo Pagamento_multa Multa Dilogo_pesquisa_autor

UTENTE
Ficha_leitor

Dilogo_pesquisa_ttulo

Livros_a_entregar

Dilogo_pesquisa_disp

Gesto de Bibliotecas
Relatrio
ADMINISTRAO

Lista_livros_adquiridos
EDITORA

Anlise Estruturada 26

Lista de eventos
Consiste na lista narrativa dos estmulos que ocorrem no exterior, aos quais o sistema tem de responder. Esta lista determina o propsito para o comportamento do sistema e d uma perspectiva do sistema diferente da do diagrama de contexto. Os eventos devem ser descritos sob o ponto de vista do ambiente, ou seja, por exemplo, prefervel usar Cliente envia pedido em vez de Chegada de pedido do cliente.

Os eventos podem ser classificados da seguinte forma: Evento orientado por fluxo (F); Evento temporal (T); Evento de controlo (C).

Evento orientado por fluxo (F) um evento associado a um fluxo de dados. O sistema notificado da ocorrncia do evento pela chegada de um conjunto de dados. Um evento orientado por fluxo corresponde a uma das entradas do diagrama de contexto. Contudo, nem todos os fluxos de dados de um diagrama de contexto correspondem a eventos, pois existem fluxos que so requeridos pelo sistema para que este possa processar um evento.

Exemplos: Cliente efectua encomenda (F) Cliente cancela encomenda (F)

Anlise Estruturada 27

Eventos temporais(T) Os eventos temporais so desencadeados pela passagem do tempo por um dado instante. No existem fluxos associados a este tipo de evento. Supe-se que o sistema possui um relgio interno que determina passagem do tempo. Apesar destes eventos no terem fluxos associados, podem desencadear um pedido de informao a terminadores, pedidos estes que no representam eventos.

Exemplos: Administrao requer relatrio de vendas(T) Clientes recebem facturas (T)

Eventos de Controlo(C) Podem ser considerados como casos especiais de eventos temporais que ocorrem num ponto do tempo imprevisvel. Um evento deste tipo no pode ser antecipado pela passagem do tempo, nem detectado pela chegada de informao. Este tipo de evento pode ser considerado como um fluxo de dados binrio e est associado a um fluxo de controlo. Conforme j foi referido, os fluxos de controlo so uma extenso utilizada na modelao de sistemas em tempo real.

Exemplo: Temperatura de frigorifico sobe para X (C)

Componentes adicionais de um modelo ambiental A natureza e complexidade de um sistema pode ditar a utilizao adicional de: Dicionrio de dados inicial que descreve fluxos e depsitos externos; Diagrama de entidade relacionamento dos depsitos de dados externos.

Anlise Estruturada 28

Elaborar diagrama de contexto antes ou depois da lista de eventos?


A primeira verso do diagrama de contexto no pr-requisito para construir a lista de eventos e pode ser desenhada numa etapa separada ou medida que se identificam os eventos. Na maior parte dos casos, mais fcil elaborar primeiro o diagrama de contexto, tendo em conta a descrio do utilizador das respostas que espera do sistema e das entradas que tm de ser fornecidas para produzir as respostas. Contudo, pode no ser fcil identificar terminadores e fluxos de entrada e sada do sistema. Neste caso, o ponto de partida poder consistir na elaborao do DER, que mostra objectos e seus relacionamentos. A partir da observao das actividades ou operaes que causam criao ou remoo de instncias ento possvel identificar eventos candidatos. A criao da lista de eventos permite assim levar ao desenvolvimento do diagrama de contexto.

Aspectos a ter em conta na elaborao da lista de eventos: Cada fluxo do diagrama de contexto necessrio para que sistema detecte a ocorrncia do evento, ou, corresponde a uma necessidade de informao do sistema; Cada fluxo de sada deve ser uma resposta a um evento; Cada evento no temporal deve corresponder a uma entrada, a partir da qual o sistema detecta a sua ocorrncia; Cada evento deve produzir uma actividade imediata de resposta, ou deve gerar armazenamento de informao a utilizar posteriormente, ou deve causar uma alterao de estado do sistema;

Anlise Estruturada 29

Quando se identifica uma resposta em vez de um evento, necessrio retroceder para determinar qual o evento que causa a resposta. Um candidato a evento detectado pelo facto de o sistema no ter de responder. Exemplo: Candidato a evento = Calcular valor da aco Evento real = Accionista requer uma posio de conta A lista de eventos, que causam a reaco do sistema, mais fcil de obter se tambm se consideram as respectivas respostas.

Exemplo lista de eventos para exemplo de gesto de stocks: Produo envia requisio de produtos (F) Fornecedor envia guia de remessa de produtos (F) Produo envia dados de novos produtos (F) Fornecedores recebem (mensalmente) encomendas (T)

Exemplo de lista de eventos para exemplo de gesto de bibliotecas: Utente inscreve-se como leitor (F) Utente solicita emprstimo de livros (F) Utente entrega livros (F) Utente paga multas (F) Utente pede informao por autor de livros (F) Utente pede informao por ttulo de livros (F) Utente pede informao de disponibilidade de livro (F) Administrao requer relatrio (mensal) de emprstimos (T) Editora envia livros novos (F)

Anlise Estruturada 30

Modelo comportamental
Consiste na modelao do comportamento interno do sistema, de forma a que este responda com sucesso ao ambiente. O desenvolvimento deste modelo contempla a elaborao do DFD, DER, DTE, DD, e especificao de processos.

Abordagem clssica
Consiste numa abordagem top-down, sendo constituda pelas seguintes etapas: 1. Construo do diagrama de contexto; 2. Construo de um DFD de nvel elevado, denominado por Diagrama 0, que envolve: identificao das principais componentes do sistema; elaborao do diagrama 0 onde os processos representam os principais subsistemas; 3. Elaborao de DFDs de nvel inferior, que contempla: decomposio sucessiva de cada processo num diagrama de nvel inferior, at se obter processos atmicos que no requerem mais divises; 4. Elaborao do DD e especificao de processos.

Dificuldades encontradas na utilizao desta abordagem: Paralisia na anlise Na maior parte dos sistemas complexos, no existe nenhuma indicao que guie o analista no desenho de um diagrama 0 apropriado, a partir do diagrama de contexto. Assim sendo, a construo do diagrama 0 tem um arranque demorado e este diagrama alterado, vrias vezes, ao longo do processo.
Anlise Estruturada 31

Dificuldade na diviso de trabalho O desenvolvimento de sistemas complexos , normalmente, elaborado por equipas com vrios analistas. A necessidade de diviso do trabalho pelos vrios analistas pode gerar parties foradas do sistema. Partio fsica arbitrria Em muitos casos um sistema baseia-se noutro sistema j existente, ou na informatizao de partes de uma organizao. A estrutura do sistema existente, ou da organizao, usada frequentemente como um critrio de determinao dos subsistemas do novo sistema. Contudo, essa partio pode no ser a melhor partio do ponto de vista funcional.

Abordagem Middle-Out
A abordagem proposta no uma abordagem top-down pura, nem uma abordagem bottom-up pura. Esta abordagem parte de um DFD inicial intermdio e estabelece que necessrio agrupar processos num nvel superior e decompor processos em nveis de detalhe inferiores. Na abordagem middle-out o desenvolvimento do modelo comportamental efectua-se em duas etapas: Desenvolvimento de modelo comportamental preliminar Envolve o desenvolvimento do DFD e do DER preliminares e a elaborao inicial das entradas no DD. Finalizao do modelo comportamental Organizao e refinamento do modelo comportamental preliminar com vista obteno do modelo comportamental final. Envolve a criao de DFD com vrios nveis de detalhe, finalizao do DER, finalizao do DD, finalizao do DTE e especificao de processos.

Anlise Estruturada 32

Construo de modelo comportamental preliminar


Estratgia para desenvolver a verso inicial de modelo comportamental, com o objectivo de criar uma verso inicial que sirva como base na construo da verso final do modelo comportamental.

Identificar respostas do sistema a eventos:


criar um processo para cada evento da lista; numerar os processos utilizando a numerao da lista de eventos; dar um nome ao processo que descreva a resposta que o sistema deve produzir na reaco ao evento; ligar fluxos de entrada, necessrios para que sistema possa produzir a resposta, e fluxos de sada que o sistema gera; As sadas e entradas podem consistir em fluxos para terminadores, ou em fluxos para depsitos de dados; desenhar depsitos a que o sistema tem de aceder e que permitem a comunicao entre processos; verificar se o DFD preliminar est completo e consistente, em relao ao diagrama de contexto e lista de eventos. Verificar, ainda, se cada entrada do DC est associada a uma entrada de um processo no DFD e verificar se cada sada produzida por um processo enviada para depsitos de dados ou uma das sadas existentes no DC.

Anlise Estruturada 33

Casos especiais: um evento que causa mltiplas respostas Cada resposta modelada por um processo e o fluxo, que representa o evento, diverge para cada um dos processos. Isto apropriado se todas as respostas usam o mesmo fluxo de entrada e somente se todas as respostas forem independentes, ou seja, nenhuma parte de uma das respostas necessria como entrada para produzir outra resposta. mltiplos eventos que causam a mesma resposta criar um s processo se a resposta idntica para os vrios eventos e se os dados de entrada e de sada forem idnticos para as vrios respostas aos eventos.

Ligao entre respostas de eventos


Os processos comunicam atravs de depsitos, pois os processos criados so respostas a eventos e os eventos so assncronos.

Desenvolvimento do modelo de dados inicial


Criar a verso inicial de DER, a partir dos depsitos definidos no DFD preliminar. Actualizar DFD preliminar em funo de DER. Alternativamente, esta etapa pode decorrer antes ou mesmo em paralelo com o desenvolvimento do DFD.

Anlise Estruturada 34

DFD preliminar do exemplo de gesto de bibliotecas


Evento 1 - Utente inscreve-se como leitor (F)
Utente
Ficha_leitor

1 Registar dados de leitor

Leitor

Evento 2 - Utente solicita emprstimo de livros (F)


Utente
Dilogo_emprstimo

Leitor

2 Verificar e registar emprstimo Emprstimo Livro Multa

Evento 3 - Utente entrega livros (F)


Utente
Multa Livros_a_entregar

Livro 3 Registar entrega de emprstimo

Emprstimo

Multa

Anlise Estruturada 35

Evento 4 - Utente paga multas (F)


Pagamento_multa

Utente

4 Registar pagamento de multas

Multa

Evento 5 - Utente pede informao por autor de livros (F)


Utente
Dilogo_pesquisa_autor

5 Pesquisar Livros por autor Autor_livro Livro Autor

Evento 6 - Utente pede informao por ttulo de livros (F)


Utente
Dilogo_pesquisa_ttulo

6 Pesquisar Livros por ttulo Autor_livro Livro Autor

Anlise Estruturada 36

Evento 7 - Utente pede informao de disponibilidade de livro (F)


Utente
Dilogo_pesquisa_disp

7 Pesquisar disponibilidade de livro Emprstimo Livro

Evento 8 - Administrao requer relatrio (mensal) de emprstimos (T)


Administrao
Relatrio_emprstimos

8 Emitir relatrio de emprstimos Emprstimo Livro

Evento 9 - Editora envia livros (F)


Editora
Lista_livros_adquiridos

9 Registar livros adquiridos Autor_livro Livro Autor

Anlise Estruturada 37

Finalizar modelo comportamental


A finalizao do modelo comportamental engloba: Estruturao do DFD em vrios nveis de detalhe (superiores e inferiores); Finalizao do DER; Finalizao do DD; Finalizao do DTE; Especificao de processos.

Estruturar DFD em vrios nveis


O DFD construdo possui um s nvel e muitos processos. Para organizar o DFD, necessrio agrupar processos relacionados num processo de um diagrama de nvel superior.

2 1|3 4

4 3 5 2|5

Os processos 1 e 3 foram agrupados no processo 1|3, e os processos 2 e 5 foram agrupados no processos 2|5
Anlise Estruturada 38

Critrios de agrupamento de processos


Os critrios a ter em conta no processo de agrupamento de processos so os seguintes: Cada agrupamento de processos deve envolver respostas relacionadas. Isto normalmente significa que os processos manipulam dados relacionados. Procurar oportunidades de esconder depsitos de dados que aparecem em nveis inferiores. Se existe um grupo de processos que acedem um depsito comum, e mais nenhum processo acede esse depsito, ento deve criar-se um processo de nvel superior que esconda o depsito de dados. Criar agrupamentos que possuam 7 +/- objectos.

O processo de estruturao de um DFD, em vrios de DFDs, decorre sucessivamente at se obter um DFD de nvel superior com +/- 7 objectos. Contudo, a restrio de no ter um DFD com +/- 7 objectos no deve ser o nico aspecto a ter em conta. Se existem oportunidades de agrupar processos devido a partilha de dados relacionados, ou devido existncia de depsitos locais, o processo de agrupamento deve prosseguir.

Exemplo: Agrupamento de processos do sistema de gesto de bibliotecas Processos agrupados 1, 2, 3 e 4 5, 6, 7 e 9 8 Depsitos escondidos multa e leitor Autor e Autor_livro Detalhe Diagrama 1 Diagrama 2 Anlise Estruturada 39

Diagrama 1 - Gerir emprstimos


Ficha_leitor

Utente 1.3 Registar pagamento de multas

Multa Pagamento_multa

Dilogo_emprstimo

1.1 Registar dados de leitor 1.2 Verificar e registar emprstimo

Livros_a_entregar

Multa Livro

Leitor

1.4 Registar entrega de emprstimo

Emprstimo

Diagrama 2 - Gerir livros


Dilogo_pesquisa_autor

Utente 2.1 Pesquisar Livros por ttulo

Dilogo_pesquisa_disp

Dilogo_pesquisa_ttulo

Autor_livro

Livro 2.4 Pesquisar disponibilidade de livro

2.2 Pesquisar Livros por autor Livro

Autor 2.3 Registar livros adquiridos

Emprstimo
Lista_livros_adquiridos Editora

Autor_livro

Anlise Estruturada 40

Diagrama 0

Dilogo_emprstimo Pagamento_multa Multa Livros_a_entregar Ficha_leitor

Dilogo_pesquisa_autor

UTENTE

Dilogo_pesquisa_ttulo

Dilogo_pesquisa_disp

1 Gerir emprstimos

Livro 3 Emitir relatrio de emprstimos

2 Gerir livros

Emprstimo

Emprstimo

Relatrio_emprstimos
ADMINISTRAO

Lista_livros_adquiridos
EDITORA

Anlise Estruturada 41

Decomposio de processos no primitivos


Normalmente, tambm necessrio criar nveis inferiores de detalhe se os processos existentes no DFD preliminar no forem primitivos. Esta necessidade surge quando os processos responsveis pela produo de respostas a eventos so demasiadamente complexos para descrever numa pgina. A deteco desta necessidade de decomposio por vezes evidente. Nos restantes casos a necessidade de decomposio s detectada quando se inicia a especificao de processos.

1.

2.

3.1.

3.2.

3.

3.3.

Critrios de decomposio de processos


Os critrios a ter em conta na decomposio de processos so os seguintes: Na maior parte dos casos a abordagem de decomposio funcional apropriada. Se existe um processo funcionalmente complexo, identificam-se subfunes e para cada cria-se um processo de nvel inferior; Nos restantes casos os fluxos de entrada e de sada proporcionam o melhor mecanismo para determinar a melhor diviso do processo em processos do nvel inferior.

Anlise Estruturada 42

Вам также может понравиться