Professional Documents
Culture Documents
Análise Orientada a
Características da linguagem UML
Modelo de Casos de Uso
Objetos
Modelo de Classes
Diagrama de Seqüência
Diagrama de Estado
Rosângela Penteado Roteiro para elaboração do sistema em
DC – UFSCar desenvolvimento
rosangel@dc.ufscar.br Informações das próximas atividades
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
1 2
A utilização de técnicas sistemáticas nas fases de Não é só teoria, mas uma tecnologia de
análise e projeto faz com que o processo de eficiência e qualidade comprovadas usada em
geração de código possa ser automatizado.
inúmeros projetos e para construção de
Cabe ao programador dominar as características
diferentes tipo de sistemas.
específicas das linguagens, ferramentas,
frameworks e estruturas de dados para adaptar os Sistemas orientados a objetos são flexíveis a
requisitos indicados código ao ser gerado.
mudanças, possuem estruturas bem conhecidas
e provêm a oportunidade de criar e implementar
componentes totalmente reutilizáveis.
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
5 6
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
11 12
Casos de Uso Casos de Uso (cont.)
Importantes na organização e modelagem dos com- A coleção de casos de uso deve especificar todas
portamentos de um sistema as formas existentes de uso do sistema
É a especificação de seqüências de ações que um A descrição do sistema é feita por meio de vários
sistema, subsistema ou classe pode realizar inter- casos de uso que são executados por atores (um ou
agindo com um dos agentes. mais)
Documentam os requisitos dos sistemas Atores = entidades externas ao sistema, que de
Delimitam o sistema alguma forma participam da estória do caso de uso.
Definem a funcionalidade do sistema Podem ser pessoas, coisas ou outros subsistemas
que interagem com o sistema em desenvolvimento .
Podem incluir seqüências alternativas
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
13 14
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
15 16
Caso de Uso (Alto Nível) – Exemplo – Caso de Uso – EfetuarLocação
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
17 18
Cursos Alternativos em
Casos de Uso Caso de Uso EfetuarLocacao (cont.)
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
19 20
Formas para Finalizar os Cursos
Caso de Uso: EfetuarLocacao (cont.) Alternativos de Casos de Uso
Cursos Alternativos (cont.)
Voltar para o passo seguinte ao da exceção
3a. Uma mídia está reservada para outro cliente.
3a.1 Retirar a mídia reservada da lista de locação.
(Encerrar caso de uso)
3a.2 Encerrar caso de uso. Ir para algum passo posterior (Vá para o passo n)
3b. Uma mídia está danificada. Voltar ao início do caso de uso
3b.1 O funcionário registra que a mídia está danificada.
3b.2 Existe outra mídia disponível de mesmo título.
Abandonar o caso de uso e não fazer algo mais
3b.3 Encerrar caso de uso. (Abandonar caso de uso)
Curso Alternativo 3b.2 Não existe outra mídia disponível.
3b.2.1 Retirar a mídia danificada da lista de locação.
3b.2.2 Encerrar caso de uso.
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
21 22
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
27 28
Como identificar um caso de uso? Classificação de casos de uso
1º método:
Primários
Identificar os atores relacionados a um sistema
ou organização. Processos comuns, principais. (ex: comprar
Para cada ator, identificar os processos que itens)
eles iniciam ou dos quais eles participam. Secundários
2º método: Processos menos importantes ou raros (ex:
Identificar os eventos externos aos quais um solicitar estocagem de novo produto)
sistema deve responder Opcionais
Relacionar os eventos a atores e a casos de uso.
Processos que podem não ser considerados.
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
29 30
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
31 32
Exemplo (cont.)
Exemplo Efetuar Locação
Nome do Caso de Uso: EfetuarLocacao
Atores: Cliente Requisitos Correlacionados: RF1 e RF2.
Interessados: Gerente financeiro, Setor de compras Variações tecnológicas: a identificação do cliente poderá
ser feita através de um código simples ou um cartão com
Breve Descrição: Descreve como é realizada a locação de
código de barras. A identificação das fitas também
uma mídia por um cliente.
poderá ser feita por um código ou por leitor de código de
Disparo: Cliente chega à locadora e deseja locar uma barras. Outra opção seria um leitor magnético, mas esta
mídia. opção não está sendo considerada, no momento, devido
Pré-condições: As mídias para locação estão devidamente ao custo.
cadastradas Questões em aberto:
Pós-condições: O cliente ficou de posse das mídias. O 1. Os prazos de locação variam de fita para fita?
registro da locação das mídias para o cliente foi feito.
2. Existem promoções do tipo leve 4 e pague 3?
O cliente foi informado do prazo de devolução e do
valor da locação.
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
33 34
Curso Normal:
1. O cliente fornece sua identificação.
2. Cliente cadastrado
2. O cliente informa as mídias que deseja locar.
3. Enquanto houver mídias a locar
3.1. Efetuar a locação.
5. Informar ao cliente a data de devolução e total a pagar.
6. Encerrar casos de uso.
Cursos Alternativos:
2a. O cliente não está cadastrado.
2a.1 Chamar caso de uso IncluirCliente.
2a.2 Encerrar caso de uso.
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
35 36
Gerenralização/Especialização com Guia para Escrever Descrições de Casos
atores de Uso
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
37 38
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
39 40
Relacionamentos entre Classes
Associação Papéis na associação
1
Multiplicidade de uma associação
0..* (0 ou mais) 1 (exatamente 1)
1..n (de 1 a n) 1..* (1 ou mais)
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
41 42
Classe de Associação
Classe de associação
Carro
CarPlaca : String
Cliente CarDescricao : String
CliCPF : String CarSituacao : Integer = 0
CliNome : String Aluga Aluguel Alugado por CarAno : Integer
CliEndereco : String CarKm : Float
CliTelefone : String 0..1 0..* CarPrecoKm : Float
CliDivida : Float CarTaxa : Float
CarBmp : TImage
CarObservacao : TMemo
Aluguel
AluDataInicio : Date = GetDate
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
43 44
Relacionamentos entre Classes Composição e Associação
Agregação e Composição
é parte de.
Polígono
todo-parte
agregação composição
Ponto Contorno
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
45 46
Pessoa
Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB Pós-Graduação em Computação “Lato-Sensu” - Desenvolvimento de Software para WEB
47 48
Relacionamentos entre Classes
Dependência