20
Projeto Exemplo LOCADORA Table of Contents 1. Propósito 2. Escopo 3. Narrativas de Uso 4. Stakeholders e Interesses 5. Acionadores 6. Atores e Objetivos 7. Casos de Uso de Negócio 8. Casos de Uso do Sistema 9. Links Esta página contém a documentação do projeto exemplo LOCADORA feito na ferramenta SpeedCASE, além disso exemplificamos aqui o uso do SVN para controle de versão e o TRAC como front-end web, ambas ferramentas também são utilizadas pela Tecnospeed em seus serviços de consultoria de desenvolvimento de software. A implementação do projeto da locadora feito no SpeedCASE pode ser baixado na nossa página de Downloads .

Dicas diagrama de casos de uso

  • Upload
    ufrn

  • View
    2.254

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Dicas diagrama de casos de uso

Projeto Exemplo LOCADORATable of Contents

1. Propósito 2. Escopo 3. Narrativas de Uso 4. Stakeholders e Interesses 5. Acionadores 6. Atores e Objetivos 7. Casos de Uso de Negócio 8. Casos de Uso do Sistema 9. Links

Esta página contém a documentação do projeto exemplo LOCADORA feito na ferramenta SpeedCASE, além disso exemplificamos aqui o uso do SVN para controle de versão e o TRAC como front-end web, ambas ferramentas também são utilizadas pela Tecnospeed em seus serviços de consultoria de desenvolvimento de software.

A implementação do projeto da locadora feito no SpeedCASE pode ser baixado na nossa página de Downloads.

Para entender como aconteceu a execução do projeto, desde a fase inicial até termos o produto acabado você pode visitar a página Execução do Projeto.

Page 2: Dicas diagrama de casos de uso

Visão GeralEste documento tem o objetivo de prover uma descrição da organização do projeto bem como seu propósito. Além disso abordará a forma como o sistema aqui descrito será construído.

Propósito

Este projeto procura exemplificar a aplicação da ferramenta SpeedCASE no processo de desenvolvimento de software, neste caso em particular em um pequeno software para controle de vídeo-locadoras. O objetivo principal é criar um projeto exemplo que possa servir de referência a todos os usuários da ferramenta SpeedCASE sejam eles iniciantes ou usuários avançados, por meio de um exemplo prático que aborde de maneira clara a maior gama de recursos da ferramenta possível.

Escopo

Por se tratar de um demonstrativo frisa-se que não está no escopo deste projeto produzir um software de nível comercial e nem se dará suporte qualquer a este tipo de iniciativa. Contudo esta prática não

Page 3: Dicas diagrama de casos de uso

será vedada aos nossos usuários, ou seja, se for de sua vontade e total responsabilidade o usuário poderá colocar o produto deste projeto no mercado.

Na prática, o sistema tem a intenção de informatizar os processos do negócio de locação de filmes. Para tanto controlará empréstimos de filmes associando-os a clientes previamente cadastrados para que, com base nesta informação, possa prover relatórios sobre comissões dos balconistas que locaram os filmes aos clientes, bem como sobre a saúde financeira do negócio. Some a isso a necessidade do gerente de saber detalhes sobre as contas a pagar e a receber que a empresa tenha a qualquer período, isto implica também no desenvolvimento de um fluxo de caixa.

Glossário SpeedCASE: Ferramenta de

produtividade para produção de softwares empregrada neste projeto.

Stakeholder: Parte interessada no comportamento do sistema.

Usuário : Balconista ou Proprietário da Locadora.

Dados do Funcionário

Page 5: Dicas diagrama de casos de uso

1. Fornecer filmes a locadora e ser pago por eles.

Proprietáro:

1. Emprestar filmes ao cliente e cobrar quantia justa pelo empréstimo.

2. Pagar comissão ao balconista

3. Comprar filmes

Balconista:

1. Receber comissão.2. Emprestar filme ao cliente.

3. Fazer pedido de filmes

4. Receber filmes do pedido.

5. Receber devolução de empréstimos de filmes

6. Calcular valor a receber pela locação, incluindo possíveis multas

7. Receber valor referente a locação

Acionadores

Acionadores identificados

1. Cliente entra na locadora para alugar filmes.

2. Cliente chega ao balcão para cadastrar-se.

Page 6: Dicas diagrama de casos de uso

3. Cliente chega ao balcão para emprestar filmes.

4. Cliente chega ao balcão para devolver filmes.

5. Cliente chega ao balcão para pagar dívidas.

6. Proprietário entrega ao balconista lista de compras.

7. Proprietário resolve comprar filmes.

Atores e ObjetivosTabela de Atores e seus Objetivos====================================== =======================================================================Ator Objetivo------- -----------------------------------------------------------------------Cliente Locar Filme, Devolver Filme, Pagar Dívidas, Cadastrar-se.Fornecedor Cadastrar-seBalconista Locar Filme, Receber Comissão, Receber Locação, Cadastrar Filmes Novos.Proprietário Pagar Comissão, Pagar Fornecedor, Comprar Filme.

Casos de Uso de Negócio

1.Comercializar Filmes

1.1.Comprar Filme

1.1.1.Fazer Pedido 1.1.2.Receber Pedido

1.2.Locar Filme

Page 7: Dicas diagrama de casos de uso

1.2.1.Emprestar Filme 1.2.2.Devolver Filme 1.2.3Cadastrar Cliente

1.3.Controlar Finanças

1.3.1.Registrar Contas a Pagar 1.3.2.Registrar Contas a Receber 1.3.3.Pagar Contas 1.3.4.Receber Contas

Casos de Uso do Sistema

1.Comercializar Filmes

1.1.Comprar Filme

1.1.1.Cadastrar Fornecedor 1.1.2.Cadastrar Filme 1.1.3.Cadastrar Mídia 1.1.4.Cadastrar Gênero

1.2Locar Filme

1.2.1Cadastrar Cliente 1.2.2.Controlar Locações 1.2.3.Controlar Devoluções

1.3.Controlar Finanças

1.3.1.Cadastrar Conta 1.3.2.Liquidar Conta 1.3.3.Visualizar Balanço

1.4.Cadastrar Balconista

Page 8: Dicas diagrama de casos de uso

Regras de Negócio Lançamento da Locação Calculo do Valor da Locação

Gerar ID da Conta

Calcular Total da Conta

Associar Conta Lançamento

Associar Conta Superior

Receber Multa de Locação

Calculo do Valor da Multa

Diagramas Interação entre os módulos Módulo Básico

Módulo de Empréstimos

Plano de releasesPontuação dos Casos de Uso (em UDs - Unidades de Desenvolvimento)

As unidades de desenvolvimentos indicam a suposta complexidade de desenvolvimento de um Caso de Uso

Cadastrar Fornecedor(1) Cadastrar Filme (1)

Cadastrar Mídia(1)

Page 9: Dicas diagrama de casos de uso

Cadastrar Gênero(1)

Cadastrar Cliente(1)

Controlar Locações(3)

Controlar Devoluções(3)

Cadastrar Conta(2)

Liquidar Conta(1)

Visualizar Balanço(1)

Cadastrar Balconista(1)

Separação dos Casos de Uso em Releases

A cada iteração um programador pode comprometer-se com 4 UDs (isso pode variar de equipe para equipe

1ª Iteração

Programador #1

o Cadastrar Fornecedor 1

o Cadastrar Filme 1

o Cadastrar Mídia 1

o Cadastrar Gênero 1

Programador #2

o Cadastrar Cliente 1

o Controlar Locações 3

Page 10: Dicas diagrama de casos de uso

*2ª Iteração

Programador #2o Controlar Devoluções 3

o Cadastrar Balconista 1

Programador #1

o Cadastrar Conta 2

o Liquidar Conta 1

o Visualizar Balanço 1

Tecnologia Empregada*Ferramenta de produtividade #glossarioSpeedCASE? *Turbo Delphi Explorer

Planos Futuros*Automatizar controle de Promoções. *Automatizar controle de Descontos.

*Dúvida: existe algum órgão que inspeciona o estoque da locadora?

Outros RequisitosContas a pagar e a receber com Fluxo de caixa.

Page 11: Dicas diagrama de casos de uso

Registrar todas as contas a pagar e a receber da locadora, o registro das contas deverá conter:

* Data Lançamento (Cadastro); * Identificação Documento (Informado quando “a pagar” e automático quando “a receber” – código do empréstimo); * Data Vencimento (Previsão de pagamento/Recebimento); * Valor Documento (valor do empréstimo); * Data Liquidação (pagamento ou recebimento); * Valor Liquidação (pago ou recebido); * Conta (classificação do documento, cadastro de contas); * Pessoa (Cliente ou Fornecedor, utilizar cadastro unificado de pessoas) * Saldo (Valor Documento – Valor Liquidação)

Os cadastros de Clientes e Fornecedores podem ser feito na Classe Pessoa;

* Código; * Nome; * Conta Sintética (Relacionamento Cíclico);

O Cadastro de Contas é utilizado para classificar os documentos agrupando-os em tipos comuns.

* Classificação (1; 1.1; 1.1.01) * Descrição Conta;

Page 12: Dicas diagrama de casos de uso

As seguintes consultas deverão ser realizadas:

* Listar o movimento do caixa diariamente (Entrada e Saídas) para apurar o saldo do dia (somente documentos liquidados);

* Listar os documentos a vencer (Entrada e Saídas) demonstrando o fluxo de caixa previsto para o período desejado. (somente documentos abertos, agrupados por contas);

* Listar Documentos/Pessoas com atraso;

ApêndicesA - Modelos de Documentos

B - Como montar uma Videolocadora?

Links

TracGuide  -- Built-in Documentation The Trac project  -- Trac Open Source

Project

Trac FAQ  -- Frequently Asked Questions

TracSupport  -- Trac Support

For a complete list of local wiki pages, see TitleIndex.

Page 13: Dicas diagrama de casos de uso

asos de Uso Diagrama de Casos de Uso

Objetivo

O Diagrama de Casos de Uso tem o objetivo de auxiliar a comunicação entre os analistas e o cliente.Um diagrama de Caso de Uso descreve um cenário que mostra as funcionalidades do sistema do ponto de vista do usuário. O cliente deve ver no diagrama de Casos de Uso as principais funcionalidades de seu sistema.NotaçãoO diagrama de Caso de Uso é representado por:

atores; casos de uso; relacionamentos entre estes elementos.

Estes relacionamentos podem ser: associações entre atores e casos de uso; generalizações entre os atores; generalizações, extends e includes entre os casos de uso.

casos de uso podem opcionalmente estar envolvidos por um retângulo que representa os limites do sistema.Em maiores detalhes:

AtoresUm ator é representado por um boneco e um rótulo com o nome do ator. Um ator é um usuário do sistema, que pode ser um usuário humano ou um outro sistema computacional.

Caso de uso

Page 14: Dicas diagrama de casos de uso

Um caso de uso é representado por uma elipse e um rótulo com o nome do caso de uso. Um caso de usodefine uma grande função do sistema. A implicação é que uma função pode ser estruturada em outras funções e, portanto, um caso de uso pode ser estruturado.

Relacionamentos    Ajudam a descrever casos de uso

o Entre um ator e um caso de uso Associação

Define uma funcionalidade do sistema do ponto de vista do usuário.

o Entre atores Generalização

- Os casos de uso de B são tambémcasos de uso de A- A tem seus próprios casos de uso

o Entre casos de uso Include

Um relacionamento include de um caso de uso A para um caso de uso B indica que B é essencial para o comportamento de A. Pode ser dito também que B is_part_of A.

Extend

Um relacionamento extend de um caso de uso B para um caso de uso A indica que o caso de uso B pode ser acrescentado para descrever o comportamento de A (não é essencial). A extensão é inserida em um ponto de extensão do caso de uso A.

Ponto de extensão em um caso de uso é uma indicação de que outros casos de uso poderão ser adicionados a ele. Quando o caso de uso for invocado, ele verificará se suas extensões devem ou não serem invocadas.

Você entendeu?! Provavelmente, não. É que extend é unanimemente considerado um conceito obscuro.

Vamos a novas explicações.

Quando se especifica B extends A, a semântica é:

    Dois casos de uso são definidos: A e A extended by B;

Page 15: Dicas diagrama de casos de uso

    B é uma variação de A. Contém eventos adicionais, para certas condições;

    Tem que ser especificado onde B é inserido em A.

Generalização ou Especialização (é_um)

caso de uso B é_um caso de uso A (A é uma generalização de B, ou B é uma especialização de A).

Um relacionamento entre um caso de uso genérico para um mais específico, que herda todas as características de seu pai.

    Sistema

Limites do sistema: representado por um retângulo envolvendo oscasos de uso que compõem o sistema.

Nome do sistema: Localizado dentro do retângulo. 

Exemplo 1

Page 16: Dicas diagrama de casos de uso

Exemplo 2

Page 17: Dicas diagrama de casos de uso