• Nenhum resultado encontrado

ANALISES DE SISTEMAS II UML AULA 01

N/A
N/A
Protected

Academic year: 2019

Share "ANALISES DE SISTEMAS II UML AULA 01"

Copied!
64
0
0

Texto

(1)

Prof. Wanderson Leandro de Oliveira

wanderson.l.oliveira@anhaguera.com

https://sites.google.com/site/wleandrooliveira

ANALISE DE SISTEMAS II

UML

UNIFIED MODELING LANGUAGEM

(2)

Bibliografia

 BOOCH, Grady; RUMBAUGH, James; JACOBSON,

Ivar. UML: guia do usuário. 2.ed. rev. e atual. Rio de Janeiro: Elsevier, Campus, 2006.

 MELO, Ana Cristina. Desenvolvendo aplicações com

UML 2.2: do conceitual à implementação. 3.ed. Rio de Janeiro: Brasport, 2010.

 LARMAN, Craig. Utilizando UML e padrões: uma

(3)

OBJETIVOS

Compreender melhor o sistema que estamos

desenvolvendo.

Visualizar o sistema.

Documentar decisões tomadas

Especificar comportamento ou a estrutura

(4)

DEFINIÇÃO - UML

LINGUAGEM UNIFICADA DE MODELAGEM:

É uma linguagem para especificação,

construção, visualização e documentação

de sistemas.

É uma evolução das linguagens para

(5)

HISTÓRICO - UML

 Início em Outubro de 1994: Booch e Jim Rumbaugh começaram um

esforço para unificar o método de Booch e OMT (Object Modeling Language).

 Uma primeira versão, chamada Unified Method, foi divulgada em

outubro de1995.

 Jacobson juntou-se ao grupo, agregando o método OOSE

(Object-Oriented Software Engineering) .

 O esforço dos três resultou na liberação da UML versão 0.9 e 0.91 em

junho e outubro de 1996. Em janeiro de 1997, foi liberada a versão 1.0 da UML.

 Adotada como padrão segundo a OMG (Object Management Group,

http://www.omg.org/) em Novembro de 1997.

(6)

ORIGENS - UML

(7)

DIAGRAMAS - UML

 Diagrama de Atividade;

 Diagrama de Classe – Estrutura de Classificação;  Diagrama de Comunicação – Interações;

 Diagrama de Componentes - Estrutura de Classificação;  Diagrama de Estrutura composta;

 Diagrama de implantação;

 Diagrama de Revisão de Interação;  Diagrama de Objetos – Classificação;  Diagrama de pacote – Pacotes

 Diagrama de Perfil - Pacotes;  Diagrama de Estado de Máquina;  Diagrama de Sequência;

 Diagrama de comportamento;  Diagrama de Caso de Uso.

(8)

FERRAMENTAS DE APOIO

 Diversas empresas lançaram ferramentas para

auxiliar a modelagem e projeto de sistemas utilizando UML, gerar código a partir da modelagem e projeto e realizar engenharia

reversa, ou seja, obter o modelo em UML a partir

(9)

FERRAMENTAS DE APOIO

 A família Rational Rose Enterprise (da Rational Software Corporation www.rational.com )que gera código em Smalltalk, PowerBuilder, C++, J++ e VB.

 ArgoUML – free http://argouml.tigris.org/

 www.objectsbydesign.com/tools/umltools_byCompany.html (lista de

ferramentas que envolvem a UML), entre elas Jude (agora Astah) e Visual Paradigm.

 StarUML: Livre

(10)

USO DA UML

 Um dos objetivos da UML é descrever qualquer

tipo de sistema, em termos de diagramas orientados a objetos

 O uso mais comum é para criar modelos de

software, mas também é usada para representar

(11)

USO DA UML

 Tipos de Sistemas que são utilizados a UML e

suas características mais comuns:

 Sistemas de Informação: Armazenar,

pesquisar, editar e mostrar informações para

usuários

 Sistemas Técnicos: Manter e controlar

equipamentos técnicos como de

(12)

FASES DE DESENVOLVIMENTO -UML

 Existem cinco fases no desenvolvimento de

sistemas de software (devem ser executadas nesta ordem):

 Análise de Requisitos

 Análise

 Design (projeto)

 Programação

(13)

FASES DE DESENVOLVIMENTO -UML

 Análise de Requisitos:

Os atores externos e os use-cases são

modelados com relacionamentos que

possuem comunicação associativa entre eles

ou são desmembrados em hierarquia

O diagrama de use-cases mostrará o que os

atores externos, ou seja, os usuários do futuro

sistema deverão esperar do aplicativo,

(14)

FASES DE DESENVOLVIMENTO -UML

 Análise:

 A fase de análise está preocupada com as

primeiras abstrações (classes e objetos) e mecanismos que estarão presentes no domínio

do problema

 As classes são modeladas e ligadas através de

(15)

FASES DE DESENVOLVIMENTO -UML

 Análise:

 As colaborações entre classes também são

mostradas neste diagrama para desenvolver os use-cases modelados anteriormente

 Nesta fase somente serão modeladas classes

(16)

FASES DE DESENVOLVIMENTO -UML

 Design (Projeto):

 Nesta fase, o resultado da análise é expandido

em soluções

 Novas classes serão adicionadas para prover

(17)

FASES DE DESENVOLVIMENTO -UML

 Design (Projeto):

 As classes do domínio do problema modeladas

na fase de análise são mescladas nessa nova infra-estrutura técnica tornando possível alterar

tanto o domínio do problema quanto à

infra-estrutura

 Resulta no detalhamento das especificações

(18)

FASES DE DESENVOLVIMENTO -UML

 Programação:

 Nesta fase as classes provenientes do design

são convertidas para o código da linguagem orientada a objeto escolhida

 O grau de dificuldade depende da escolha da

linguagem

 Não é aconselhável traduzir mentalmente os

(19)

FASES DE DESENVOLVIMENTO -UML

 Programação:

 Os modelos criados nas fases passadas são o

significado do entendimento e da estrutura do sistema, porém ainda podem ser alterados

caso o analista julgue necessário, o que não

pode é alterar a programação sem alterar os modelos anteriores senão estes não estarão mais demonstrando o real perfil do sistema

 É uma fase separada e distinta onde os

(20)

FASES DE DESENVOLVIMENTO -UML

 Testes – temos 3 tipos de testes:

 Unidade: são para classes individuais ou

grupos de classes e são geralmente testados pelo programador

 Integração: são aplicados já usando as classes

e componentes integrados para se confirmar se as classes estão cooperando uma com as outras como especificado nos modelos

 Aceitação: observam o sistema como uma

(21)

NOTAÇÃO DA LINGUAGEM-UML

 Das 5 fases de desenvolvimento da UML, as

fases de análise de requisitos, análise e design utilizam em seu desenvolvimento:

 Cinco tipos de visões

 Quatorze tipos de diagramas

(22)

VISÕES - UML

 O sistema é descrito por várias visões, cada uma

representando uma projeção da descrição

completa e mostrando aspectos particulares do sistema

 Cada visão é descrita por um numero de

(23)

VISÕES - UML

 Existem em alguns casos de sobreposições entre

os diagramas -> isto significa que um diagrama pode fazer parte de mais de uma visão

 Os diagramas contém os modelos dos elementos

(24)

VISÕES - UML

 As Visões que compõe um sistema são:

Visão de Componentes Visão de Lógica

Visão de Use-Case

(25)

VISÕES - UML

 Visão Use-Case:

 Descreve a funcionalidade do sistema

desempenhada pelos atores externos do sistema (usuários)

 Visão use-cases é central, já que seu conteúdo

é base do desenvolvimento das outras visões do sistema

 Montada sobre os diagramas de use-cases e

(26)

VISÕES - UML

 Visão Lógica:

 Descreve como a funcionalidade do sistema

está implementada

 Feita principalmente por analistas e

desenvolvedores

 Ao contrário da visão use-cases, a visão lógica

(27)

VISÕES - UML

 Visão Lógica:

 Ela descreve e especifica a estrutura estática

do sistema (classes, objetos e

relacionamentos) e as colaborações dinâmicas

quando os objetos enviarem mensagens uns

para os outros para realizarem as funções do sistema

 Persistência e concorrência são definidas nesta

(28)

VISÕES - UML

 Visão Lógica:

 A estrutura estática é descrita pelos diagramas

de classe e objetos

 O modelo dinâmico é descrito pelos diagramas

(29)

VISÕES - UML

 Visão de Componentes:

 É uma descrição da implementação dos

módulos e suas dependências

 É principalmente executados por

(30)

VISÕES - UML

 Visão de Concorrência:

 Trata a divisão do sistema em processos e

processadores

 Este aspecto, que é uma propriedade não

(31)

VISÕES - UML

 Visão de Concorrência:

 A visão de concorrência é suportada pelos

diagramas dinâmicos, que são os diagramas de estado, sequência, colaboração e atividade,

e pelos diagramas de implementação, que são

(32)

VISÕES - UML

 Visão de Organização:

 Esta visão mostra a organização física do

sistema, os computadores, os periféricos e como eles se conectam entre si

 Esta visão é executada pelos desenvolvedores,

(33)

DIAGRAMAS - UML

 A UML define em sua versão 2.5 quatorze tipos

de diagramas, divididos em duas categorias:

(34)

DIAGRAMAS - UML

 Diagramas Estruturais ou Estáticos : Mostram as

características dos seu sistema que não mudam com o tempo

 Diagramas de Comportamento (Dinâmicos):

Mostram como o sistema responde às requisições

(35)
(36)
(37)

DIAGRAMAS - UML

UML 1.4 UML 2.5

Diagrama de Atividades  Diagrama de Atividades Diagrama de Classes  Diagrama de Classes

Diagrama de Caso de Uso  Diagrama de Caso de Uso Diagrama de Colaboração  Diagrama de Comunicação

(38)

DIAGRAMAS - UML

UML 1.4 UML 2.5

Diagrama de Implantação  Diagrama de Implantação Diagrama de Objetos  Diagrama de Objetos

Diagrama de Sequencia  Diagrama de Sequencia Diagrama de Pacotes

Diagrama de Estrutura Composta

Diagrama de Visão Geral

Diagrama de Tempo Estrutural

Comportamento

(39)

DIAGRAMAS - UML

 Diagrama de Caso de Uso:

 Mostra os casos de uso, atores e seus

relacionamentos que expressam a

(40)

CASO DE USO - UML

 Diagramas de Use-cases:

 Técnica usada para descrever e definir os

requisitos funcionais de um sistema

 São escritos em termos de atores externos,

(41)

CASO DE USO - UML

 Atores podem:

 Trocar informações com o sistema de forma

ativa

 Ser um recipiente ativo de informações

 Representar um ser Humano, uma máquina ou

(42)

CASO DE USO - UML

 Como encontrar Atores?

 Quem está interessado em um requisito do

sistema?

 Quem vai fornecer, usar, remover informações

para o sistema?

 Quais sistemas interagem com o sistema em

(43)

CASO DE USO - UML

 Atores – Representação Gráfica

 O ícone estereótipo padrão para um ator é a

figura de um “stick man”, contendo seu nome

abaixo da figura

 Pode ser representado também num retângulo

de Classe, com o estereótipo <<actor>>

Sistema Financeiro Leitor de Codigo

de Barra Gerente Caixeiro

(44)

CASO DE USO - UML

 Atores – Representação Gráfica

 Também pode se usar um ícone que identifique

mais precisamente o tipo de ator

 Todo ator precisa ser identificado por um nome

(restrição acrescentada na UML 2.0)

(45)

CASO DE USO - UML

 Casos de Uso:

 Representam funções completas do produto

 Um caso deve gerar um ou mais benefícios

para o cliente ou os usuários

 O conjunto dos casos de uso cobre toda a

funcionalidade do produto, e cada caso de uso

representa uma fatia independente de

(46)

CASO DE USO - UML

 Casos de Uso – Representação Gráfica:

 Representado por uma elipse contendo seu

nome

Matricular

(47)

CASO DE USO - UML

 Casos de Uso – Representação Gráfica:

 O nome também pode ser colocado abaixo da

elipse

 Esta elipse pode também conter

compartilhamentos referentes a atributos e operações

Reserva de Mesa

Efetuar Venda

(48)

CASO DE USO - UML

 Diagrama de Contexto de caso de uso:

 É um diagrama de caso de uso que mostra as

interfaces do produto com seu ambiente de

aplicação

 Os diversos tipos de usuários e outros

(49)
(50)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Casos de usos representam conjuntos bem

definidos de funcionalidades do sistema, que

não podem trabalhar sozinhas no contexto do sistema

 Casos de usos se relacionam com outros

(51)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Notações especiais são utilizadas para facilitar

a descrição de funcionalidades mais complexas

 Casos de usos primário são aqueles que são

invocados por iniciativa direta de um ator

 Casos de uso secundário são invocados em

(52)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Casos de uso secundários simplificam o

comportamento dos casos de uso primários

(53)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Relacionamentos de casos de uso entre si:

 Generalização, extensão e inclusão

 Relacionamentos de atores entre si:

 Generalização

 Relacionamentos entre atores e casos de uso:

(54)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Associação:

Interação do ator com o caso de uso, ou seja,

a comunicação entre atores e casos de uso,

por meio de envio e recebimento de mensagens

São sempre binárias, ou seja, envolvem

apenas dois elementos

Representam o único relacionamento possível

(55)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Associação:

Representação gráfica corresponde a uma

linha sólida, ligando o caso de uso ao ator e

vice-versa

Operação de Venda

(56)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Generalização:

Ocorre entre casos de uso ou entre atores

Segue o mesmo conceito da orientação a

objetos

É quando temos dois elementos semelhantes,

(57)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Generalização:

Representado graficamente pela seta de

generalização, que corresponde a uma linha

(58)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Generalização:

A seta parte do caso mais

específico ao mais genérico

Vendedor

Gerente

Cadastrar Funcionário

(59)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Extensão <<extend>> :

Representa um caso de uso (funcionalidade)

que pode ser invocado ou não durante a

(60)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Extensão <<extend>> :

Representado graficamente por uma seta

tracejada com a ponta aberta, que parte do

caso de uso estendido para o caso de uso base e contém o estereótipo <<extends>>

(61)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Inclusão << include>>

Representa um caso de uso (comportamento)

comum a mais de um caso de uso

Temos uma inclusão quando existem cenários

(62)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

 Inclusão << include>>

Representado graficamente por uma seta

tracejada com a ponta aberta, que parte do

caso de uso estendido para o caso de uso que

será incluído e contem o estereótipo

(63)

CASO DE USO - UML

 Relacionamento entre Caso de Uso e Atores:

(64)

Referências

Documentos relacionados

Portanto, a inclusão das metodologias ativas é uma alternativa eficaz para auxiliar o estudante a sanar as possíveis dúvidas no decorrer da disciplina e ao mesmo

A PRÓ-SAÚDE - Associação Beneficente de Assistência Social e Hospitalar, entidade sem fins lucrativos, denominada como Organização Social vem através deste, demonstrar o resultado

Ainda, neste trabalho, houve alguns aspectos em que significantemente não ocorreram alterações, como a presença de sub-harmônicos em M1XM2XM3, a presença de

Nesse sentido, com a realização deste trabalho, objetivou-se avaliar a influência do nível de suplementação no terço final de gestação e início de lactação

Alteração geométrica no teto a jusante de comporta do sistema de en- chimento e esvaziamento para eclusa de na- vegação: simulação numérica do escoamento e análise das pressões

Dada a plausibilidade prima facie da Prioridade do Conhecimento Definicional, parece que não se poderia reconhecer instâncias de F- dade ou fatos essenciais acerca

- Superaquecimento estático (SS) é definido como o superaquecimento no qual a válvula permanece fechada e acima do qual a válvula começa abrir; - Superaquecimento de abertura (OS) é

Se há algo que é certo na vida da universidade, e particularmente da Católica, é que enquanto instituição–acontecimento o seu trabalho se define por uma incompletude