aula 01-02-03 apresentação - revisão - uml - diagrama de sequencia

Upload: caco3000

Post on 13-Oct-2015

24 views

Category:

Documents


0 download

TRANSCRIPT

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    1

    Professor: Esp. Marcos Morais de Sousa

    Curso: Sistemas de informao

    Disciplina: Anlise e Modelagem de Sistemas II

    Aula 01 Dinmica da disciplina, plano de curso e avaliao

    Turma: 04 & 05 semestre

  • Apresentao

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    2

    Professor: Contato:

    Marcos Morais de Sousa [email protected]

    Resumo profissional:

    Desde 1995 atua profissionalmente na rea de infraestrutura, desenvolvimento, automao comercial, consultoria em gesto da informao e reengenharia de processos; conhecimentos das linguagens CLIPPER, DELPHI, JAVA e C# bem como na rea de banco de dados, redes e segurana da informao; Experincia na rea de coordenao estratgica e gerencial de equipes; atua em mais de 10 empresas na regio de Jequi, Ipia e Itabuna.

    Formao acadmica e titulao:

    Especialista em Gesto da Tecnologia e Informao. Bacharel em Sistemas de Informao.

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    3

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    4

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    5

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    6

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    7

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    8

  • 9

    Obrigado!

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected] 9

    Professor: Esp. Marcos Morais de Sousa

    Curso: Sistemas de informao

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    10

    Professor: Esp. Marcos Morais de Sousa

    Curso: Sistemas de informao

    Disciplina: Anlise e Modelagem de Sistemas II

    Aula 2-3: Diagrama de sequencia

    Turma: 05-06 semestre

  • Reviso - introduo

    Na ltima dcada, a Orientao a Objetos firmou-se definitivamente como paradigma padro de desenvolvimento de sistemas.

    Entre as diversas vantagens em relao sua antecessora, a Anlise Estruturada, a Orientao a Objetos trouxe uma vantagem considerada fundamental: a adoo de uma linguagem unificada de modelagem, acabando com a verdadeira Babel de metodologias que a precederam.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    11

  • Reviso UML

    A UML disponibiliza um conjunto de 13 diagramas diferentes, cada um deles capturando uma abstrao do sistema, e cujo conjunto constitui um excelente conjunto de artefatos de anlise e projeto.

    Nem todos os diagramas so aplicveis e necessrios ao desenvolvimento todo de qualquer sistema.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    12

  • Vises UML 2

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    13

    Viso Descreve Diagramas

    Viso de

    Requisitos

    Funcionais

    Requisitos funcionais

    do sistema pelo ponto

    de vista do usurio.

    diagramas de casos de

    uso

    Viso Estrutural

    Esttica

    Estrutura esttica do

    sistema.

    diagrama de classes

    diagrama de estruturas

    Viso de

    Comportamento

    Dinmico

    Comportamento

    dinmico do sistema,

    mostrando suas

    interaes.

    diagramas de seqncias

    diagramas de atividades

    diagramas de estados

  • UML 2

    Todavia, de uma forma quase absoluta, trs dos tipos disponveis de diagramas devem sempre fazer parte da documentao de projeto de um sistema:

    os Diagramas de Casos de Uso, juntamente com as respectivas descries detalhadas,

    os Diagramas de Classes, e um de dois tipos de Diagramas de interao: os Diagramas de Comunicao ou

    os Diagramas de Sequncia.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    14

  • UML2 A UML 2.0 define 13 tipos de diagramas divididos em 2 categorias:

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    15

    Diagramas Estruturais Pacotes

    Classes

    Objetos

    Estrutura Composta

    Componentes

    Instalao

    Diagramas Comportamentais Casos de uso

    Atividades

    Mquina de estado

    Colaborao ou Comunicao

    Sequncia

    Tempo

    Interatividade

  • Estudem o material complementar no blog do professor e nos livros indicados. marcosmorais.blogspot.com

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    16

  • Diagramas de Sequncia

    Diagramas de Sequncia so muito teis em fornecer suporte real implementao e em constituir uma rica documentao de alto nvel.

    Eles representam os objetos participantes de uma colaborao enquanto emitem e recebem mensagens no intuito de realizar um caso de uso. As mensagens so apresentadas em sua ordem temporal, o que facilita a compreenso do fluxo de controle do caso de uso.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    17

  • Diagramas de Sequncia

    Diagramas de sequncia possuem dois eixos: o eixo vertical, que mostra o tempo e o eixo horizontal, que mostra os objetos envolvidos na sequncia de uma certa atividade.

    Eles tambm mostram as interaes para um cenrio especfico de uma certa atividade do sistema.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    18

  • Diagramas de Sequncia

    O diagrama de sequncia mostra a troca de mensagens entre diversos objetos, em uma situao especfica e delimitada no tempo. Coloca nfase especial na ordem e nos momentos nos quais mensagens para os objetos so enviadas.

    Em diagramas de sequncia, objetos so representados atravs de linhas verticais tracejadas (denominadas como linha de existncia), com o nome do objeto no topo.

    O eixo do tempo tambm vertical, aumentando para baixo, de modo que as mensagens so enviadas de um objeto para outro na forma de setas com a operao e os nomes dos parmetros.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    19

  • Diagramas de Sequncia

    Em alguns sistemas, objetos rodam concorrentemente, cada um com sua linha de execuo (thread). Se o sistema usa linhas concorrentes de controle, isto mostrado como ativao, mensagens assncronas, ou objetos assncronos.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    20

  • Notao

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    21

    OBJETO

    MENSAGENS

    TEMPO ATOR

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    22

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    23

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    24

    Os diagramas de sequncia podem mostrar objetos que so criados ou destrudos como parte do cenrio documentado pelo diagrama. Um objeto pode criar outros objetos atravs de mensagens. A mensagem que cria ou destri um objeto geralmente sncrona, representada por uma seta slida.

  • exemplo

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    25

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    26

    Fonte: http://iptucf.sqlweb.com.br/modelagem.php

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    27

    Exemplo controle centralizado O controle centralizado de um fluxo de eventos ou de parte do fluxo de eventos significa que poucos objetos guiam o fluxo trocando mensagens com outros objetos. Esses objetos controladores decidem a ordem em que outros objetos sero ativados no caso de uso. A interao entre os objetos restantes mnima ou inexistente.

    No Sistema da Mquina de Reciclagem , o caso de uso Imprimir Relatrio Dirio controla, entre

    outros, o nmero e o tipo de objetos retornados, e escreve a contagem em um recibo. O objeto de

    controle Gerador de Relatrio decide a ordem em que os totais sero extrados e escritos.

    A estrutura de comportamento do caso de uso Imprimir Relatrio Dirio centralizada no

    objeto de controle Gerador de Relatrio.

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    28

    Exemplo controle descentralizado O controle descentralizado surge quando os objetos participantes se comunicam diretamente entre si, e no atravs de um ou mais objetos controladores.

    No caso de uso Enviar Carta algum remete uma carta para outro pas atravs de uma agncia de correio. Primeiro, a carta enviada para o pas do destinatrio. No pas, a carta enviada para uma cidade especfica. A cidade, por sua vez, envia a carta para a residncia do destinatrio.

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    29

    Um fluxo de eventos com controle centralizado ter um diagrama de sequncia "em forma de forquilha". Por outro lado, um diagrama de sequncia "em

    forma de escada" ilustra que a estrutura de controle foi descentralizada para os objetos participantes.

    Uma estrutura de controle centralizada em um fluxo de eventos produz um diagrama de sequncia "em forma de forquilha". Uma estrutura de controle

    descentralizada produz um diagrama de sequncia "em forma de escada".

    Uma estrutura de controle centralizada em um fluxo de eventos produz um diagrama de sequncia "em forma de forquilha". Uma estrutura de controle descentralizada produz um diagrama de sequncia "em forma de escada".

  • Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    30

    A estrutura de comportamento da realizao de um caso de uso frequentemente consistem em uma mistura de comportamento centralizado e descentralizado. Uma estrutura descentralizada ser adequada: Se as fases de subeventos estiverem intrinsecamente acopladas. Esse ser o caso se os objetos

    participantes: Formarem uma hierarquia de partes ou constituintes, como Pas - Estado - Cidade; Formarem uma hierarquia de informaes, como CEO - Gerente de Diviso - Gerente de

    Seo; Representarem uma progresso cronolgica fixa (a sequncia de fases de subeventos ser

    sempre realizada na mesma ordem), como Anncio - Pedido - Fatura -Remessa - Pagamento; ou

    Formarem uma hierarquia de herana conceitual, como Animal - Mamfero - Gato. Se voc desejar encapsular a funcionalidade e, portanto, fazer abstraes dela. Isso bom para

    algum que deseje utilizar sempre a funcionalidade inteira, porque a funcionalidade pode se tornar desnecessariamente de difcil compreenso caso a estrutura de comportamento seja centralizada.

    Uma estrutura centralizada ser adequada: Se a ordem em que as fases de subeventos sero executadas puder ser mudada. Se voc espera inserir novas fases de subeventos. Se voc deseja manter partes da funcionalidade reutilizveis como peas separadas.

  • Diagramas de Sequncia importante!

    Lembre-se:

    Diagramas de Sequncia Preocupa-se com a ordem temporal em que as mensagens so trocadas entre os objetos de determinado processo;

    Diagramas de Sequncia baseia-se em um caso de uso definido;

    Diagramas de Sequncia apoia-se no diagrama de classes.

    Prof. Esp. Marcos Morais de Sousa

    E-mail: [email protected] 31

  • Exerccio1

    Desenvolva um Diagrama de Sequncia para um sistema de vdeo locadora, de acordo com seguintes fatos:

    Primeiramente o atendente deve verificar se o scio est cadastrados e no a locao ser recusada.

    Em seguida deve verificar se o scio possui alguma locao pendente, caso em que tambm recusar o emprstimo.

    Se o scio existir e no tiver locaes pendentes, ento a locao dever ser registrada e as cpias emprestadas ao scio.

    Durante o registro da locao devero ser registrados tambm todos os itens da locao.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    32

  • Resposta Exercicio1

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    33

  • Exerccio2

    O cliente entra no na Loja Virtual e visualiza os grupos de produtos, para fazer uma pesquisa e a classe responsvel procClienteLogado.

    Uma lista criada indica que esses grupos esto salvos em um banco de dados e so recuperados por uma pgina em dotNET. Quando desejarmos retirar ou inserir algo no banco de dados vamos estereotipar a entidade do banco como tbsBanco.

    As descries do banco de dados sero atravs da classe clsGrupos, no seu mtodo curObterListaGrupos().

    Ento, quando a URL for solicitada, a pgina dotNET clsPagInicial pede a classe clsGrupos que execute curObterListaGrupos() e esta vai at o banco de dados e executa uma procedure que retorna grupos possveis (procMontarGrupos). Este mtodo esta na classe clsClienteLocator.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    34

  • Sequencia planejada/esperada

    1.Pgina dotNet

    2.Classe Cliente

    3.Classe de Grupos

    4.Entidades do banco de dados

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    35

  • Resposta Exerccio2

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    36

  • Exerccio 3 Desenvolva a narrativa adequada para o diagrama de sequencia apresentado.

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected]

    37

  • 38

    At a prxima

    Prof. Esp. Marcos Morais de Sousa E-mail: [email protected] 38

    Professor: Esp. Marcos Morais de Sousa

    Curso: Sistemas de informao