Faculdade Batista de Administração e Informática

Curso de Sistemas de Informação
Engenharia de Software
Documento originado por:
Nome Número Matrícula
Cícero Marcelo da Silva 06 52
Granhan Bell de França Ribeiro 15 71
Robson S. Martins 33 48
Sandra R. C. Ramires 37 40
Revisão: 0 Data: 09/06/2000

 

ÍNDICE

  • 1 INTRODUÇÃO
    • 1.1 Referências do Sistema
  • 2 REQUISITOS DO SOFTWARE
  • 3 DIAGRAMA DE CONTEXTO
  • 4 DIAGRAMAS DE FLUXO DE DADOS
    • 4.1 DFD Nível 0
    • 4.2 DFD Nível 2
    • 4.3 DFD Nível 3
    • 4.4 DFD Nível 4
  • 5 DICIONÁRIO DE DADOS
    • 5.1 Entidades Externas
    • 5.2 Depósitos de Dados
    • 5.3 Fluxos de Dados
    • 5.4 Itens Elementares
    • 5.5 Estruturas de Dados
  • 6 ESPECIFICAÇÃO DE PROCESSOS
    • 6.1 Processo 1 - Pesquisar Informações dos CD's
    • 6.2 Processo 2.1 - Verificar Disponibilidade de CD
    • 6.3 Processo 2.2 - Efetuar Venda de CD's
    • 6.4 Processo 3.1 - Emitir Código de Barras
    • 6.5 Processo 3.2 - Informar Quantidade em Estoque
    • 6.6 Processo 3.3 - Incluir CD's
    • 6.7 Processo 3.4 - Efetuar Baixa do CD
    • 6.8 Processo 4.1 - Gerar Relatórios Gerenciais
    • 6.9 Processo 4.2 - Processar Relatórios de Cadastro de CD's
    • 6.10 Processo 4.3 - Processar Relatórios de Estoque
    • 6.11 Processo 4.4 - Processar Relatórios de Vendas
    • 6.12 Processo 4.5 - Processar Relatórios de Compras

 

1. INTRODUÇÃO

O software CD World tem por finalidade o controle das vendas em uma loja de CD's, proporcionando facilidade de operação e interação entre o consumidor e o vendedor e entre os departamentos da loja.

 

1.1. Referências do Sistema

Para a elaboração deste documento de Especificação de Requisitos de Software foram consultados os seguintes documentos em formato Power Point:

  • Aula 09
  • Aula 10
  • Aula 11

 

2. REQUISITOS DO SOFTWARE

Em reunião com o cliente, foram propostos alguns requisitos básicos para o software CD World, descritos a seguir:

  • O software CD World deve possibilitar que o consumidor possa consultar se um determinado CD está disponível na loja e seu preço, através da escolha de gênero musical (pop, rock, gospel, etc.) ou através de informações do título do CD ou do cantor/grupo. No caso de cantor/grupo e gênero musical, o software deve produzir no terminal de consulta uma listagem de todos os CD's que atendem a essa especificação, com os respectivos preços. Também deve ser informado ao consumidor o código do CD.
  • Quando a venda for efetuada, o sistema deve emitir um cupom fiscal contendo o código dos CD's, o título, cantor / grupo, a quantidade de cada CD e o respectivo preço.
  • O estoque deve ser controlado pelo software, de forma que se tenha registrado a quantidade de cada CD disponível no estoque da loja.
  • As vendas e as compras de CD pela loja deverão ser registradas pelo software, de forma a possibilitar acompanhamento do custo e da lucratividade, através de relatórios gerenciais.
  • Os relatórios gerenciais deverão possibilitar o conhecimento pelo gerente da loja de todas as informações processadas pelo software, de forma a proporcionar acompanhamento de custos, lucratividade por período, quantidade vendida por período, CD's mais e menos vendidos, volume de estoque, etc.

As informações que não foram especificadas pelo cliente serão assumidas pela equipe de desenvolvimento da maneira mais coerente possível, e serão comunicadas ao longo do projeto ao cliente.

 

3. DIAGRAMA DE CONTEXTO

Diagrama de Contexto

 

4. DIAGRAMAS DE FLUXO DE DADOS

4.1. DFD Nível 0

DFD-0

 

4.2. DFD Nível 2

DFD-2

4.3. DFD Nível 3

DFD-3

4.4. DFD Nível 4

DFD-4

 

5. DICIONÁRIO DE DADOS

5.1. Entidades Externas

Consumidor = * Pessoa interessada na aquisição de CD's *

Vendedor = * Funcionário da loja responsável pela venda de CD's *

Responsável pelo Estoque = * Funcionário responsável pela manutenção do estoque da loja *

Gerente da loja CD = * Gerente da loja de CD's *

 

5.2. Depósitos de Dados

CD's = {@ Cód + Título + Gênero + Cantor/Grupo + Preço_CD}

Estoque = {@ Cód + Qtd_Estoque}

Vendas = {@ Cód + Qtd_Venda + @ Data_Venda}

Compras = {@ Cód + Qtd_Compra + @ Data_Compra + Custo_CD}

 

5.3. Fluxos de Dados

Inform_CD = * Informações passadas pelo consumidor ao sistema para a verificação de disponibilidade e preço de um ou mais CD's * = [Título | Gênero | Cantor/Grupo]

Status_CD = * Informações sobre a disponibilidade e preço de CD's * = {Cód + Título + Gênero + Cantor/Grupo + Preço_CD}

Dados_CD = * Informações relativas ao cadastro de CD's * = {CD's.Cód + CD's.Título + CD's.Gênero + CD's.Cantor/Grupo + CD's.Preço_CD}

Quant_Estq = * Quantidade de CD's presentes no estoque da loja * = {Estoque.Qtd_Estoque}

Cód_Qtd_CD = * Código do CD a ser vendido e quantidade de CD's * = {Cód + Qtd}

Disp_CD = * Informações sobre a disponibilidade dos CD's em estoque * = {Qtd + Cód + Título + Gênero + Cantor/Grupo + Preço_CD}

Cupom_Fiscal = * Informações relacionadas à venda em forma de cupom fiscal * = {Qtd + Cód + Título + Cantor/Grupo + Preço_CD}

Tipos_CD = * Informações relativas ao cadastro de CD's * = {CD's.Cód + CD's.Título + CD's.Gênero + CD's.Cantor/Grupo + CD's.Preço_CD}

Qtd_Disp_CD = * Quantidade de CD's disponíveis no estoque * = {Estoque.Qtd_Estoque}

Inform_Venda = * Quantidade e código dos CD's vendidos * = {Cód + Qtd}

Dados_Vendas = * Informações dos CD's vendidos * = {Cód + Qtd_Venda + Data_Venda}

Cód_CD's = * Código do CD cadastrado * = CD's.Cód

Cadastro = * Informações para o cadastro de CD's * = {Cód + Título + Gênero + Cantor/Grupo + Preço_CD}

Emissão_Cód_Barra = * Código de Barras referente ao CD cadastrado * = Cód

Inclusão_CD = * Informações de um novo CD a ser cadastrado | Informações de um CD a ser incluído no estoque * = { [ Cód | Título + Gênero + Cantor/Grupo] + Preço_CD}

Inform_Estoque = * Informações de quantidade de CD's disponíveis em estoque * = {Qtd_Estoque}

Status_Estoque = * Informações de quantidade de CD's disponíveis em estoque * = {Estoque.Qtd_Estoque}

Entrada_Estoque = * Quantidade de CD's que entram no estoque * = {Qtd_Estoque}

Baixa_Estoque = * Quantidade de CD's que saem do estoque * = {Qtd_Estoque}

Saídas_Venda = * Quantidade de CD's vendidos * = {Vendas.Qtd_Venda}

Inform_Compra = * Informações relativas aos CD's comprados pela loja * = {Cód + Qtd_Compra + Data_Compra + Custo_CD}

Info_Globais_Sistema = * Informações repassadas ao gerente em forma de relatórios, sobre estoque, vendas e compras *

Registro_CD's = * Informações relativas ao cadastro de CD's * = {CD's.Cód + CD's.Título + CD's.Gênero + CD's.Cantor/Grupo + CD's.Preço_CD}

Registro_Estoque = * Informações relativas ao estoque de CD's * = {Estoque.Cód + Estoque.Qtd_Estoque}

Registro_Vendas = * Informações relativas à venda de CD's * = {Vendas.Cód + Vendas.Qtd_Venda + Vendas.Data_Venda}

Registro_Compras = * Informações relativas à compra de CD's pela loja * = {Compras.Cód + Compras.Qtd_Compra + Compras.Data_Compra + Compras.Custo_CD}

Relat_Cadastro_CD's = * Relatório contendo informações sobre o cadastro de CD's *

Relat_Estoque = * Relatório contendo informações sobre o estoque de CD's *

Relat_Vendas = * Relatório contendo informações sobre vendas de CD's *

Relat_Compras = * Relatório contendo informações sobre compras de CD's pela loja*

 

5.4. Itens Elementares

Cód = * Código do CD *

Título = * Título do CD *

Gênero = * Gênero musical do CD *

Cantor/Grupo = * Cantor ou grupo musical do CD *

Preço_CD = * Preço do CD ao consumidor *

Qtd_Estoque = * Quantidade de CD's presentes no estoque *

Qtd_Venda = * Quantidade de CD's vendidos *

Data_Venda = * Data em que o CD foi vendido *

Qtd_Compra = * Quantidade de CD's comprados pela loja *

Data_Compra = * Data em que o CD foi comprado pela loja *

Custo_CD = * Custo do CD comprado pela loja *

Qtd = *Quantidade de CD's *

 

5.5. Estruturas de Dados

Cantor/Grupo = [Cantor | Grupo]

 

6. ESPECIFICAÇÃO DE PROCESSOS

6.1. Processo 1 - Pesquisar Informações dos CD's

Caso Inform_CD seja

Gênero:
Pesquise Título e Cantor/Grupo e Preço em CD's.
Informe ao Consumidor lista com os CD's encontrados através de Status_CD.

Título:
Pesquise Gênero e Cantor/Grupo e Preço em CD's.
Informe ao Consumidor lista com os CD's encontrados através de Status_CD.

Cantor/Grupo:
Pesquise Gênero e Título e Preço em CD's
Informe ao Consumidor lista com os CD's encontrados através de Status_CD.

Fim-Caso

 

6.2. Processo 2.1 - Verificar Disponibilidade de CD

Se Cod em Cod_Qtd_CD está em CD's e Qtd_Estoque em Estoque >= Qtd em Cód_Qtd_CD

Então
Avise o Vendedor da disponibilidade do CD através de Disp_CD.
Passe Inform_Venda para Efetuar Venda de CD's.

Senão
Avise o Vendedor de que não há a quantidade ou o código especificado disponível no estoque.

Fim-Se

 

6.3. Processo 2.2 - Efetuar Venda de CD's

Emita o Cupom_Fiscal baseado em Inform_Venda.
Atualize Vendas com Dados_Vendas.

 

6.4. Processo 3.1 - Emitir Código de Barras

Leia Cod em CD's e imprima o código de barras correspondente através de Emissão_Cód_Barra.

 

6.5. Processo 3.2 - Informar Quantidade em Estoque

Leia Status_Estoque em Estoque e informe o Responsável pelo Estoque através de Inform_Estoque.

 

6.6. Processo 3.3 - Incluir CD's

Se Inclusão_CD não existe em CD's

Então
Cadastre o novo CD em CD's.

Senão
Inclua o CD no Estoque através de Entrada_Estoque.
Atualize Compras através de Inform_Compra.

Fim-Se

 

6.7. Processo 3.4 - Efetuar Baixa do CD

Leia Saídas_Venda a partir de Vendas e atualize o Estoque através de Baixa_Estoque.

 

6.8. Processo 4.1 - Gerar Relatórios Gerenciais

Una as informações de Relat_Cadastro_CD's e Relat_Estoque e Relat_Vendas e Relat_Compras e emita relatórios gerenciais através de Info_Globais_Sistema.

 

6.9. Processo 4.2 - Processar Relatórios de Cadastro de CD's

Processe as informações contidas em Registro_CD's e retorne Relat_Cadastro_CD's.

 

6.10. Processo 4.3 - Processar Relatórios de Estoque

Processe as informações contidas em Registro_Estoque e retorne Relat_Estoque.

 

6.11. Processo 4.4 - Processar Relatórios de Vendas

Processe as informações contidas em Registro_Vendas e retorne Relat_Vendas.

 

6.12. Processo 4.5 - Processar Relatórios de Compras

Processe as informações contidas em Registro_Compras e retorne Relat_Compras.