• Nenhum resultado encontrado

Publicações do PESC Estudo e Realização de um Sistema Portátil de Cadastros Orientado para Usuário Leigo em Computação 2a. Parte - Utilização e Atualização

N/A
N/A
Protected

Academic year: 2021

Share "Publicações do PESC Estudo e Realização de um Sistema Portátil de Cadastros Orientado para Usuário Leigo em Computação 2a. Parte - Utilização e Atualização"

Copied!
97
0
0

Texto

(1)

ESTUDO E

REALIZAÇAO

DE UM SISTEMA

PORTATI-L

DE CADASTROS

ORIENTADO PARA

USUARIO

LEIGO EM COMPUTACAO

2a. PARTE

-

UTILIZACAO E ATUALIZAChO

Marinilza Bruno de Carvalho

TESE SUBMETIDA AO CORPO DOCENTE DA COORDENAÇÃO DOS PROGRAMAS DE

POS-GRADUAÇAO DE ENGENHARIA DA UNIVERSIDADE FEDERAL DO RIO

DE

JANEIRO COMO PARTE DOS REQUISITOS NECESSARIOS PARA A

OBTENÇAO

DO GRAU DE MESTRE EM CIÊNCIAS (M.Sc

.)

.

Aprovada por:

Prof. Pierre-Jean Lavelle

(Presidente)

Prof. Nelson Maculan ~ i 1 %

A o f . ~ o s é

Lucas M. Range1 Netto

RIO DE JANEIRO

,

RJ

-

BRASIL

(2)

BRUNO DE CARVALHO, MARINILZA

Estudo e Realização de um Sistema Portátil de

Cadastros Orientado para usuário Leigo em Computa-

ção

-

2a. parte

-

Utilização e Atualização Rio de Janeiro 1976.

VIII, 88p. 29,7cm (COPPE-UFRJ, M.Sc., Engenharia

de Sistemas e Computação, 1977)

Tese

-

Univ. Fed. Rio de Janeiro. Fac. Engenharia 1. Assunto: Sistema de Cadastro

I.

COPPE/UFRJ 11. Estudo e Realização de um Sistema Portátil de

Cadastros Orientado para Usuário Leigo em Computa-

(3)

D E D I C A T Ó R I A -

- - -

Ao

(4)

iii A G R A D E C I M E N T O S - - - Ao P r o f e s s o r P i e r r e - . J e a n L a v e l l e , p e l a o r i - e n t a ç ã o . Ao P r o f e s s o r Nelson Maculan F i l h o , p e l o - a p o i o , i n c e n t i v o e amizade. Ao CNPq, p e l a b o l s a c o n c e d i d a . A S u e l y e Angela p e l o t r a b a l h o de d a t i l o

-

g r a f i a .

Aos Amigos da COPPE e do NCE que de alguma forma c o n t r i b u i r a m p a r a a c o n s t r u ç ã o d e s s a t e s e e c u j a c i t a ç ã o nominal me é t ã o d i f í c i l .

(5)

R E S U M O

Muito se tem feito no estudo de bancos de da-

dos, visando a sistemas de grande complexidade e de grande

porte.

A

presente tese (segunda parte de um conjun- to) apresenta uma outra visão do problema: a da maior sim-

plificação sem perda de performance alcançável quando o pro-

blema pode se restringir a gestão de cadastros relativamente

simples feita diretamente por pessoas leigas em computação,

usando máquinas de pequeno porte.

Os enfoques são na independencia do programa

em relação

à

máquina usada, na facilidade de transportar es- se programa de uma para outra máquina de estrutura diferen-

(6)

S U M M A R Y The s t u d y of d a t a b a n k s i s made a i m i n g a t l a r g e and complex s y s t e m s g e n e r a l l y . T h i s t h e s i s ( s e c o n d p a r t of a t w o - p a r t s e t ) t r i e s a n o t h e r l o o k a t t h i s p r o b l e m : . t h e l a r g e s i m p l i f i c a t i o n w i t h o u t h l o s s o of p e r f o r m a n c e when t h e problem c a n be r e s t r i c t

-

ed t o d i r e c t c o n t r o l of r e l a t i v e l y s i m p l e s c a d a s t e r s by p e o p l e n o t k n o w l e d g e a b l e i n computer s c i e n c e u s i n g m i n i compu - t e r s .

The main p a r a m e t e r s . . a r e machine i n d e p e n d e n c y , e a s y program t r a n s p o r t t o d i f f e r i n g m a c h i n e s , and m o d u l a r i t y .

(7)

p á g i n a s AGRADECIMENTOS

...

iii RESUMO

...

i v ABSTRACT

...

INTRODUÇÃO

...

1

.

O P r o j e t o

.

C a r a c t e r í s t i c a s

...

3 1.1. D e f i n i ç ã o

...

3 1 . 2 . O b j e t i v o s

...

.

7 1 . 3 . C a r a c t e r í s t i c a s

...

7 1 . 4 . Acesso

...

1 0 2

.

A n á l i s e do Pedido de P e s q u i s a

...

2 . 1 . A n á l i s e da Ordem de P e s q u i s a

...

2 . 1 . 1 . Ordenar

...

2 . 1 . 2 . L i s t a r

...

2.1.3. Contar

...

2 . 2 . A n á l i s e do Dado a S e r Pesquisado

...

2 . 2 . 1 . D e f i n i ç ã o

...

2 . 2 . 2 . O b j e t i v o s

...

2.2.3. C a r a c t e r i s t i c a s

...

2 . 2 . 4 . Sequencia de Operações

...

(8)

v i i p á g i n a s 2.3. A n á l i s e da Condição de P e s q u i s a

...

2 5 2 . 3 . 1 . D e f i n i ç ã o

...

2 5 2.3.2. O b j e t i v o s

...

2 5 2.3.3. c a r a c t e r í s t i c a s

...

2 6 2.3.4. E t a p a s

...

2 6 3

.

Execução da P e s q u i s a

...

30 3.1. P r o c u r a dos Dados

...

32 3.2. T e s t e s

...

36 3.3. Contagem

...

4 0 3.4. Impressão

...

4 2 3.5. Ordenação

...

5 1 3.6. F i m de P e s q u i s a

...

5 1 4

.

A t u a l i z a ç ã o

...

4 . 1 . C a r a c t e r í s t i c a s

...

4 . 2 . ~ e q u ê n c i a de Operações

...

4.3. Fase Atua 1

...

...

4 . 4 . Fase Atua 2

...

4 . 5 . Fase Atua 3 4.6. Tipos de A t u a l i z a ç ã o

...

4 . 6 . 1 . I n s e r ç ã o

...

4.6.2. R e t i r a r

...

4.6.3. T r o c a r

...

(9)

v i i i 4 . 7 . O b s e r v a ç õ e s

...

...

C O N C L U S ~ E S

...

B I B L I O G R A F I A

...

ANEXO I

.

L i s t a de E r r o s ANEXO I1

.

M a n u a l do U s u á r i o

...

ANEXO I11

.

L i s t a d a s R o t i n a s

...

páginas 7 3

(10)

I N T R O D U Ç Ã O

- - -

Muito s e tem f e i t o n a á r e a d e computação s o - b r e a r q u i v o s em d i s c o e f i t a , e c a d a v e z maior a n e c e s s i d a d e de mão d e o b r a e s p e c i a l i z a d a p a r a a o p e r a ç ã o d e s s e s s i s t e m a s

.

Sempre que um novo s i s t e m a

6

i m p l a n t a d o , t e m

-

s e um p e r í o d o d e a d a p t a ç ã o e aprendizagem p o r p a r t e do u s u á r i o com c u r s o s e s p e c i a i s que o s preparam p a r a um novo t i p o d e t r a - b a l h o . Tudo i s t o , quando n ã o s ã o f e i t o s c o n t r a t o s de e s p e c i a

-

l i s t a s no ramo. M u i t a s empresas r e l u t a m em i m p l a n t a r um no - vo s i s t e m a d e v i d o a t a l c o n s e q u ê n c i a . Quem p o d e r á u t i l i z á - l o ? Somente a s empresas d e g r a n d e p o r t e e s t ã o p r e p a r a d a s p a r a t a l empreendimento. d E s t a c o n s e q u ê n c i a , d r á s t i c a , p a r a a l g u n s , e a c a r a c t e r í s t i c a p r i n c i p a l d e s t e t r a b a l h o , c u j a m a n i p u l a ç ã o i n - depende de programador.

E

um s i s t e m a f e i t o p a r a a t e n d e r a s ne - c e s s i d a d e s de um u s u á r i o l e i g o em computação. Seguindo a p e n a s a s i n s t r u ç õ e s de um m a n u a l , o u s u á r i o p o d e r á u t i l i z a r e a t u a l i - z a r o s i s t e m a . P o s s u e g r a n d e p o r t a b i l i d a d e , podendo s e r implan - t a d o em v á r i o s t i p o s d e máquina. Dois a r q u i v o s l i n e a r e s , g r a v a d o s em f i t a

,

s ã o e l a b o r a d o s , c o n t e n d o c a d a um, uma t a b e l a í n d i c e , que

6

s u a p r ó p r i a d e s c r i ç ã o e a massa de dados c o d i f i c a d o s . 0 s dados s ã o l i d o s em c a r t ã o , d e p u r a d o s e

s ó

e n t ã o a.montagem d o s a r q u i v o s

(11)

4

A

comunicação ao sistema pelo usuário e feita por cartão em formato livre e em linguagem corrente, se - guindo apenas algumas instruções de um manual.

0 s pedidos de informação podem ser uma lis

-

tagem, uma contagem ou uma ordenação de qualquer ou quaisquer

dados cadastrados e até mesmo sob condições estipuladas pelo

usuário.

Na atualização o usuário pode inserir da

-

dos, retirar ou trocar outros dados.

Na Ordenação, depende da máquina em que es - tiver implantado, o sistema permite utilizar qualquer tipo de

(12)

I . O PROJETO

-

C A R A C T E R ~ S T I C A S 1.1. D e f i n i c ã o A t r a v é s d e "Montagem e A n á l i s e C r i t í c a dos C a d a s t r o s " , p r i m e i r a p a r t e d e , E s t u d o e R e a l i z a ç ã o de um S i s t e m a p o r t á t i l de C a d a s t r o s O r i e n t a d o p a r a u s u á r i o L e i - go em computação um s i s t e m a d e c á d a s t r o s e l a b o r a d o s de f o r - ma t a l que p e r m i t a a montagem de q u a l q u e r t i p o de c a d a s t r o , i s t o

é ,

uma montagem que depende de como o c a d a s t r o

é

a p r e - s e n t a d o e n ã o d e q u a i s s ã o o s s e u s d a d o s .

C a d a s t r o s d e d i f e r e n t e s t i p o s d e d a d o s podem s e r p r o c e s s a d o s d e s d e que s e c o n s t i t u a m s e INDICE +

ARQUIVO, p a r t e s d i s t i n t a s e que j u n t a s formam o c a d a s t r o ( F i g . 2 )

.

No í n d i c e , encontram-se t o d o s o s t i p o s de dados que c o n s t i t u e m o c a d a s t r o . Se o dado

é

uma p a l a v r a ou um número, s e e s s a p a 1 a v r a . é um nome, um c a r g o ou um e n

-

d e r e ç o ; s e o &mero

é

um c ó d i g o , t e l e f o n e ou m a t r í c u l a , t o d a s e s t a s e s p e c i f i c a ç õ e s d o s dados g r a v a d o s e s t ã o no í n d i c e ( F i g . 3)

.

No i n d e x e s t ã o também a s l i s t a s d e c ó d i g o s d o s d a

-

d o s c o d i f i c a d o s ( F i g . 4)

.

No a r q u i v o tem-se o s dados p r o p r i a m e n - t e d i t o s c o d i f i c a d o s ou nã.0 ( F i g . 4)

.

(13)

O

projeto

6

justamente utilizar e atualizar um sistema de arquivos, elaborados na forma descrita, indepen-

dente de seu conteúdo (Fig. 1).

A

utilização consta de vários tipos de pez quisa. De uma forma geral o sistema de utilizasão projetado lis

ta, conta e ordena dados do sistema de cadastros sob quaisquer

condições (Fig. 9)

-

(Fig .l)

.

Quanto a atualização, permite inserir, reti

-

rar ou trocar dados do sistema de cadastros também sob quais

-

quer condições (Fig. 9)

-

(Fig .l)

.

(14)

Q

'PROJETO

FASE

1

DEPURA OS

PEDIDOS DE

PESQUISA

FASE

2

I

UTILIZA

I

SISTEMA

ATUALIZA

INSERIR

O

O SISTEMA

FIGURA

1

CADASTRO

FIGURA 2

(15)

INDEX

Representa um registro lógico (RL) .do arqui

-

vo codificado e cada RL possue um número de campos, todos nes

-

te formato.

NOME

+

NOME DO TIPO DE DADO

*

+

DELIMITADOR

A

+

BIT PARA A ORDEM LISTAR

= O +

NÃO LISTA

=

1

+

LISTA

B

+

BIT PARA TESTAR

= O +-

NÃO TESTA

= 1 +

TESTA

C

+

I N D I C A S E O D A D O D O A R Q U I V O É

ALFANUMERICO

(=A) OU NUMERICO

(=N)

D E

+

INDICA SE O DADO

É

LISTA EXCLUSIVA

(=LE), LISTA INCLUSIVA (=LI) OU NÃO

É

LISTA

(=PP)

F G

+

INDICA SE O DADO TEM TAMANHO FIXO(=TF)

OU TAMANHO VARI~VEL

(=TV)

H I

+

SE

É

FIXO, INDICA O TAMANHO

(=

08,04,22,etc..

.)

SE

É

V A R I ~ V E L

(=00)

JKLM

+

INDICA O ENDEREÇO DA LISTA DE CODIGOS.

(16)

1.2. Objetivo

A

utilização e atualização de cadastros é assunto bastante explorado atualmente, entretanto, apesar de

conhecido e muito específico, toda firma que implanta um no - vo sistema, precisa de meses, por vezes, anos para formar

pessoal especializado para opera-lo. Tal fato começou a one - rar por demais os sistemas computacionais.

A

solução seria suprir as deficiências do usuário em computação com um siste

ma de fácil manipulação por parte deste. Com esse objetivo

,

o sistema foi projetado. Feito para um usuário leigo em com - putação, sua operação não exige linguagem específica, nem

códigos tabelados, os pedidos de pesquisa são através de car - tões perfurados pelo próprio usuário em linguagem corrente

.

um sistema bem amplo que resolve o problema de operar qual - quer cadastro por qualquer usuário.

características

1.3.1. É um projeto elaborado para operar cadastros em gg

ral, qualquer que seja seu conteúdo ou mesmo tamanho. O sis

tema é de certa maneira "cego

"

para o que se tem gravado no arquivo ou para o número de dados gravados.

1.3.2. Portabilidade

é

outra característica de grande impor

-

tância. Não é um sistema projetado para um determinado tipo de computador. Possue condições de ser implantado

(17)

INDEiX D O C A D A S T R O N O M E a U O A T V P C C O O O M A T R I C U L A * O O N T F O 8 0 0 O O F U N C A O ~ ~ O ~ N L E T F O 4 0 4 6 O C n T E G O R I A ~ O O N L E T Ç 0 4 0 5 3 O T E M P O ~ DE, S E R V I C O *OON T F 0 4 C O n O L O T A C A O ~ ~ C O N L E T F 0 4 D 5 6 5 Q U A L I F I C A C A ~ ~ : 0 5 N L I T V C I O O 2 3 5 D y S C I PL I N A . N O M E A D O ~ O O N L E T F 0 4 0 3 7 5 I ~ I SC I PL I N A . O U T R A S 2 : O " N L I T V C C 0 3 7 S = 6 P R I M E I H O - G R A U - C O M P L E T Q / S t r U N D O - G R A U - C U F l P L E T O / L I C E N C I A T U R 4 - C U R T A / t I C E N C I A T U R R - P L E N A / € S P E C I A L I Z A C A O / M E S T R A D O / D O U T O R A D O / C U R S O - C E L D I R E T O R IA/ $MATE M A T I C A / P R O C E S S A P E N T O / P O R T U G U E S / G E O G R A F I A / H I S T O R I A / C I E P i C I A S / I N G L E S / F R A i d C E S / = $ D f R E T O R / P R O F E S S O R / C H E F E D E S E R V I C O / C O O R D E N A D O R / A S T E $ S O R / I P J S P E f O R / B S U B S T I T t J T O / E F E T I V O/ CQNT R A T A D O / $ S E C R E T A R I A D E E D U C A C A O / F E R R E I R A V I A N A / P A U t O D E f R n N T 1 N / I N S T I T U T O D E E D U C A 3 A O / / A R Q U I V O C O D í F I C A D C 'F'I'GURA 4

(18)

em v á r i o s t i p o s de máquina; d e v i d o em g r a n d e p a r t e a l i n g u a

-

gem F o r t r a n n a q u a l f o i implementado e a s u a forma modular

,

p o s s i b i l i t a n d o uma e s t r u t u r a d e o v e r l a y . 1 . 3 . 3 . A c a r a c t e r í s t i c a m a i s i m p o r t a n t e do p r o j e t o é j u s t a

-

mente a f a c i l i d a d e de o p e r a ç ã o do s i s t e m a p o r p a r t e do u s u á

-

r i o . A u t i l i z a ç ã o e a t u a l i z a ç ã o s ã o f e i t a s a t r a v é s de p e d i d o s d e p e s q u i s a p r e p a r a d o s p e l o u s u á r i o em linguagem c o r r e n t e s e - guindo d e t e r m i n a d a s r e g r a s d e p o n t u a ç ã o bem e x p l í c i t a s no ma - n u a 1 do u s u á r i o . O campo d e p e s q u i s a é g r a n d e , e x i g i n d o do

-

o p e r a d o r a p e n a s o conhecimento do t i p o do a r q u i v o g r a v a d o , o r t o g r a f i a e linguagem. 1 . 3 . 4 . O e s p a ç o d e memória é o u t r a c a r a c t e r í s t i c a de g r a n d e r e l e v â n c i a . O f a t o do s i s t e m a p o d e r o p e r a r c a d a s t r o s d e q u a l q u e r tamanho, l h e dá um campo d e a p l i c a ç ã o , t a n t o no ramo cien - t í f i c o como c o m e r c i a l , b a s t a n t e amplo, p o i s o e s p a ç o d e memó- r i a m u i t a s v e z e s s e t o r n a um enorme problema. Quanto a execu- ção d e um p e d i d o d e p e s q u i s a , o espaço d e memória n e c e s s á r i o a o s i s t e m a

é

p a r a o i n d e x do a r q u i v o e o v e t o r j a n e l a . Um c a d a s t r o

é

formado p o r r e g i s t r o s l ó g i

-

c o s , que

é

a s u a u n i d a d e b á s i c a . Um a r q u i v o d e "n" f u n c i o n á

-

a r i o s , p o s s u i "n" r e g i s t r o s l ó g i c o s , p o i s c a d a f u n c i o n á r i o e um r e g i s t r o l ó g i c o . O i n d e x r e p r e s e n t a n a memória, um r e g i s

-

t r o l ó g i c o do c a d a s t r o ,

6

p o r t a n t o n v e z e s menor que o c a d a s - t r o . Quanto a o v e t o r j a n e l a

é

um v e t o r d e tama - nho f i x o e s c o l h i d o p e l o u s u á r i o ( p o r exemplo 1000 c a r a c t e r e s ) ,

(19)

residente na memória do computador. Funciona como uma área de

trabalho, recebendo os dados do arquivo por partes, a propor-

ção que são requisitados na execução. Isto significa que todo

o cadastro passa pela memória, mas de tantos em tantos carac-

teres por vez, tempo em que estará sendo pesquisado. Desse mo

-

do o espaço de memória utilizado

é

pequeno e não há problema quanto ao tamanho do cadastro.

Outro problema de memória, que surge mui

tas vezes,

6

ao implantar o sistema numa determinada máquina.

Em

um mini-computador, provavelmente have - ria problema de espaço, se o sistema não fosse modular, o que

permite uma estrutura de overlay, possibilitando sua implanta

-

ção tanto num computador de grande porte como num de médio ou

um mini-computador.

1.4. Acesso ao Cadastro

Na utilização e atualização o acesso para

toda e qualquer pesquisa

é

feito através do index, sem o qual o arquivo codificado seria total e completamente indecifrável.

Ao receber um pedido de pesquisa, o sistema consulta o index

do cadastro, para verificar a validade da pesquisa, quais os

dados a serem pesquisados, onde se encontram e se estão codi-

ficados ou não.

O

arquivo codificado só

é

acessado durante a fase de execução.

O processo usado para acessar um dado do

(20)

APONTADORES

INDEX DADOS CODIFICADOS

INDEX DO CADASTRO

DADOS CODIFICADOS

(21)

neamente, o i n d e x e o a r q u i v o , i s t o é , a c a d a i n s t a n t e e x i s t e um dado do i n d e x e um dado do a r q u i v o s e n d o d e t e r m i n a d o , c a d a q u a l p o r um a p o n t a d o r ( F i g . 5 ) . Sendo o dado do i n d e x e x a t a

-

mente a d e s c r i ç ã o do dado a p o n t a d o no a r q u i v o . Ao i n í c i o d e c a d a p e s q u i s a o s a p o n t a d o r e s i n d i c a m o s p r i m e i r o s d a d o s , t a n t o do i n d e x como do a r q u i v o co

-

d i f i c a d o

.

P a r a s e c o n s e g u i r um dado do a r q u i v o , i n i - c i a l m e n t e , e l e d e v e r á s e r bem e s p e c i f i c a d o no p e d i d o d e p e s

-

q u i s a . T a l e s p e c i f i c a ç ã o

é ,

e n t ã o , comparada com o p r i m e i r o dado do i n d e x , i n d i c a d o . Caso a i g u a l d a d e n ã o s e v e r i f i q u e , o s a p o n t a d o r e s s ã o a t u a l i z a d o s , p a s s a n d o a i n d i c a r o s d a d o s s e - g u i n t e s . R e p e t e - s e o p r o c e s s o a t é que a comparação com o i n d e x s e j a v e r d a d e i r a , n e s t e p o n t o o dado c o d i f i c a d o i n d i c a d o p e l o a p o n t a d o r s e r á o dado d e s e j a d o .

A c o n s u l t a a o í n d i c e é f e i t a p e r c o r r e n d o

-

o t o t a l m e n t e e comparando c a d a um d e s e u s d a d o s com o dado s o b r e o q u a l s e d e s e j a a p e s q u i s a . No c a s o d e t o d o o í n d i c e t e r s i d o comparado e nenhum dado e n c o n t r a d o , mensagens d e e r - r o s ã o e n v i a d a s p e l o s i s t e m a .

(22)

BITS

-

TESTAR

-

LISTAR INDEX DO CADASTRO N O M E * O O ) 5 ) 5 T V O O O O O O M A T R I C U L A * O O N ) 5 ) 5 L I STAR LISTAR

T F O 8 O O O O F U N Ç Ã O * O O N L E T F 0 4 0 4 6 0

L I STAR

2

2'

TESTAR C A T E G O R I A * O O N L E T F 0 4 0 5 3 0 T E M P O . L I sTAR

3

L T E s T A R D E . S E R V I Ç O * O O N ) 5 ~ T F O 4 O O O O L I sTAR

f

L T E s T A R FIGURA 6

(23)

1 4

C A P I T U L O - I1

11.

ANALISE

DO PEDIDO DE PESQUISA

A a n á l i s e do p e d i d o de p e s q u i s a f e i t o a t r a

-

v é s de um ou m a i s c a r t õ e s p e r f u r a d o s é a f a s e p r i n c i p a l d a p e s q u i s a . N e s t a f a s e , onde o s c a r t õ e s s ã o l i d o s e a n a l i s a d o s um de c a d a v e z , t o d o e q u a l q u e r e r r o é a n o t a d o e mensagens e s - p e c í f i c a s s ã o e n v i a d a s a o u s u á r i o , p o s s i b i l i t a n d o e f a c i l i t a n do a c o r r e ç ã o d o s e r r o s . O p e d i d o d e p e s q u i s a tem

t r ê s

p a r t e s que o c a r a c t e r i z a m : ( i ) ordem d e p e s q u i s a

-

s ã o o s s e t e p r i m e i - r o s c a r a c t e r e s não b r a n c o s . ( i i ) t i p o ou t i p o s de d a d o s a serem p e s q u i s a d o s

-

t o d o s o s c a r a c t e r e s não b r a n c o s e n t r e a ordem d e p e s - q u i s a e o d e l i m i t a d o r d o i s p o n t o s ( ; ) . ( i i i ) c o n d i ç ã ~ ou c o n d i ç õ e s d e p e s q u i s a

-

t o d o s o s c a r a c t e r e s não b r a n c o s e n t r e o s d e l i m i t a d o r e s d o i s p o n t o s (;) e p o n t o e v í r g u l a ( ; )

.

O m o t i v o do s i s t e m a u t i l i z a r e s s e s d e l i m i - t a d o r e s é , j u s t a m e n t e , p a r a f a c i l i t a r o t r a b a l h o do u s u s á r i o . Com e s s e s s í m b o l o s , não há o problema d e f o r m a t o do c a r t ã o

,

para o p e d i d o d e p e s q u i s a . O u s u á r i o pode p e r f u r a r o c a r t ã o em q u a l q u e r c o l u n a e u s a r q u a n t o s c a r t õ e s d e s e j a r . Na l e i t u r a e d e p u r a ç ã o do p e d i d o de p e s q u i

-

s a , t r e s f a s e s s ã o d i s t i n t a m e n t e a n a l i s a d a s ( F i g . 7 ) : ( i ) a n á l i s e d a ordem de p e s q u i s a ( i i ) a n á l i s e do dado a s e r p e s q u i s a d o ( i i i ) a n á l i s e d a c o n d i ç ã o d e p e s q u i s a . Supondo que não t e n h a o c o r r i d o e r r o s , a o fim d e s t a f a s e o s i s t e m a t e r á a n o t a d o , q u a l a ordem d e p e s q u i s a

,

q u a l o dado a s e r p e s q u i s a d o , s o b que c o n d i ç ã o ou c o n d i ç õ e s d e

(24)

DIAGRAMA DE BLOCO

-

FASE

1

-

CARTA0 PES

QUI

SA

DA ORDEM DE

I

DA ORDEM

DE

PESQUISA

'r

DO DADO DE

INDICE RECE

BE QUAIS OS

DADOS PARA

PESQUISA

(25)

I

DA

CONDIÇAO

INDICE RECE

4-7

DOS D m S DE

ARMAZENAMENTO

DOS OPERANDOS

L-

FIGURA 7

(26)

v e s e r e f e t u a d a a p e s q u i s a , e t c . . . . também a s c o d i f i c a ç õ e s e d e c o d i f i c a ç õ e s n e c e s s á r i a s t e r ã o s i d o f e i t a s . Em suma o s i s - tema e s t a r á t o t a l m e n t e p r e p a r a d o p a r a a execução i m e d i a t a da p e s q u i s a . 2 . 1 . A n á l i s e da Ordem de P e s a u i s a É o e s t u d o d o s . s e t e p r i m e i r o s c a r a c t e r e s não b r a n c o s , que r e p r e s e n t a m a ordem de p e s q u i s a .

O pedido de p e s q u i s a r e c e b i d o p e l o s i s t e m a p a s s a p o r uma f a s e de compactação dos s e t e p r i m e i r o s c a r a c t e - r e s não b r a n c o s . I s t o s e deve ao f a t o do u s u á r i o u s a r uma linguagem c o r r e n t e e formato l i v r e , d e s s e modo, e l e pode i n

-

s e r i r uma q u a n t i d a d e i n c o n t á v e l d e b r a n c o s e n t r e a s l e t r a s do p e d i d o de p e s q u i s a . Gom o a u x í l i o da r o t i n a de compacta

-

ç ã o , a f a c i l i d a d e p e r m i t i d a aos u s u á r i o s , não d i f i c u l t a o processamento. A d e t e r m i n a ç ã o de s e t e c a r a c t e r e s não b r a n c o s é o número máximo de c a r a c t e r e s e n t r e a s o r d e n s e x i s t e n t e s . F e i t a a compactação e s s e s c a r a c t e r e s s ã o comparados com a s p o s s z v e i s o r d e n s de p e s q u i s a . A ordem s e n

-

do a c e i t a p e l o s i s t e m a , s e u c ó d i g o

6

armazenado e a a n á l i s e do c a r t ã o c o n t i n u a , d e s t a f e i t a passando a a n a l i s a r o dado a s e r p e s q u i s a d o .

Caso a ordem d e p e s q u i s a não c o n f i r a com

a

nenhuma d a s o r d e n s e x i s t e n t e s , a mensagem "ORDEM ERRADA" e e n v i a d a , o c o n t a d o r de e r r o s

é

a c r e s c i d o e a depuração do

(27)

M A T E M T I C A ; LISTAR

PROFESSOR, DISC1PL;INA NOMEADO =

ORDENAR MATRICULA : FUNÇÃO =

CONTAR NOME : IDADE > 30 ;

A : FQN@O = PROFESSOR ;

LISTAR NOME, MATRICULA

(28)

cartão continua. Evidentemente, no caso de uma ordem certa

,

perfurada errada, será uma ordem errada, não constando do

sistema.

2.1.1. Ordenar

Se a pesquisa pedida for uma ordenação, e

xistem algumas diferenças no processamento, durante a análi-

se da ordem de pesquisa.

Uma vez que a ordem foi aceita pelo siste - ma, seu código é comparado com o código de "ordenar". Caso não confira, o sistema procede como descrito no item anteri-

or, mas se o código é de ordenação, então o sistema troca esse código para o código da ordem LISTAR e liga uma chave

de ordenação. Isto se deve ao fato de que uma pesquisa de

ordenar dados sob alguma condição, significa, em primeiro lu - gar separar os dados que satisfazem a condição, e em segundo,

ordená-los. Desse modo, toda ordenação, implica numa pesqui-

sa de listagem e posteriormente numa ordenação dos dados a

serem listados. Assim sendo, o sistema transforma a pesquisa

ordenar em listar, ao fim da qual, a chave de ordenação

é

tes

-

tada. Se estiver ligada, a ordenação

é

processada e em segui - da a listagem dos dados

é

feita. Se não estiver ligada, sim - plesmente a listagem

6

feita.

A pesquisa ordenar pode-se apresentar co - mo (Fig.

-

9):

a. Ordenar um tipo de dado sob uma OU

(29)

derado somente se todas as condições forem satisfeitas.

b. Ordenar um tipo de dado, sempre. Neste

caso, não há condição e todos os dados do tipo referido na

pesquisa são ordenados.

2.1.2. Listar

--

Para a ordem de pesquisa listar, haverá

um bit aceso em cada campo do index que se queira listar

(Fig. 6). Desse modo no momento da execução as rotinas de

teste saberão qual o dado a ser listado.

Um pedido para listar pode se apresentar

como :

a. listar um ou vários tipos de dAdos sob

determinada ou determinadas condições (Fig.

--

9). Em caso de várias condições, o dado

6

listado somente quando todas as condições forem satisfeitas.

b. listar um ou mais tipos de dados, sem - pre. Neste caso não há condição a ser testada, de modo que a

listagem

é

feita para todos os dados do tipo referido na pes- quisa.

c. listar tudo. Este

é

o caso de um dump de memória, onde o arquivo

é

inteiramente decodificado e lis - tado.

A

listagem de dump, não tem o formato das listagens comuns. Trata-se de um arquivo completo, uma lista-

(30)

EXEMPLOS DE PEDIDOS DE PESQUISA

LISTAR NOME

:

F U N O

=

PROFESSOR

;

LISTAR NOME

,

MATRICULA

:

IDADE

>

30

,

FUNGO

=

SERVENTE

;

LISTAR NOME

:

SBiRE

;

LISTAR MATRICULA

,

FUNGO

:

SEMPRE

;

LISTAR

TUDO

;

CONTAR NOME

:

FUNGO

=

PROFESSOR

;

CONTAR MATRICULA

:

FUNPO

=

DIRETOR

,

TEMPO

.

DE

.

SERVIÇO

>

10

;

CONTAR NOME

:

SEMPRE

;

ORDENAR MATRICüLA

:

FUNGO

=

PROFESSOR

;

ORDENAR IDADE

:

TEMPO

.

DE

.

SERVIÇO

>

15

,

FUNGO

=

DIRETOR

;

ORDENAR NOME

:

SEMPRE

;

(31)

Desse modo o relatório de dump é feito por registros, isto

é ,

são listados sequencialmente os dados de cada registro do ar - quivo (Fig. 17).

2.1.3. Contar

4

Dos tres. tipos de pesquisa, "contar" e a

mais rápida. Tanto no tempo de processamento, pois não preci-

sa armazenar nenhum dado, como no tempo de E I S pois não tem relatório impresso.

A

pesquisa contar, depois de executada, - a penas imprime o título da pesquisa e o valor correspondenteao

número de dados que satisfazem as condições dadas.

Um pedido de contar pode-se apresentar co-

mo (Fig. 9) :

a. contar um ou mais tipos de dados sob

uma ou mais condições. Neste caso, tal como, na pesquisa lis

-

tar, para várias condições, o dado

é

contado quando todas as condições forem satisfeitas.

b.

contar um ou mais tipos de dados, sem

-

pre. Esta pesquisa, não possue condição alguma. Todos os da

dos do tipo referido são contados.

2.2. ~ n á l i s e do Dado - a ser Pesquisado

2.2.1.

E

o estudo dos caracteres do pedido de pesquisa conti - dos entre a ordem de pesquisa e o delimitador dois pontos(Fig.

(32)

8 ) . E s s e s c a r a c t e r e s , q u e , r e p r e s e n t a m o dado a s e r p e s q u i s a

-

-

d o , s ã o a n a l i s a d o s q u a n d o - a s i n t a x e , com r e l a ç ã o a p o n t u a ç ã o , o r t o g r a f i a e q u a n t o a l ó g i c a do s i s t e m a , com r e l a ç ã o a e x i s

-

t ê n c i a ou não d o s d a d o s d e p e d i d o s no s i s t e m a . Também a f a l t a do d e l i m i t a d o r

é

a n a l i s a d a e n e s t e c a s o , um e r r o é d e t e t a d o

.

A p r e s e n ç a d e q u a l q u e r e r r o , o r i g i n a a .impressão i m e d i a t a da mensagem d e e r r o r e s p e c t i v a . 2 . 2 . 2 . O s o b j e t i v o s d e s t e e s t u d o s ã o p a r a f a c i l i t a r t a n t o o p r o c e s s a m e n t o p o r p a r t e do s i s t e m a como a o p e r a ç ã o do mesmo p o r p a r t e do u s u á r i o . P a r a o s i s t e m a o o b j e t i v o

é

e v i t a r que o p e d i d o d e p e s q u i s a chegue a t é a f a s e d e execução com e r r o s no p r ó p r i o p e d i d o , que i m p e d i r á , e v i d e n t e m e n t e a execução comple - t a d a p e s q u i s a . Quando a f a s e d e e x e c u ç ã o tem i n i c i o , o c a d a s

-

t r o de d a d o s g r a v a d o s começa a s e r manipulado p e l o s i s t e m a . 1 ~ t o s i g n i f i c a d i z e r que a f i t a ou o d i s c o no q u a l o a r q u i v o e s

-

t á g r a v a d o começará a s e r l i d a ou l i d o . O c a s o do s i s t e m a de

-

t e t a r e r r o s que impessam a execução c o m p l e t a , d e p o i s d e s t a t e r s i d o i n i c i a d a , s i g n i f i c a que o c a d a s t r o em f a s e d e l e i t u - r a s e r á i n t e r r o m p i d o e a execução c a n c e l a d a . Se

é

um a r q u i v o em f i t a , e s t a d e v e r á s e r r e e m r o l a d a p a r a d a r i n i c i o a n o v a p e s - q u i s a . Se

é

em d i s c o também o p r o c e s s o d e l e i t u r a v o l t a a o i n i c i o . D e s n e c e s s á r i o s e t o r n a d i z e r , que o f a t o d o s e r r o s serem d e t e t a d o s a n t e s do i n i c i o d a execução p r o p o r - c i o n a m a i o r s e g u r a n ç a e r a p i d e z no p r o c e s s a m e n t o .

(33)

também e r r o s d e e x e c u ç ã o , e r r o s que - a parecem somente d u r a n t e t a l f a s e . Contudo e s s e s e r r o s s ã o ,

a

em s u a g r a n d e m a i o r i a , e r r o s d e s i s t e m a , e c u j a e x i s t ê n c i a e pouquissimo p r o v á v e l . São e r r o s que constam da l i s t a d e e r r o s ,

tem s u a s mensagens e s p e c i f i c a s e t o d a a s e q u ê n c i a normal d e um e r r o ao s e r d e t e t a d o . A i d é i a do e r r o . d e s i s t e m a , P o r m a i s i m p r o v á v e l que s e j a s u a e x i s t ê n c i a , s e deve ao f a t o , de que e s t e p r o j e t o f o i f e i t o de forma que nenhuma p e r g u n t a f i c a s - s e sem r e s p o s t a p o r m a i s a b s u r d a ou i n o c e n t e que f o s s e . Qual- q u e r h i p o t e s e f o i p r e v i s t a , mesmo que nunca venham a a c o n t e

-

c e r .

P a r a o u s u á r i o , o o b j e t i v o d a a n á l i s e do dado a s e r p e s q u i s a d o

é

o m a i s s i m p l e s e p r á t i c o . Tem como f i n a l i d a d e i n d i c a r ao u s u á r i o , p o r q u e a p e s q u i s a não f o i e f e

-

t u a d a e q u a l o e r r o p o r e l e c o m e t i d o , d a n d o - l h e p o s s i b i l i d a

-

d e s . d e c o r r i g i - l o e em menos tempo, uma v e z que a s mensagens e s p e c í f i c a s traduzem q u a l o e r r o d e t e t a d o .

2 . 2 . 3 . A c a r a c t e r í s t i c a d e s s a a n á l i s e c o n f u n d e - s e com um d e s e u s o b j e t i v o s que

é

j u s t a m e n t e p e r m i t i r ao u s u á r i o , uma c o r - r e ç ã o r á p i d a d e s e u s e r r o s .

2 . 2 . 4 . A d e p u r a ç ã o do dado a s e r p e s q u i s a d o começa com a com- p a c t a ç ã o d o s , c a r a c t e r e s . a serem e s t u d a d o s . Todos o s b r a n c o s são r e t i r a d o s formando uma s e q u ê n c i a d e c a r a c t e r e s não b r a n c o s que compõem o t i p o ou o s t i p o s de d a d o s a serem p e s q u i s a d o s

.

Numa e t a p a s e g u i n t e , e s t a s e q u ê n c i a

é

comparada com t o d o s o s dados do i n d e x do a r q u i v o . Uma v e z que no i n d e x e n c o n t r a m - s e t o d o s o s t i p o s de d a d o s e x i s t e n t e s .

(34)

Na h i p ó t e s e de v á r i o s dados a serem p e s q u i

-

s a d o s , s ã o t e s t a d a s também, a s v í r g u l a s e n t r e e s s e s d a d o s , c u - j a f a l t a ocasionam e r r o s , impedindo a e x e c u ç ã o . Cada dado do p e d i d o d e p e s q u i s a é comparado com t o d o s o s dados do i n d e x .

D u r a n t e a f a s e d e comparação o s d a d o s do i n d e x que conferem com o s dados de p e s q u i s a s ã o a s s i n a l a d o s com o c ó d i g o d a ordem d e p e s q u i s a p e d i d a . Desse modo a o

térmi

-

no d e s t a e t a p a , no i n d e x e s t a r ã o n o t a d o s o s d a d o s que devem s e r l i s t a d o s , c o n t a d o s ou o r d e n a d o s . Se nenhum dado do i n d e x f o r a s s i n a l a d o , s i - g n i f i c a e r r o no p e d i d o d e p e s q u i s a , o que a c a r r e t a , a c r é s c i m o no c o n t a d o r d e e r r o s e o e n v i o d a mensagem e s p e c í f i c a . 2.3. ~ n á l i s e d a Condicão d e P e s a u i s a 2 . 3 . 1 . É o e s t u d o d o s c a r a c t e r e s não b r a n c o s , do p e d i d o d e p e s q u i s a , c o n t i d o s e n t r e o s d e l i m i t a d o r e s d o i s p o n t o s ( : ) e p o n t o e v í r g u l a

.

E s s e s c a r a c t e r e s r e p r e s e n t a m a ou a s c o n d i - ç õ e s d e p e s q u i s a ( F i g . 8 )

.

I! uma a n á l i s e s i n t á t i c a , o r t o g r á f i c a e de c o n t e ú d o , com r e l a ç ã o ao c a d a s t r o g r a v a d o . a 2 . 3 . 2 . O s o b j e t i v o s s ã o v á r i o s , o m a i s p r á t i c o i n c l u s i v e , e a d e t e t e ç ã o de e r r o s do p e d i d o d e p e s q u i s a , a n t e s d e s e i n i c i

-

a r a execução d a mesma, dando ao u s u á r i o uma a v a l i a ç ã o comple t a do s e u p e d i d o , p o i s e s t a é a ú l t i m a f a s e d e d e p u r a ç ã o dos

(35)

cartões de pesquisa.

A

coerência dos dados de condição com o cadastro,

é

outro objetivo deste estudo bem como armazenar o dado condicionado, para futuros testes, marcar no index

que tipo de dado será testado e fazer as devidas decodifi

-

cações e codificações.

2.3.3. A característica básica 6 o fato desta análise de condições ser feita, sem testar a condição.

E

uma análise quanto as possibilidades de execução da pesquisa. 0s dados

de condição são testados para verificar se satisfazem as - e xigências operacionais do sistema e não para verificar as

condições ditadas pelo usuário. As condições do usuário uma

vez, satisfazendo a todas as condições do sistema, serão en - tão pesquisadas e processadas.

também o número de condições. O siste - ma permite no máximo dez (10) condições para cada pesquisa.

O que supos ser um limite bastante razoável. Um número de condições superior acarretará erro, mensagem de erro e in - terrupção na execução.

2.3.4. A fase de análise das condições possue tres (3) eta - pas I F i g . 7) :

i) marcação no index

ii) reconhecimento e armazenamento do o-

perador

(36)

i) Marcação do Index

Iniciando a análise da condição de pesqui - sa, o sistema faz a compactação dos caracteres não brancos

contidos entre os delimitadores dois pontos e ponto e vírgu-

la, caracteres estes que representam as condições da pesqui-

sa. Uma vez que cada condição

é

constituída de tipos de da dos, operadores e dados reais (Fig.

--

9 ) , a sequência de carac - teres compactados de uma ou mais condições apresenta-se na

mesma forma. Assim sendo o sistema passa a comparar os pri - meiros caracteres (que representam o tipo de dado) com os da

-

dos do index a fim de reconhecer qual o tipo de dado da con-

dição. Feitas as comparações sem conferir com nenhum dado do

index, a mensagem de "dado não existente" é indicada, o con- tador de erro 6 acrescido e a depuração continua. No caso do tipo de dado conferir com algum dado do index, o bit de tes - tar do dado do index em questão

é

assinalado (Fig. 6). Essa marcação é feita para facilitar a execução, pois quando esta tiver inicio bastará ao sistema verificar qual o dado do in - dex que possue a marcação para teste. Somente estes dados de - verão ser testados e pesquisados, o que evita maior perda de

tempo,tanto de execução como de entrada e saída.

ii) Reconhecimento e Armazenamento do Ope - rador

O sistema permite a utilização de tres

-

o peradores a saber: maior ( > ) , menor (<) ou igual ( = ) .

Uma vez que o tipo de dado já foi analisa - do, o sistema pesquisa se o caractes seguinte 6 um dos tres

(37)

operadores. Em caso afirmativo, o operador é armazenado e o sistema passa a etapa seguinte. No caso de não conferir, a

mensagem adequada

é

enunciada, o contador de erros

é

acresci - do e a depuração prossegue.

iii) Armazenamento do Dado de Condição

Nesta etapa o sistema armazena o dado de

pesquisa num vetor determinado.

O processo de armazenamento desse dado

utiliza um conjunto de tres vetores indexados em cadeia, is

-

to

é ,

uma composição de funções. O motivo desse processo, a princípio confuso, é devido ao fato do sistema permitir vá - rias condições de pesquisa, desse modo, podem haver até 10

(dez) dados de pesquisa a serem armazenados, e que precisam

ser indicados, que dado corresponde a tal condição, uma vez

que a execução será processada num tempo posterior.

Os vetores'ind6xados funcionam da se

-

guinte maneira:

Sejam VI, V2 e V3

-

vetores internos Sendo V1 e V2 numéricos e V3 alfanuméri

co. No vetor V1 são armazenados sequencialmente todos os ?n-

dices dos bits testar dos campos marcados no index. No vetor

V3 são armazenados, também sequencialmente, os dados reaisde

condição, separados por ( / ) barra no caso de mais de uma con

-

dição. No vetor V2 são armazenados, também sequencialmente , os índices dos primeiros caracteres de cada dado, armazenado

em V 3 .

(38)

seus contadores representam o número de condições. Dessa forma uma condição como:

...

: NOME = MARIA LUCIA, FUNÇÃO = PROFESSOR ;

Sabendo que os .índices dos bits testar dos dados NOME e FUNÇÃO do index são respectivamente 'a' e

'b',

teríamos os vetores.

V1 (1) = a la. condição v2 (I) = I la. condição V3 (1) = M V3 (2) = A V3 (3) = R v3 (4) =

I

V3 (5) =

A

V3 (6) =

L

v3 (7) =

u

v3 (8) = C v3 (9) =

I

V3 (10)=

A

v3 (11)=

/

Vi (2) = b 2a. condição v2 (2) = 1 2 2a. condição v3 (12) =

P

V3 (13) =

R

V3 (14) = O V3 (15) =

F

V3 (16) = E V3 (17) = S V3 (18) = S V3 (19) =

O

V3 (20) = R v3 (21) =

/

Com esta apresentação o sistema permite o armazenamento de inúmeros dados. Ao fim do qual verfica-se a existência de mais alguma condição de pesquisa e se não ultra- passa o limite de 10 condição, o que acarretaria erro para o sistema. ~ a m b é m o falta de vírgula, separando as condições - a carretaria erro, impedindo a execução da pesquisa. Feitas to - das essas verificações o sistema repete o processo de análise, no caso de haver mais condições, ou passa a execução propria

-

mente dita.

(39)

C A P I T U L O

-

I11

111. EXECUCÃO DA PESOUISA

Uma vez que a f a s e de l e i t u r a e d e p u r a ç ã o t e n h a s i d o c o m p l e t a d a , e nenhum e r r o d e t e t a d o , tem i n í c i o en

-

t ã o , a e x e c u ç ã o d a p e s q u i s a , f a s e em que o s dados do a r q u i - vo s ã o p r o c u r a d o s , a s c o n d i ç õ e s s ã o t e s t a d a s e o s r e l a t ó r i - o s e l a b o r a d o s ( F i g . 1 0 )

.

A s c a r a c t e r í s t i c a s p r i n c i p a i s r e s i d e m no f a t o do s i s t e m a

s ó

e n t r a r n e s t a f a s e , s e nenhum e r r o a n t e r i - o r houver s i d o d e t e t a d o e também o f a t o d e que somente n e s - t e p o n t o é que o a r q u i v o c o n d i f i c a d o

é

m a n i p u l a d o . A t é e n t ã o , o s i s t e m a t r a b a l h a somente com o s c a r t õ e s que dão e n t r a d a com o s p e d i d o s d e p e s q u i s a . Depois d e v e r i f i c a r que não e x i s - t e e r r o , o s i s t e m a p a s s a e n t ã o a l e r o a r q u i v o c o d i f i c a d o

,

no q u a l p r o c u r a o s d a d o s p a r a a s p e s q u i s a s , f a z o s t e s t e s e mais uma v e z t e s t a a p r e s e n ç a d e e r r o s . Nenhum sendo encon- t r a d o , o r e l a t ó r i o e n t ã o s e r á e l a b o r a d o dando p o r t e r m i n a d a a p e s q u i s a . E s s e s f a t o s concorrem p a r a um p r o c e s s a m e n t o m a i s

(40)

I N I C I O

(7

F I G U R A 1 0 - - - - 1 I

I

PROCURA DOS I DADOS I EXECUÇÁO I I I TESTES I I I I ORDENAR t - - - I - - A

I

I

P

CONTAR LISTm ORDENAGO

MENSAGEM FINAL

(41)

rápido e mais eficiente pois não se perde tempo em ler um ar

-

quivo, caso a pesquisa não possa ser efetuada e o mesmo não corre o risco de ser lido e relido sem necessidade, princi - palmente porque na maioria dos casos os arquivos são em fi

-

tas, cuja inconfiabilidade é bastante conhecida.

3.1. Procura dos Dados

Fase em que o arquivo codificado é lido

,

verificando-se qual o campo ou campos a serem listados, con-

tados, ordenados, atualizados ou testados com outros dados

(Fig. 11). -

Tem por finalidade apanhar o dado do ar - quivo. Este

é

o ponto base da procura dos dados, sendo tam

-

bém a característica mais importante, pois é a única fase

,

exceto a atualização, que tem acesso ao arquivo codificado

.

A

procura dos dados

é

feita através do in

7

dex, uma vez que este, possue assinalado cada campo (item 2)

que deverá ser testado, listado ou contado.

E

conveniente lem brar que a pesquisa de ordenar

é

transformada em listar e so - mente na elaboração do relatório

é

que a ordenação

é

feita

.

Quanto a atualização o index assinala todos os campos a se - rem testados, somente, e a atualização propriamente

é

feita posterior aos testes, caso sejam satisfatórios.

Desse modo o sistema percorre simultanea-

mente o index e o arquivo codificado, onde cada qual possue

(42)
(43)

MENSAGEM

7

v

D FIGURA 11 ACRESCE

o

CONTADOR

(44)

d e n t e s e n t r e o i n d e x e o a r q u i v o . I s t o s i g n i f i c a que a c a d a minuto o a p o n t a d o r do i n d e x i n d i c a um dado que

é

a e x a t a d e s c r i ç ã o do dado i n d i c a d o n e s s e mesmo i n s t a n t e p e l o a p o n t a d o r do a r q u i v o c o d i f i c a d o ( F i g

.

5 )

.

Como j f o i e x p o s t o no i t e m 2 , c a d a campo do i n d e x p o s s u e b i t s de t e s t a r e l i s t a r

( F i g . 6 )

.

A s s i m sendo o s i s t e m a p e r c o r r e o i n d e x e o a r q u i v o , v e r i f i c a n d o a c a d a campo e s s e s b i t s , que possuem o s s e g u i n t e s c ó d i g o s : b i t de t e s t a r

-

O

-

não t e s t a r o dado 1

-

t e s t a r o dado b i t de l i s t a r

-

O

-

não l i s t a r o dado 1

-

l i s t a r o dado O p r o c e s s o

é

r e p e t i d o p a r a c a d a r e g i s t r o l ó g i c o a t é que s e e n c o n t r e a l g o a p e s q u i s a r . Caso o r e g i s t r o l ó g i c o não possua nenhum campo a s s i n a l a d o , i s t o s i g n i f i c a que e s t e r e g i s t r o não deve s e r p e s q u i s a d o e o s i s t e m a p a s s a p a r a o r e g i s t r o

s e g u i n t e .

O p r i m e i r o b i t a s e r v e r i f i c a d o

6

o d e l i s t a r e em c a s o p o s i t i v o o dado r e f e r e n t e

é

armazenado num v e t o r d e t e r m i n a d o . A s e g u i r t e s t a - s e o b i t d e t e s t a r , e em c a s o p o s i t i v o o s i s t e m a p a s s a p a r a f a s e d e t e s t e s dando o s r e s p e c t i v o s r e s u l t a d o s . Terminada a f a s e d e t e s t e s , o con

-

t r o l e do s i s t e m a r e t o r n a a e s t a f a s e p a r a v e r i f i c a r o s r e - s u l t a d o s . Caso s e j a m s a t i s f a t 6 r i o s e nenhum e r r o d e t e t a d o o s i s t e m a t e s t a a ordem de p e s q u i s a :

-

s e f o r c o n t a r , a c r e s c e o c o n t a d o r ,

(45)

-

s e f o r l i s t a r , o s i s t e m a p a s s a p a r a t e s t a r o r e g i s t r o s e g u i n t e , uma v e z que o dado

j á

f o i armazenado e o r e l a t ó r i o s ó é e l a b o r a d o quando t o d o s o s r e g i s t r o s do a r

-

q u i v o t i v e r e m s i d o p e s q u i s a d o s .

Se o r e s u l t a d o não f o r s a t i s f a t ó r i o e a ordem d e p e s q u i s a f o r l i s t a r , a q u e l e dado armazenado

é

e n t ã o apagado do v e t o r , o mesmo a c o n t e c e n d o quando o s r e s u l t a d o s f o - rem s a t i s f a t ó r i o s mas f o r c o n s t a t a d a a p r e s e n ç a d e e r r o s .

Desse modo a " p r o c u r a d o s dados" é a f a s e m a i s i m p o r t a n t e d a e x e c u ç ã o , p o i s é quem manuseia com o s a r - q u i v o s c o d i f i c a d o s , apanhando o s dados e armazenando-os quan

-

do n e c e s s á r i o . É também a p a r t i r d e s t a f a s e que s e tem

inz

-

c i o a f a s e d e t e s t e s . Sendo a i n d a r e s p o n s á v e l p e l o r e c e b i m e n

-

t o dos r e s u l t a d o s e s u a p o s t e r i o r a n á l i s e . 3 . 2 . F a s e de T e s t e s São r o t i n a s que t e s t a m o s d a d o s a r q u i v a

-

d o s c o d i f i c a d o s ou n ã o , n u m é r i c o s ou a l f a n u m é r i c o s com a s con - d i ç õ e s d a p e s q u i s a .

I?

uma f a s e c u j a c a r a c t e r í s t i c a p r i m o r d i a l c o n s i s t e na r a p i d e z e e f i c i ê n c i a d o s t e s t e s .

E

e s s e n c i a l m e n - t e p r á t i c a , uma vez que t o d a a p r e p a r a ç ã o

j á

f o i f e i t a . Rece - bendo o s d a d o s , o s i s t e m a n e s t a f a s e , d e c o d i f i c a - o s ou não

,

conforme o c a s o , e o s compara com a s c o n d i ç õ e s j á armazena

-

d a s e p r e p a r a d a s ( i t e m 2 . 3 ) .

(46)

FASE DE TESTES DADO P A

RA

TES-

'4-

ALFA D E C O D I F I C A Ç ~ O RESULTADOS

(47)

E s t a f a s e tem i n í c i o quando chamada p e l a f a

-

s e d e p r o c u r a d o s d a d o s , d a q u a l r e c e b e o dado a s e r t e s t a d o e p a r a a q u a l e n v i a s e u s r e s u l t a d o s ( F i g . 1 2 ) .

O dado a s e r t e s t a d o tem t r e s v a r i a ç õ e s , p g dendo s e r um dado a l f a n u m é r i c o , um número comum ou um número c o d i f i c a d o . Nos d o i s p r i m e i r o s , dizemos que o dado

6

r e a l e a comparação com a s c o n d i ç õ e s p r o c e s s a - s e i m e d i a t a m e n t e . No Último c a s o , temos um dado c o d i f i c a d o que

6

d e c o d i f i c a d o e e n t ã o comparado com a s c o n d i ç õ e s . Desse modo vemos que o s t e s

-

t e s começam v e r i f i c a n d o s e o dado

6

numérico ou a l f a n u m é r i c o , d e p o i s s e é c o d i f i c a d o ou não e e n t ã o a comparação com a con- d i ç ã o d e p e s q u i s a

6

e f e t u a d a . Uma vez que o dado e s t á p r o n t o

a

p a r a a comparação, o s i s t e m a apanha a c o n d i ç ã o . P a r a t a n t o , e u t i l i z a d o o p r o c e s s o d o s t r e s v e t o r e s ,

j á

e x p o s t o no i t e m 2 . 3 , que s i t u a m q u a l a c o n d i ç ã o p a r a c a d a dado. O v e t o r V 1 (Fig.13) contém o í n d i c e do b i t t e s t a r , .o v e t o r V 2 contém o í n d i c e do 1 - a r a c t e r d a c o n d i ç ã o no v e t o r V3. 0 s í n d i c e s de V 1 e V 2 s ã o i g u a i s p a r a c a d a c o n d i ç ã o . Desse modo o s i s t e m a compara o v e t o r V 1 com o b i t t e s t a r do campo r e f e r e n t e ao dado. Quando

c o n f e r i r e m t e r e m o s o p o n t o e x a t o onde começa a c o n d i ç ã o p a r a s e r t e s t a d a .

No exemplo da F i g . 1 3 o s i s t e m a deve t e s

-

t a r o s campos M ~ ~ ~ e "TEMPO.DE.SERVIÇO", ç Ã ~ v a s s i m a f a s e de t e s t e s r e c e b e o dado r e l a t i v o a FUNÇÃO v e r i f i c a que

é

c ó d i - g o , d e c o d i f i c a - o e p r e p a r a - s e p a r a a p a n h a r a c o n d i ç ã o . E n t ã o , t e s t a V 1 a t é e n c o n t r a r o í n d i c e do b i t t e s t a r d e FUNÇÃO. Como o í n d i c e de V 1

é

o mesmo p a r a V 2 em c a d a c o n d i ç ã o , ao encon

-

t r a r em V 1 ( 1 ) , o b i t de t e s t a r e usando o mesmo í n d i c e I , p a -

(48)

INREtX D O C A D A S T R O f 4 L E T F 0 4 0 4 6 O C A T E G O R I A ~ O O N L E T F 0 4 0 5 3 O T E M P O a DE* S E R V I C O * O @ # F F 0 4 0 0 " O L D T A C A U * G O N L E T F O 4 U 5 6 5 O U A L I F Z C A C A O ~ ~ O O NL I T V ~ O ~ ~ ~ ~ O - ~ S C I P L I N A ~ N O M E A D O ~ O O N L E T F O ~ O ~ ~ ~ D ~ S C I P L I N A , O U T R A S * ; G p N L I T b C C 0 3 7 5 = $ P R I M E I H O - G R A U -COblPL E T O / S Z r U N D O - G R A U - C O P l P L E T O / L I C E N C I A T U R A - C U R T A / L ICEI\JCIATUR.~-PL ENA/ESPECIALI Z A C A O / M E S T R A D O / D O U T O R

A D O / C U R S O - CE-D I R E TOR I A ' / $ M A T E M A T I

CA/PROCESSAMEN

PESQUISA -r .LISTAR NCME, MATR~ CULA: TEMPO. DE. SERVIÇCb15, FUNI;ÃO=DIRETOR; CAMPOS A SEREM TESTADOS:

TEMPO DE SERVIÇO

-

BIT TESTAR = I 0 3 FUN@O

-

BIT TESTAR = 50 VETOR V 1 CONTEM OS ~NDICES DOS BITS TESTAR V l ( 1 ) = 1 0 3 V l ( 2 ) = ' 5 0

VETOR V2 CONTEM OS ÍNDICES DO 19 CARACTER DE CADA CONDIGO NO VETOR V3.

V2(1) = 1 V2(2) = 4

OS fNDICES DE V I e V2 SÃO IGUAIS PARA O A

CONDIDO.

WTOR V3 CONTEM AS C O N D I ~ ~ S

(49)

r a V2, temos em V 2 ( I ) , o í n d i c e d e V3 que contém o p r i m e i r o c a r a c t e r d a c o n d i ç ã o r e f e r e n t e ao dado. Se V l ( 1 ) = 5 0 ( b i t t e s t a r ) + I = 2 l o g o V2(2) = 4 é o í n d i c e de V3 onde começa a c o n d i ç ã o . E n t ã o V 3 ( 4 ) = D é o p r i m e i r o c a r a c t e r d a c o n d i ç ã o . E n c o n t r a d a a c o n d i ç ã o , a comparação com o dado tem i n í c i o . É bom l e m b r a r , que ambos devem s e r do mesmo t i p o , i s t o

é,

a l f a n u m é r i c o ou n u m é r i c o . No c a s o d e serem n u m é r i c o s , p r o c u r a - s e no v e t o r V4 o e l e m e n t o d e í n d i c e I , o mesmo u s a d o p a r a V 1 e V 2 . E s t e v e t o r contém o s o p e r a n d o s d a s

c o n d i ç õ e s usando o s mesmos í n d i c e s que V 1 e V 2 . Conhecendo o o p e r a n d o d a c o n d i ç ã o , o s i s t e m a t e s t a s e o dado

é

maior, menor ou i g u a l a c o n d i ç ã o , d e a c o r d o com o o p e r a n d o encon

-

t r a d o

.

P a r a o c a s o d o s dados serem a l f a n u m é r i c o s a comparação

é

f e i t a t e s t a n d o - s e c a r a c t e r p o r c a r a c t e r , uma v e z que n e s t e c a s o o r e s u l t a d o s a t i s f a t ó r i o

,

e e v i d e n t e m e n - t e ,

é

que a c o n d i ç ã o c o n f i r a com o dado. Terminados o s t e s - t e s , sejam q u a i s forem o s r e s u l t a d o s o s i s t e m a r e t o r n a a f a s e de p r o c u r a d o s d a d o s , onde é f e i t a a n á l i s e d o s r e s u l t a

-

d o s .

3 . 3 . Contagem

A p e s q u i s a d e c o n t a r

é

a mais s i m p l e s e r á p i d a , uma v e z que não e x i s t e r e l a t ó r i o a s e r e l a b o r a d o

,

nem dados p a r a a r m a z e n a r . A s c o d i f i c a ç õ e s ou d e c o d i f i c a ç õ e s

(50)

CONTAGEM

LEITURA E DEPU

-

RAPO DO PEDIDO

r - - - - - -

PROCURA DE DADOS

TESTES

0

FIGURA

14

(51)

f e i t a s s ã o e x c l u s i v a m e n t e p a r a o s t e s t e s .

A contagem c o n s i s t e em l e r e d e p u r a r o p e

-

d i d o d e p e s q u i s a , p r o c u r a r o s d a d o s , t e s t a r e c o n t a r aque

-

l e s que s a t i s f a z e m a s c o n d i ç õ e s ( F i g . 1 4 ) .

O r e s u l t a d o d a p e s q u i s a

é

dado numa Única mensagem do t i p o "EXISTEM X DADOS QUE SATISFAZEM AS

EXIGEN-

CIAS", onde X é o número e n c o n t r a d o .

E s s a p e s q u i s a s e g u e a l i n h a do p r o j e t o com f á c i l o p e r a ç ã o , r a p i d e z e e f i c i ê n c i a na e x e c u ç ã o . O s t i p o s de contagem s ã o v á r i o s , dependendo do c a d a s t r o a r q u i v a d o ( v e - j a m a n u a l ) . A p a r t e m a i s p r á t i c a do p r o j e t 9 , é a r e s

-

p o s t a a o s p e d i d o s d e p e s q u i s a com a s o l u ç ã o d o s p r o b l e m a s do u s u á r i o

.

A i m p r e s s ã o e l a b o r a o s r e l a t ó r i o s d o s p g d i d o s de p e s q u i s a l i s t a r e o r d e n a r c o n s t r u i n d o r e l a t ó r i o s or - denados ou não de a c o r d o com a p e s q u i s a .

No c a s o da p e s q u i s a s e r o r d e n a r , uma c h a v e

é

l i g a d a e t r a n s f o r m a - s e a p e s q u i s a em l i s t a r .

o s i s - tema p r o c e d e n a e x e c u ç ã o d a mesma, depurando o p e d i d o d e p e s - q u i s a , p r o c u r a n d o e armazenando o s dados a serem l i s t a d o s

,

t e s t a n d o - o s e f i n a l m e n t e o s r e l a t ó r i o s . A n t e s porém de e l a - b o r á - l o s , o s i s t e m a v e r i f i c a a chave de o r d e n a ç ã o s e e s t a

(52)

LEITURA E

DEPURAÇÃO

DO PEDIDO

O

PROCURA DOS

DADOS E AR

-

MAZENAMENTO

B

TESTES

TT

SORT

o

F

RELATORIOS

FIGURA

15

(53)

ligada

.

Em c a s o p o s i t i v o , o s o r t

6

a c i o n a d o e n v i a n d o p a r a a i m p r e s s ã o um a r q u i v o o r d e n a d o . Caso a chave não e s t e j a l i g a - d a , o s i s t e m a i n i c i a a e l a b o r a ç ã o d o s r e l a t ó r i o s com o a r q u i - vo n a forma em que e s t i v e r ( F i g . 15)

.

P e l o modo como e s t á p r e p a r a d a a i m p r e s s ã o tem como o b j e t i v o , f a c i l i t a r a s u a compreensão. São r e l a t ó r i - o s s i m p l e s , p r á t i c o s , sem m u i t a s l i n h a s e c o l u n a s que comu

-

mente confundem o u s u á r i o . Com e s t a s c a r a c t e r í s t i c a s , o s r e

-

l a t ó r i o s foram d i v i d i d o s em 4 t i p o s d i v e r s o s podendo c a d a um d e l e s e s t a r ordenado ou não conforme o p e d i d o d e p e s q u i s a .

0 s r e l a t ó r i o s e l a b o r a d o s s ã o d o s t i p o s :

i . ~ e 1 a t Ó r i . o número 1 ( F i g . 1 6 )

-

6

o r e l a

-

t ó r i o i m p r e s s o mais s i m p l e s e comum. Cada l i n h a c o r r e s p o n d e a um r e g i s t r o l ó g i c o e c a d a c o l u n a , o s d i f e r e n t e s campos d e s t e r e g i s t r o que t i v e r e m s i d o p e s q u i s a d o s . A s c o l u n a s s ã o s i

-

m e t r i c a m e n t e c e n t r a d a s , c a d a q u a l com um t í t u l o r e f e r e n t e ao campo do r e g i s t r o . i i . R e l a t ó r i o número 2 ( F i g . 1 6 )

-

e s t e r e

-

l a t ó r i o s a t i s f a z a n e c e s s i d a d e de mais uma l i n h a p a r a c a d a % campo do r e g i s t r o . N e s t e c a s o c a d a r e g i s t r o pode t e r d u a s ou mais l i n h a s e a s c o l u n a s d a mesma forma que no r e l a t ó r i o nÜ

-

mero 1, s ã o o s campos d o s r e g i s t r o s que foram p e s q u i s a d o s .

(54)
(55)
(56)

... .. . - r-l <._r- L T C -:. -- *-- .'.. C-. r* ,.- - '..i . C.#

(57)
(58)

l j a * a :-+i a Ls. < rx r n .?v .-. .-, -1.... + ;z: $--. C"> * -r& %.. ,z

-

-t M a v ut 7 .i *... ,L. 3 W t i - ;Zf U jx & +I Li. s S W Z ,r 5:

.--,

ui

*

*I L?. IY t W r i , -a <? .<51

(59)

o caso da pesquisa especial para "listar tudo", é ottdump de memória", onde todo o arquivo

é

impresso em relatório. Esta pesquisa é muito comum e até mesmo conveniente, seguindo uma pesquisa de atualização. No caso do dump, o relatório não se

faz em linhas e colunas. É mais simples, é feito por regis

-

tro, isto é , cada registro é totalmente impresso, na ordem em que está arquivado com um campo por linha, ou mais se ne

-

cessário. Estes registros são numerados. Ao final dessa pes- quisa o usuário terá todo o arquivo e com o número de quan - tos registros.

iv. Relatório número

4

(Fig. 17)

-

este relatório tem como característica a continuação em outra pá-

gina. Isto significa, um relatório do tipo número 1 ou 2

,

mas que nem todas as colunas podem constar na mesma página

.

Neste caso, o sistema repete sempre a primeira coluna e a

seguir aqueles campos que ainda não foram impressos.

Por exemplo, na fig. 17, temos um relató

-

rio com 5 campos, dos quais somente tres somam todo o espaço

de uma página. Desse modo, a primeira página é elaborada com os tres primeiros e repetindo-se a primeira coluna e mais os

campos restantes compõe-se a segunda página. Tal processo de - ve se repetir quantas vezes for necessário, para a impressão de todos os dados, e sempre repetindo em cada página a pri - meira coluna, visto ser esta, o ponto de conexão entre os da

-

dos impressos. Este tipo de relatório

é

chamado de paginação múltipla.

Referências

Documentos relacionados

O objetivo deste artigo é justamente abordar uma metodologia alternativa para a elaboração de análises contábeis e financeiras, denominada de balanço perguntado e

a) política nacional de desenvolvimento do turismo; b) promoção e divulgação do turismo nacional, no país e no exterior; c) estímulo às iniciativas públicas e privadas de

Algumas culturas como a batata, beterraba, salsão e alho poro, exigem a amontoa para que as mesmas se desenvolvam com mais qualidade, especialmente os tubérculos e raízes que

Ao realizar o pagamento de uma compra nas Lojas Fisicas, poderá solicitar receber um recibo em formato electrónico.. A partir desse momento, poderá realizar trocas ou

A transudação pode ser denominada como a manifestação do volume de líquido ao passar através das paredes da cápsula na medida de um intervalo de tempo considerado. As

Era de conhecimento de todos e as observações etnográficas dos viajantes, nas mais diversas regiões brasileiras, demonstraram largamente os cuidados e o apreço

Desde logo, a nossa compreensão e interpretação da importância funcional e ritual das lamentações públicas das carpideiras e dos carpideiros egípcios é sublinhada pelo

Para identificar quais treinamentos serão necessários para cada trabalhador ou equipe dentro de uma organização desenvolver um programa eficaz de T&amp;D, pode-se buscar