You are on page 1of 26

Mtodos de Construo de Software: Anlise Estruturada

Graduao em Informtica (2009)


Prof Itana Gimenes itana@din.uem.br Prof Thelma Elita Colanzi Lopes thelma@din.uem.br
1

Anlise Estruturada

Paradigma estruturado

Sistemas so vistos como processos que transformam dados Descrever o que o usurio requer Criar as bases para o projeto do software Definir um conjunto de requisitos que pode ser validado quando o sistema estiver construdo

Objetivos do modelo de anlise:


Anlise Estruturada

Princpios

Modelagem dos dados Modelagem dos processos que transformam os dados Particionamento do sistema Representao grfica

Anlise Estruturada

Mtodos

Tom DeMarco introduziu as idias iniciais Page_Jones Gane e Sarson Introduo de conceitos de sistemas de controle e tempo real

Ward e Mellor Hatley e Pirbhai

Diagramas
Descrio dos Dados Especificao dos Processos Diagrama de Entidade Relacionamento (DER) Diagrama de Fluxo de Dados (DFD)

Dicionrio de Dados

Diagrama de Transio de Estados (DTS) Especificaes de Controle

Modelagem de Dados

A modelagem de dados responde as seguintes questes:

Quais so os dados primrios a serem processados? Qual a composio dos dados? Quais os atributos que descrevem os dados? Quais os relacionamentos entre os dados? Aonde os dados residem atualmente? Qual a relao entre os dados e os processos que o transformam?
6

Modelagem de Dados

Modelo de Dados

Objetos de dado representao de informaes compostas (ex. Largura e Dimenso) que devem ser entendidas pelo software.

Ex. carro, pessoa, conta-corrente. Um objeto de dado contm apenas dados e no referncias s operaes que os manipulam.

Atributos definem as propriedades do objeto de dado. Pode ser nomes, descrio ou referncia. Relacionamentos os objetos de dados so conectados uns aos outros para representar a relao entre os objetos que permitem que o software armazene e responda as questes importantes para um sistema. Ex. Quantos empregados tm mais que 40 anos na Empresa X?
7

Modelagem de Dados: exemplo


Vrios

Possui Nome Endereo Idade Nmero da Carteira de Motorista CPF Marca Modelo Placa Cor

Modelagem de Dados
Relacionamentos

CARDINALIDADE: CARDINALIDADE a especificao do nmero de ocorrncias de um objeto que pode ser relacionado com o nmero de ocorrncias de outro objeto; um-para-um (1:1) => um marido pode ter somente uma esposa e vice-versa; um-para-muitos (1:N) => uma me pode ter muitos filhos, mas um filho tem apenas uma me; muitos-para-muitos (M:N) => um tio pode ter vrios sobrinhos, enquanto que um sobrinho pode ter vrios tios.

Modelagem de Dados
Relacionamentos

MODALIDADE: MODALIDADE indica se um objeto precisa ou no participar em um relacionamento; modalidade de um relacionamento = 0 (no necessria a ocorrncia do relacionamento, ele opcional); modalidade de um relacionamento = 1 (uma ocorrncia do relacionamento obrigatria);

10

Modelagem de Dados
Diagrama E-R (relacionamento entre carro e fabricante)

Fabricante
ID Nome Endereo ...
1

Carro constri
1..n

ID Modelo Motor Cor ...

11

Modelagem de Dados: exemplo de DER


licencia
1 1..n 0..n

armazena
1..n

Concessionria
1

Fabricante
1

constri

1..n

Carro
1..n

transporta
0..n

contrata

0..n

Transportadora
12

Modelagem de Dados: exemplo de DER Hierarquias

Carro

Europeu

Nacional

Asitico

Alemo

Sueco

Alemo

Francs/ Ingls

Japons

Coreano

13

Modelagem de Dados: exemplo de DER Associaes


eletrnica motor chassis interior direo

Carro Objetos de dados que modelam subsistemas individuais associados ao objeto Carro
14

Exerccio Biblioteca: modelo de dados

Um sistema de biblioteca possui usurios que podem ser alunos ou professores. Os usurios podem emprestar livros ou peridicos.

15

Modelagem de Processos

Diagramas de Fluxo de Dados (DFD)

Entidades externas: produtor ou consumidor de informaes que reside fora do sistema modelado. Processos: transformadores de informaes (funes) que residem dentro do sistema. Objetos de dados: dados que fluem no sistema Repositrio de dados: contm dados armazenados.

16

Modelagem de Processos: DFD


informao de sada Entidades Externas informao de entrada informao de sada Sistema Computacional Entidades Externas Entidades Externas

Entidades Externas

informao de entrada informao de sada

Entidades Externas

- sinais de sensores - dgitos/caracteres digitados por pessoas - pacotes de informaes transmitidas em uma rede - arquivos de dados

- display de um medidor - relatrio - contra-cheques - saldos bancrios

17

Exemplo DFD

Sensor 1

Sensor 2

Processo do Sensor 1

Processo do Sensor 2

Processo de Comparao

Processo da Vlvula 1

Processo da Vlvula 2

Vlvula 1

Vlvula 2

18

Exemplo DFD
Transformao das informaes
Pedidos Cliente Faturas com pedidos Processar Pedido de Livros Dados dos livros dados de cliente

Clientes

Depositando informaes
Dados do pedido Pedidos Livros

Consultando informaes

19

Exemplo DFD do livro do Yourdon: distribuidora de livros


Cliente
pedidos invlidos pedidos nome do cliente, endereo do cliente

Pedidos
detalhes dos pedidos detalhes de remessas

Depsito

livros

1. Receber Pedidos

2. Remeter Livros
nome do cliente, endereo do cliente livros faturas, declaraes

Clientes
nome do cliente, endereo do cliente

informaes de cobrana

Faturas

Nome do cliente, detalhes de faturas

3. Coletar Pagamentos

Cliente
pagamentos

20

Exerccio biblioteca: DFD

Faa o DFD do sistema de biblioteca

21

Modelagem de Comportamento

Diagramas de Transio de Estados (DTE)

Representa o comportamento do sistema mostrando os estados e os eventos que fazem o sistema mudar de estado. O DTE indica que aes que so iniciadas como conseqncia de eventos. Um estado qualquer modo de comportamento observvel. Ex. Ligado ou Desligado.

22

Exemplo:DTE
ociosa cheio e incio Lendo Comandos cpias feitas faa: ler comandos Recarregando papel Fazendo Cpias faa: gerenciar cpias vazia Faa: recarregar papel cheia

congestionada

Diagnosticando Problemas Faa: fazer diagnstico

no congestionada

23

Exemplo DTE: controle de pedidos da distribuidora de livros


Pedido validado faa: status_pedido := pendente remessa entregue validao=ok

validao pendente

Pedido submetido faa: exibir Refazer pedido

Pedido entregue faa: status_pedido:=pendente, emitir fatura

Pagamento Pedido pago faa: status_pedido := pago

24

Exerccio biblioteca: diagrama de estados

Faa um diagrama de estados para ilustrar o comportamento de uma parte do sistema de biblioteca

25

Concluses

Anlise estruturada ainda utilizada mas tem perdido espao principalmente para orientao a objetos.

26

You might also like