Workshop UML V0

34
1 Unified Modeling Language Modelagem de Negócios e de Sistemas com Casos de Uso Denize Terra Pimenta [email protected] www.analisetotal.com.br 2 Índice

description

Arquivo sobre a linguagem UML.

Transcript of Workshop UML V0

  • 1Unified Modeling Language

    Modelagem de Negcios e de Sistemas

    com Casos de Uso

    Denize Terra [email protected]

    www.analisetotal.com.br

    22

    ndice

  • 233

    Objetivos

    Esta palestra uma introduo modelagem de negcios e sistemas.

    Ser feita introduo UML. Sero apresentados os diagramas de

    caso de uso de negcio e de sistemas.

    INTRODUO

    44

    Pblico alvo

    Analista de negcios Analista de sistemas Analista de requisitos Especificador de requisitos

    INTRODUO

  • 355

    Pr-requisitos

    No h pr-requisitos para esta palestra.

    INTRODUO

    66

    Bibliografia1. UML 2 - A Bblia Pender, TomEd. Campus

    2. UML Essencial: Um breve guia para a linguagem-padro de modelagem de objetos

    Martin Fowler e Kendal ScottEd. Bookman

    3. Mastering UML com Rational Rose 2002 - BbliaBoggs, Wendy e Boggs, MichaelEd. Alta Books

    4. UML Guia do UsurioGrady Booch, James Rumbaugh, Ivar JacobsonEd. Campus

    INTRODUO

  • 477

    Referncias On Line

    http://www.uml.orghttp://www-306.ibm.com/software/rational/umlhttp://www.cetus-links.org/oo_uml.htmlhttp://www.gentleware.com (Poseidon)http://jude.change-vision.com/jude-web/index.html (JUDE)

    INTRODUO

    88

    Tpicos a serem abordados

    PgTpico

    41

    34

    9

    3 Diagrama de Casos de Uso

    2 Modelagem de Negcio

    1 Introduo UML

    INTRODUO

  • 51- Introduo UML

    1.1 Introduo Linguagem1.2 Diagramas da UML 2.0

    1.1 Introduo Linguagem

  • 61111

    1.1 Introduo Linguagem A UML (Unified Modeling Language) o sucessor de um conjunto

    de mtodos de anlise e projeto orientados a objeto (OOA&D). A UML um modelo de linguagem, no um mtodo. O modelo de linguagem corresponde ao ponto principal da

    comunicao. A UML define uma notao e um meta-modelo. A UML (Unified Modeling Language) uma linguagem-padro para

    a elaborao da estrutura de projetos de software.

    UML uma linguagem de modelagem, no uma metodologia.

    INTRODUO

    1212

    1.1 Introduo Linguagem Linguagens Orientadas Objetos surgiram na dcada de 70/80 Mtodos surgidos: Booch, OOSE (Object-Oriented Software

    Engineering) Jacobson, e OMT (Object Modeling Technique) Rumbaugh, entre outros Fusion, Shlaer-Mellor e Coad-Yourdon.

    Rumbaugh se uniu Booch em 1994 formando o Mtodo Unificado Ainda em 95 Jacobson se integrou a equipe e incorporou o OOSE Vrias empresas como Digital, HP, IBM, Microsoft, Oracle, Rational,

    Unisys, entre outras, contriburam para a definio da UML 1.0 Em 97 a OMG (Object Management Group) definiu a UML como uma

    linguagem de modelagem padro.

    INTRODUO

  • 71313

    1.1 Introduo Linguagem

    Booch

    Unified Method 0.8

    UML 1.0

    OMT OOSE/Objectory(Jacobson)

    UML 0.9

    Outros Mtodos

    UML 1.5...

    UML 2.0

    Unified Process

    RUPUML 1.1

    INTRODUO

    1414

    1.1 Introduo LinguagemVersionamento da Linguagem

    Verso 2.0, novidades: Diagrama de Comunicao (Colaborao), Diagrama de Estrutura de Compsito (Composite

    Structure), Diagrama de Resumo de Interao (Interaction

    Overview), Diagrama de Tempo (Timing).(http://www.agilemodeling.com)

    Atualmente na Verso 2.1.1 (www.uml.org/)INTRODUO

  • 81.2 Diagramas na UML 2.0

    1616

    1.2 Diagramas na UML 2.0 Classes diagrama estrutural que mostra um conjunto de classes,

    interfaces, colaboraes e seus relacionamentos. Objetos diagrama estrutural que mostra um conjunto de objetos e

    seus relacionamentos. Casos de Uso diagrama comportamental que mostra uma interao,

    dando nfase organizao estrutural de objetos que enviam e recebem mensagens.

    Interao (Seqncia e Comunicao) descrevem o comportamento do sistema de acordo com o tempo e a troca de mensagens entre osobjetos. So levantadores de mtodos.

    Grfico de Estados diagrama comportamental que mostra uma mquina de estados, dando nfase ao comportamento ordenado por eventos de um objeto.

    Atividades diagrama comportamental que mostra uma mquina de estados, dando nfase ao fluxo de uma atividade para outra.

    INTRODUO

  • 91717

    1.2 Diagramas na UML 2.0 (continuao)

    Diagrama de Estrutura de Compsito (Composite Structure) mostra a colaborao dos objetos em tempo de execuo de uma funcionalidade.

    Diagrama de Resumo de Interao (Interaction Overview) uma variao do diagrama de atividades. Exibem dois tipos de ns (frames): frame de interaes (mostra qualquer tipo de diagrama de interao) e de ocorrncia de interao (indica a chamada de uma atividade ou operao)

    Diagrama de Tempo (Timing) mostra o comportamento de um ou mais objetos em um perodo de tempo.

    Componentes diagrama estrutural que mostra um conjunto de componentes e seus relacionamentos.

    Implantao diagrama estrutural que mostra um conjunto de ns e seus relacionamentos.

    INTRODUO

    1818

    1.2 Diagramas na UML

    ModelosModelos

    Diagrama de Atividade

    Diagrama de Atividade

    Diagrama de Estado

    Diagrama de Estado

    Diagrama de ComunicaoDiagrama de Comunicao

    Diagrama de Seqncia

    Diagrama de Seqncia

    Diagrama de Classe

    Diagrama de Componente

    Diagrama de Implantao

    Diagrama de Objetos...

    ...

    Estrutura deCompsito

    Estrutura deCompsito

    Diagrama de Tempo

    Diagrama de Tempo

    Resumo deInterao

    Resumo deInterao Diagrama de

    Casos de UsoDiagrama de Casos de Uso

    Comportamentais EstruturaisINTRODUO

  • 10

    1919

    1.2 Diagramas na UML 2.0Sistema de Controle de Horas

    Para analisar cada diagrama vamos nos basear em um sistema de alocao das horas trabalhadas Time Sheet

    O Sistema de Controle de Horas funciona para que a empresa tenha controle sobre as horas trabalhadas dos seus funcionrios. Todos os funcionrios devero informar o projeto que trabalharam, quais foram as atividades desempenhadas e o perodo. Os gerentes ou coordenadores devero aprovar (ou reprovar) as horas cadastradas dos funcionrios para os projetos de sua responsabilidade.

    INTRODUO

    2020

    1.2 Diagramas na UML 2.0 Diagrama de Caso de Uso

    Cada caso de uso dever especificar uma interao entre um usurio e o sistema, no qual o usurio tem um objetivo muito claro a atingir.

    O funcionrio cadastra alocao das suas horas; O gerente avalia as horas lanadas; O funcionrio consulta as horas trabalhadas.

    INTRODUO

  • 11

    2121

    1.2 Diagramas na UML 2.0 Diagrama de Caso de Uso

    Cadastrar Alocao

    Consultar MsFuncionrio

    Avaliar HorasGerente

    AdministradorCadastrar Projeto

    Cadastrar Tarefa

    Sistema de Controle de Horas

    INTRODUO

    2222

    1.2 Diagramas na UML 2.0 Diagrama de Caso de Uso

    Descrio do caso de uso Cadastrar AlocaoNome: Cadastrar Alocao Descrio: O Cadastro da alocao pode ser feito por perodo (data inicial e final) se o funcionrio estiver

    trabalhando na mesma atividade e projeto e pode tambm ser feita pontualmente caso o funcionrio trabalhe para um projeto fora do seu cotidiano.

    Ator: FuncionrioCurso Normal: Cadastro de Perodo (sistema cadastra trabalho de 9:00 at as 18:00hs)1. Funcionrio informa data inicial e final2. Sistema exibe logon do usurio cadastrado e lista Tarefas e Projetos3. Funcionrio seleciona tarefa e projeto e informa OS, Sistema e Observao4. Funcionrio confirma cadastro de trabalho5. Sistema registra Alocao

    Cursos Alternativos: Passo 1 - Cadastro de Alocao Pontual1. Funcionrio informa data e hora incio e fim.2. Retornar ao passo 2 do curso normal.

    Excees: Passo 1 Caso data invlida1. Sistema exibe mensagem de data invlida.2. Retornar ao passo 1 do curso normal.

    Passo 5 Caso Tarefa, Projeto ou Data no informados:1. Sistema exibe mensagem a tarefa, o projeto e a data devem ser informados.2. Retornar ao passo 3 do curso normal.

    INTRODUO

  • 12

    2323

    1.2 Diagramas na UML 2.0 Diagrama de Classe

    A prxima tarefa a classificao dos objetos envolvidos neste processo e a relao de uns com os outros.

    Diagramas de classe mostram a estrutura geral do sistema e tambm as suas propriedades relacionais e de comportamento.

    Funcionrio; Horas Trabalhadas; Projeto; Tarefa.

    INTRODUO

    2424

    1.2 Diagramas na UML 2.0 Diagrama de Classe

    Ateno: Os diagramas so complementares !

    Verifique se as funcionalidades levantadas no UC esto compatveis com as informaes

    deste diagrama

    INTRODUO

  • 13

    2525

    1.2 Diagramas na UML 2.0 Diagrama de Seqncia

    Mostra uma interao organizada em forma de uma seqncia, dentro de um determinado perodo de tempo.

    Os participantes so apresentados dentro do contexto das mensagens que transitam entre eles.

    O diagrama de seqncia um diagrama de interao.

    INTRODUO

    2626

    1.2 Diagramas na UML 2.0Diagrama de SeqnciaCadastrar Alocao - Curso Normal

    INTRODUO

  • 14

    2727

    1.2 Diagramas na UML 2.0 Diagrama de Comunicao (Antes

    chamado de Colaborao) Mostra como um grupo de objetos num

    caso de uso interage com os demais. Cada mensagem numerada para

    documentar a ordem na qual ela ocorre. O diagrama de comunicao tambm um

    diagrama de interao.

    INTRODUO

    2828

    1.2 Diagramas na UML 2.0 Diagrama de Comunicao

    : Funcionrio

    Fronteira : Projeto

    : Tarefa

    : Alocao : Funcionario

    1: data inicial e final

    2: buscarLogon( )3: buscarTarefa( )

    4: buscarProjeto( )

    5: informa tarefa, projeto, OS, sistema e Observao6: confirma alocao

    7: alocao( )

    INTRODUO

  • 15

    2929

    1.2 Diagramas na UML 2.0 Diagrama de Estado

    Mapeia diferentes estados em que se encontram os objetos, e desencadeia eventos que levam os objetos a se encontrarem em determinado estado em um dado momento.

    INTRODUO

    3030

    1.2 Diagramas na UML 2.0 Diagrama de Estado Classe Alocao

    INTRODUO

  • 16

    3131

    1.2 Diagramas na UML 2.0 Diagrama de Atividade

    Descreve a seqncia de atividades, com suporte para comportamento condicional e paralelo.

    Componentes: Atividade (ou estado de atividade): o estado de estar

    executando algo. Comportamento condicional:

    deciso (branches) intercalaes (merges).

    Comportamento paralelo: Juno (joins). Separao (forks).

    INTRODUO

    3232

    1.2 Diagramas na UML 2.0Diagrama de Atividade Cadastrar Alocao

    INTRODUO

  • 17

    3333

    Resumo Captulo 1 UML linguagem e no mtodo. Cada diagrama da UML mostra uma viso

    do sistema. Nenhum diagrama permite ter a idia do sistema por inteiro.

    Diagramas da UML.

    INTRODUO

    2. Modelagem de Negcio

    Breve introduo

  • 18

    3535

    2. Modelagem de Negcio Modelagem de Negcio permite:

    O conhecimento dos papis e atividades envolvidos nos diversos processos de negcio da organizao;

    A compreenso das deficincias existentes na organizao e a identificao de potenciais melhorias e inovao nos processos do negcio;

    A avaliao do impacto causado pelas mudanas organizacionais; A possibilidade de que clientes, usurios finais, desenvolvedores e outros

    interessados tenham uma conhecimento comum sobre a organizao; A derivao dos requisitos para sistemas capazes de suportar os

    processos do negcio; A compreenso da adequao e vantagens na implantao de um sistema

    de informao, bem como a identificao das funcionalidades a serem implementadas para melhoria na execuo dos processos do negcio.

    MODELAGEM DE NEGCIO

    3636

    2. Modelagem de Negcio Na UML possvel desenhar modelos de

    negcio nos diagramas: Diagramas use-cases de Negcio contm os

    processos de negcio. Diagramas de Atividades descrevem os

    comportamentos dentro do negcio ou o workflowde negcio.

    Diagramas de Classes descrevem a estrutura esttica do negcio.

    Diagramas de Interao (Diagramas de Colaborao e Diagramas de Seqncia) descrevem as interaes dinmicas entre os workers e o que eles manipulam.

    MODELAGEM DE NEGCIO

  • 19

    3737

    2. Modelagem de Negcio

    MODELAGEM DE NEGCIO

    Uma coleo de diagramas que mostra como os elementos da organizao (trabalhadores e entidades so implantados para dar suporte ao processo de negcio.

    Realizao de caso de uso de negcio

    Uma seqncia de aes que um negcio realiza que produz um resultado observvel a um ator de negcio

    Caso de uso de negcio

    Uma coisa manipulada ou suada pelos trabalhadores de negcio.

    Entidade de Negcio

    Papel ou conjunto de papis dentro do negcio. Um trabalhador interage com outros trabalhadores de negcio e manipula entidades de negcio.

    Worker de Negcio

    Algum ou alguma coisa fora do negcio.Ator de Negcio

    DEFINIONOMECONE

    3838

    2. Modelagem de Negcio Diagrama de Caso de Uso de Negcio

    MODELAGEM DE NEGCIO

    Define a interao entre entidades fora do negcio (fornecedores, clientes, parceiros, entre outras), e os processos de negcio.

    Garom

    Preparar Mesa

    Servir Pedido

    ClienteWorker

    Ator de Negcio

    Caso de Uso de Negcio

  • 20

    3939

    2. Modelagem de Negcio Diagrama de Atividade

    MODELAGEM DE NEGCIO

    4040

    Resumo Captulo 2 Conceito de Modelagem de Negcio. Diagramas para Modelagem de Negcio.

    MODELAGEM DE NEGCIO

  • 21

    3. Diagrama de Casos de Uso

    Especificao de Sistemas

    4242

    3. Diagrama de Casos de UsoCaso de Uso : um conjunto de seqncias de aes que um

    sistema desempenha para produzir um resultado observvel de valor a um ator especfico.

    Objetivo dos casos de uso: Descrever os requisitos funcionais do sistema de

    maneira consensual entre usurios e desenvolvedores de sistemas

    MODELAGEM DE SISTEMA

  • 22

    4343

    3. Diagrama de Casos de Uso O Modelo de Casos de Uso formado pelo

    Diagrama de Casos de Uso (desenho) e as Especificaes de cada caso de uso.

    Especificao de requisitos documentao suplementar do caso de uso adicionar item

    Especificao de requisitos documentao suplementar do caso de uso fechar compra

    Especificao de requisitos documentao suplementar do caso de uso consultar pedid

    MODELAGEM DE SISTEMA

    4444

    CenCenriorio descreve a interao entre o ator e o sistema. Um caso de uso pode ter vrias terminaes (sucessos e insucessos) cada enredo, cada instncia chamada de cenrio.

    3. Diagrama de Casos de Usosistema

    = ou ou

    Componentes

    MODELAGEM DE SISTEMA

  • 23

    4545

    3. Diagrama de Casos de Uso Um Ator uma classe com um cone padro. Exemplos de atores:

    Cliente Sistema de RH Gerente Atendente Sistema de Contas a Pagar Scanner Leitor tico

    MODELAGEM DE SISTEMA

    4646

    3. Diagrama de Casos de Uso Relacionamentos

    (Generalizao/Especializao entre atores) Os diagramas de casos de uso podem ser

    simplificados por meio da herana entre atores.

    No existe outro tipo de relacionamento

    entre atores !

    MODELAGEM DE SISTEMA

  • 24

    4747

    3. Diagrama de Casos de Uso Relacionamentos(Generalizao/Especializa

    o entre atores)

    MODELAGEM DE SISTEMA

    4848

    3. Diagrama de Casos de Uso Conceito de Caso de Uso

    uma seqncia de aes. uma classe, no uma instncia. Um caso de uso um conjunto de passos ( a

    descrio da interao entre ator e sistema) e o tratamento das suas excees.

    Um caso de uso tem incio, meio e fim. sempre iniciado por um ator. So conectados aos atores atravs de

    associaes de comunicao; completo, no ter terminado at que um valor

    tenha sido retornado.

    MODELAGEM DE SISTEMA

  • 25

    4949

    3. Diagrama de Casos de Uso Exemplos de Caso de Uso:

    Cadastrar cliente, Cadastrar pedido, Consultar produto, Emitir nota fiscal, Fechar caixa, etc...

    CadastrarCliente

    Cadastrar Cliente

    MODELAGEM DE SISTEMA

    5050

    3. Diagrama de Casos de Uso Casos de Uso Secundrios

    Casos de uso secundrios so utilizados para facilitar a descrio de funcionalidade mais complexa.

    Simplificam o comportamento dos casos de uso primrios atravs dos mecanismos de Extenso e Incluso.

    MODELAGEM DE SISTEMA

  • 26

    5151

    3. Diagrama de Casos de Uso Extenso

    Essa notao pode ser usada para representar fluxos complexos opcionais ou anormais.

    O caso de uso estendido referenciado nas precondies do caso de uso extensor.

    Mostra a exceo, os casos especiais e cursos alternativos.

    MODELAGEM DE SISTEMA

    5252

    3. Diagrama de Casos de Uso

    MODELAGEM DE SISTEMA

  • 27

    5353

    3. Diagrama de Casos de Uso Extenso

    MODELAGEM DE SISTEMA

    5454

    3. Diagrama de Casos de Uso Incluso

    O caso de uso includo referenciado no fluxo do caso de uso que inclui.

    Incluso a utilizao de um caso de uso por outros casos de uso que possuem comportamento em comum. um esteretipo de dependncia. Exemplo: Num caixa automtico tanto o caso de uso Retirar Dinheiro quanto Fazer Transferncia usam Validar Cliente obrigatrio.

    MODELAGEM DE SISTEMA

  • 28

    5555

    3. Diagrama de Casos de Uso

    MODELAGEM DE SISTEMA

    5656

    3. Diagrama de Casos de Uso Incluso

    MODELAGEM DE SISTEMA

  • 29

    5757

    3. Diagrama de Casos de Uso Generalizao entre casos de uso

    Os filhos podem adicionar e redefinir o comportamento do pai, atravs da insero de seqncias adicionais de aes em pontos arbitrrios da seqncia do pai.

    Este tipo de relacionamento mais facilmente detectado na descrio do caso de uso, quando uma exceo no necessariamente um erro ou ocorre com freqncia.

    MODELAGEM DE SISTEMA

    5858

    3. Diagrama de Casos de Uso

    MODELAGEM DE SISTEMA

  • 30

    5959

    3. Diagrama de Casos de Uso

    Generalizao entre casos de usoReceber

    Pagamento

    ReceberPagamentoem cheque

    ReceberPagamentoem dinheiro

    ReceberPagamentoem carto

    MODELAGEM DE SISTEMA

    6060

    3. Diagrama de Casos de Uso Generalizao entre casos de uso

    Descrio dos Casos de UsoNome: Receber PagamentoCurso Normal1. O Caixa solicita pagamento do pedido;2. O Sistema exibe itens do pedido;3. O sistema totaliza o pedido e j calcula

    mximo de parcelas;4. O Caixa seleciona forma de pagamento;5. {formas de pagamento}6. O Sistema registra fechamento de conta e

    pagamento.

    Curso AlternativoPasso 2 Caso no haja itens selecionados:

    Nome: Receber Pagamento em ChequeCurso Normal1. O Caixa solicita pagamento do pedido;2. O Sistema exibe itens do pedido;3. O sistema totaliza o pedido e j calcula

    parcelas;4. O Caixa seleciona forma de pagamento;5. {formas de pagamento}

    Caixa digita nmero do banco/cheque e data de depsito;

    6. O Sistema registra fechamento de conta e pagamento.

    Curso AlternativoPasso 2 Caso no haja itens selecionados:

    MODELAGEM DE SISTEMA

  • 31

    6161

    3. Diagrama de Casos de UsoComo fazer o Diagrama de Casos de Uso ?

    Sugesto: Construo em trs partes:

    1. Identificao dos possveis casos de uso 2. Descrio dos casos de uso (identificao dos

    verdadeiros casos de uso)3. Desenho do diagrama

    MODELAGEM DE SISTEMA

    6262

    1 Passo - Identificar os casos de uso Exemplo

    Identificao dos Casos de Uso Livraria Virtual

    Nmero Caso de Uso Ator

    1 Acessar Site Cliente2 Consultar Livro Cliente3 Cadastrar Cliente Cliente4 Fechar Carrinho Cliente5 Cadastrar Livro Atendente

    3. Diagrama de Casos de Uso

    MODELAGEM DE SISTEMA

  • 32

    6363

    Cabealho de uma Descrio de Caso de Uso Nome: Matricular em Seminrio Descrio: Matricula um aluno existente em um

    curso.

    Pr-condies: O aluno est registrado na universidade.

    Ps-condies: O aluno ser matriculado em um curso se ele atender aos pr-requisitos e se existir sala disponvel.

    3. Diagrama de Casos de Uso2 Passo Descrever os casos de uso

    MODELAGEM DE SISTEMA

    6464

    3. Diagrama de Casos de Uso Descrio de Caso de Uso

    Fluxo:1. O aluno informa seu nome e nmero de inscrio.2. O sistema verifica se o aluno pode se matricular em

    seminrios, de acordo com a regra de negcio "BR129 Verificar a Possibilidade para Matrcula em Seminrios.

    3.O sistema exibe a tela "UI32 Seleo de Seminrio, indicando os seminrios disponveis.

    4.O aluno seleciona o seminrio em que deseja se matricular. 5.O sistema valida o aluno de acordo com a regra de negcio

    "BR130 Verificar Pr-requisitos do Seminrio.6.O sistema valida o seminrio em relao ao horrio do aluno,

    de acordo com a regra de negcio "BR143 Validar Disponibilidade para Agendamento.

    Etc...etc...etc...

    MODELAGEM DE SISTEMA

  • 33

    6565

    3 Passo Desenhar o diagrama de casos de uso

    cadastrar tcnicocadastrar tipo equip.

    cadastrar soluocadastrar problema

    Fechar chamada

    alocar tcnico

    Supervisor

    Gerar chamadas pendentes

    Registrar chamadaCliente

    pagar cota

    Vendedor

    Registrar contrato

    cadastrar cliente

    3. Diagrama de Casos de Uso

    MODELAGEM DE SISTEMA

    6666

    Resumo do Captulo 3 Os diagramas de Casos de Uso servem para capturar os

    requisitos do sistema. Componentes do UC: Caso de Uso, Ator e Interao. Tenha em mente o objetivo da construo do diagrama, pois o

    diagrama de caso de uso pode ser utilizado para validar com o cliente o escopo do projeto e tambm para passar a viso do que precisa ser construdo para a equipe de desenvolvimento (pode ser enriquecido com detalhes de implementao).

    No h na UML nenhuma regra de definio para a descrio. O Diagrama de U.C. tambm pode ser utilizado para

    modelagem de negcios.

    MODELAGEM DE SISTEMA

  • 34

    Unified Modeling Language

    Modelagem de Negcios e de Sistemas

    com Casos de Uso

    Denize Terra [email protected]

    www.analisetotal.com.br