E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 2 Professor: Contato: Marcos Morais de Sousa marcosmoraisdesousa@gmail.com
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: marcosmoraisdesousa@gmail.com 3 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 4 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 5 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 6 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 7 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 8
9 Obrigado! Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 9 Professor: Esp. Marcos Morais de Sousa Curso: Sistemas de informao
Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 12 Vises UML 2 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 14 UML2 A UML 2.0 define 13 tipos de diagramas divididos em 2 categorias: Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 20 Notao Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 21 OBJETO MENSAGENS TEMPO ATOR Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 22 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 23 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 25 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 26 Fonte: http://iptucf.sqlweb.com.br/modelagem.php Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 32 Resposta Exercicio1 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 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: marcosmoraisdesousa@gmail.com 35 Resposta Exerccio2 Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 36 Exerccio 3 Desenvolva a narrativa adequada para o diagrama de sequencia apresentado.
Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 37
38 At a prxima Prof. Esp. Marcos Morais de Sousa E-mail: marcosmoraisdesousa@gmail.com 38 Professor: Esp. Marcos Morais de Sousa Curso: Sistemas de informao