Existem muitos esquemas de notao comuns usadas pelos analistas de sistemas. O que est mostrado a seguir um deles: = composto de + e ( ) opcional (pode estar presente ou ausente) { } iterao [ ] escolha uma das opes alternativas ** comentrio @ identificador | separa opes alternativas na construo [ ] Definies Uma definio de elemento de dados apresentada com o smbolo =; neste contexto, o = lido como definido como, ou composto de, ou significa. Ento a notao
A = B + C
Poderia ser lida de qualquer das maneiras seguintes: Sempre que dizemos A, queremos dizer B e C A compe-se de B e C A definido como B e C Para definir completamente um elemento de dados, a definio incluir o seguinte: O significado do elemento de dados no contexto desta aplicao do usurio. Isso normalmente apresentado como um comentrio, utilizando-se a notao **. A composio do elemento de dados, se ele for composto por componentes elementares significativos. Os valores que o elemento de dados poder assumir, se ele for um elemento de dados elementar que no possa ser decomposto. Desse modo, se estivssemos construindo um sistema mdico que controlasse pacientes poderamos definir os termos peso e altura da seguinte maneira: Peso = *peso do paciente ao chegar ao hospital* *unidades: quilogramas, intervalo 1-200*
Alm das unidades e do intervalo, pode ser necessrio especificar a preciso como que o elemento de dados medido. Para um elemento de dados como preo, por exemplo, importante indicar se os valores sero expressos na forma inteira, at o ltimo centavo, etc.
Elementos de dados elementares
Elementos de dados elementares so aqueles que para os quais no existe decomposio significativa no contexto no ambiente do usurio. Isto muitas vezes, uma questo de interpretao e que deve ser explorada cuidadosamente com o usurio. Por exemplo, vimos na discusso acima que o termo nome poderia ser decomposto (ttulo, nome, ltimo nome...). Mas, talvez, em alguns ambientes nenhuma dessas decomposies seja necessria, relevante ou mesmo significativa. Quando os itens de dados elementares tiverem sido identificados devem ser introduzidos no dicionrio de dados. Como indicado acima, entre os caracteres *, descrevendo o significado do termo no contexto do usurio. Certamente, podero existir alguns termos que sejam auto explicativos,isto , termos cujos significado so universalmente os mesmos em todos os sistemas de informaes. Por exemplo, os seguintes termos podem ser considerados auto explicativos: Altura-atual Peso-atual Data-de-nascimento Sexo Telefone-residencial Neste casos, nenhum comentrio narrativo necessrio, pode-se utilizar ** para indicar um comentrio nulo. Entretanto importante especificar os valores e unidade de medida que o item de dados elementares pode receber.
Por exemplo: Altura-atual = ** *unidades: metros, intervalo: 1-2* peso-atual = ** *unidades: Kg, intervalo 1-200* data-de-nascimento = ** *unidades: dias desde 1, jan, 1900; intervalo 0-365000* sexo = *valores [M|F]* Elementos de dados opcionais Um elemento de dados opcional o que pode estar ou no presente como um componente de um elemento de dados composto. Existem muitos exemplos de dados opcionais: Um nome do cliente poder ou no incluir um nome intermedirio Um endereo do cliente poder ou no incluir uma informao secundria, como o numero do apartamento. Um pedido de um cliente poder conter um endereo de cobrana, um endereo para remessa ou ambos. Situaes como essas devem ser cuidadosamente conferidas com o usurio e devem ser documentadas no dicionrio de dados.
Por exemplo: Endereo-cliente = (endreo-remessa) + (endereo-cobrana) Significa que o endereo pode constituir-se de: Apenas o endereo de remessas Apenas o endereo de cobranas O endereo de remessas e o endereo de cobranas Nem do endereo de remessas nem do endereo de cobranas A ltima possibilidade um tanto duvidosa. bem mais provvel que o usurio pretenda que o endereo deva consistir em um endereo de remessas ou em um endereo de cobranas ou em ambos. Isto pode ser expresso da seguinte maneira: Endereo-de-cliente = [endereo-de-remessas| endereo-de-cobranas| endereo-deremessas + endereo-de-cobranas. Se o endereo de remessa for sempre necessrio e o de cobrana opcional, ento: Endereo-de-cliente = endereo-de-remessas + (endereo-de-cobranas) Iterao A notao de iterao usada para indicar a ocorrncia repetida de um componente de um elemento de dados. Esta lida como zero ou mais ocorrncias de . deste modo, a notao Pedido = nome-de-cliente + endereo-de-remessa + {item}
Significa que um pedido deve conter sempre o nome do cliente e o endereo de embarque, e conter, tambm zero ou mais ocorrncias de um item. Dessa maneira, poderemos lidar com um cliente que apresente um pedido envolvendo apenas um item ou dois itens, ou algum em fria compradora que decide pedir 397 itens diferentes.
Em muitas situaes reais, o usurio desejar especificar os limites superior e inferior da iterao. No exemplo acima, o usurio poder especificar que no faz sentido zero itens e colocar como mximo 10 itens. Podemos indicar como limites superior e inferior da seguinte maneira: Pedido = nome-de-cliente + endereo-de-remessa +1 {item} 10 Pode-se especificar apenas o limite inferior ou apenas um limite superior, ou ambos, ou nenhum. Deste modo, todas as especificaes seguintes so vlidas: A = 1{b} A = {b} 10 A = 1{b}10 A = {b} Seleo A notao de seleo indica que o elemento de dados consiste em exatamente uma escolha de um conjunto de opes alternativas. As opes so delimitadas por colchetes [ e ] e separadas pelo caracter de barra vertical |.
Exemplos tpicos so: Sexo = [Maculino|Feminino] Tipo de cliente = [Governo| indstria| Universidade| Outros] importante rever as opes de seleo com o usurio para garantir que todas as possibilidades foram identificadas.
Sinnimos Um sinnimo (um alias), como o termo indica, um nome alternativo para um elemento de dados. uma ocorrncia comum quando se lida com grupo diversificados de usurios, muitas vezes em departamentos ou localizaes geogrficas diferentes, que utilizam nomes diferentes para a mesma coisa. O sinnimo includo no dicionrio de dados por uma questo de completude, e deve ter uma referncia cruzada com o nome principal.
Por exemplo: fregus =*sinnimo de cliente* Observe que a definio de cliente no mostra a composio. Todos os detalhes devem ser mostrados apenas no principal para diminuir a redundncia. Mesmo que o dicionrio de dados relacione corretamente os sinnimos aos nomes de dados, deve-se evitar o uso de sinnimos sempre que possvel. No diagrama de dados, muito melhor, conseguir que os usurios concordem com um nome comum.
Apresentao do dicionrio ao usurio Os usurio devem ler o dicionrio inteiro, item por item, para certificar-se que este est correto? provvel que ele verifique a exatido em combinao com o modelo que est lendo. Existem alguns problemas de correo que o prprio analista pode se certificar, fazendo as seguintes perguntas: Todos os fluxo no DFD foram definidos no dicionrio? Todos os componentes dos elementos de dados foram definidos? Algum elemento de dados foi definido mais de uma vez? A notao correta foi utilizada em todas as definies? Existem algum elemento no dicionrio de dados que no esteja sendo referenciado em diagrama algum?