• Nenhum resultado encontrado

ES1 05 Modelagem Introducao UML

N/A
N/A
Protected

Academic year: 2019

Share "ES1 05 Modelagem Introducao UML"

Copied!
61
0
0

Texto

(1)

Engenharia de Software 1

05 - Modelagem

Introdu¸c˜

ao `

a UML

Alexandre de Andrade Barbosa

(2)

Objetivos

Descrever a importˆ

ancia de projetar/modelar um software

Apresentar a linguagem UML

(3)

Modelagem

Introdu¸c˜

ao

(4)

Modelagem

Introdu¸c˜

ao

Como podemos nos comunicar sobre programas cada vez maiores

e mais complexos?

C´odigos n˜ao s˜ao a melhor forma de comunica¸c˜ao...

... entre cliente e desenvolvedor

... ou, em alguns casos, entre desenvolvedores

(5)

Modelagem

Introdu¸c˜

ao

(6)

Modelagem

Introdu¸c˜

ao

Para cada tipo de projeto, um n´ıvel de planejamento.

Diferentes modelos fornecem vis˜oes distintas.

(7)

Modelagem

Introdu¸c˜

ao

(8)

Modelagem

Introdu¸c˜

ao

Modelos fornecem uma vis˜ao simplificada de um sistema.

Modelos servem para:

visualizar;

descrever estrutura e/ou comportamento;

auxiliar em decis˜oes;

documentar.

Quanto mais diagramas criar melhor meu projeto ser´a?

N˜ao ´e necess´ario criar todos os modelos existentes, e de forma

extremamente detalhada!!!

(9)

Modelagem

Introdu¸c˜

ao

Modelos diferentes apresentam o sistema a partir de perspectivas

diferentes:

Perspectiva externa que mostra o contexto ou ambiente do

sistema

Perspectiva comportamental que mostra o comportamento do

sistema

(10)

Modelagem

Modelos de contexto

No in´ıcio do desenvolvimento deve-se decidir quais s˜ao os limites

(o contexto) do sistema

o que faz parte o sistema

o que faz parte do ambiente

(11)

Modelagem

Modelos de contexto

(12)

Modelagem

Modelos de comportamento

Modelos de comportamento s˜ao utilizados para descrever o

comportamento geral de um sistema

Exemplos de modelos de comportamento:

diagrama de fluxo de dados;

m´aquina de estados (ou diagrama de estados).

Tais modelos podem ser usados em conjunto (mais adequado) ou

de maneira isolada

(13)

Modelagem

Modelos de comportamento

Muitos sistemas s˜ao dirigidos a dados

muitas entradas e sa´ıdas de dados

poucos eventos externos

Diagramas de fluxo de dados modelam sistemas dirigidos a dados

de modo adequado

Outros sistemas s˜ao dirigidos a eventos

pouco processamento de dados

muitos eventos

(14)

Modelagem

Modelos de comportamento

Diagramas de fluxo de dados (DFD) mostram o processamento

fim-a-fim de dados.

DFD ´e um meio de modelagem da an´alise estruturada

Diagrama de fluxo de dados do processamento de um pedido

(15)

Modelagem

Modelos de comportamento

Diagramas de estados exibem os estados do sistema (ou de parte

dele) como n´

os, e eventos como arcos

Eventos alteram o estado do sistema

(16)

Modelagem

Modelos de comportamento

Diagrama de estados de um forno de microondas simples

(17)

Modelagem

Modelos de dados

S˜ao usados para descrever a estrutura l´ogica dos dados

processados pelo sistema

(18)

Modelagem

Modelos de dados

Diagrama ER para representa¸c˜ao de dados

(19)

Modelagem

Modelos de dados

(20)

Modelagem

Modelos de dados

Modelo semˆantico de dados para o sistema LIBSYS (Sommerville)

(21)

Modelagem

Modelos de objetos

As linguagens orientadas a objetos s˜ao bastante utilizadas no

desenvolvimentos de software

(22)

Modelagem

Modelos de objetos

Hierarquia de classes de usu´ario

(23)

Modelagem

Modelos de objetos

(24)

Modelagem

Modelos de objetos

Alguns objetos podem ser formados atrav´es da agrega¸c˜ao de

outros objetos

Objeto agregado que representa um curso

(25)

Modelagem

Modelos de objetos

(26)

Modelagem

Modelos de objetos

A UML ´e uma linguagem de modelagem que possibilita a

representa¸c˜ao do modelos O.O.

Os modelos UML criados devem estar de acordo com as

caracter´ısticas da linguagem de implementa¸c˜ao

(27)
(28)

Unified Modelling Language (UML)

UML ´e uma linguagem de modelagem, toda linguagem sofre

mudan¸cas ao longo do tempo.

UML 1.4

UML 2.0

Diagrama de classes

Diagrama de classes

Diagrama de objetos

Diagrama de objetos

Diagrama de componentes

Diagrama de componentes

Diagrama de implanta¸

ao

Diagrama de implanta¸

ao

-

Diagrama de pacotes

-

Diagrama de estrutura

Diagrama de caso de uso

Diagrama de caso de uso

Diagrama de estados

Diagrama de estados

Diagrama de atividade

Diagrama de atividade

Diagrama de seq¨

encia

Diagrama de seq¨

encia

-

Diagrama de interatividade

Diagrama de colabora¸

ao

Diagrama de comunica¸

ao

-

Diagrama de tempo

(29)
(30)

Diagramas de estrutura

Descrevem ´ıtens estruturais: classes, componentes, objetos, ...

Fornecem uma representa¸c˜ao dos elementos f´ısicos e conceituais.

Descrevem os elementos de forma est´atica

Ser˜ao descritos os diagramas estruturais:

Diagrama de classe

Diagrama de objeto

Diagrama de componente

(31)
(32)

Diagramas de estrutura: D. Objeto

(33)
(34)

Diagramas de comportamento

Descrevem ´ıtens comportamentais: atividades, estados, a¸c˜oes

desempenhadas ...

Fornecem uma descri¸c˜ao de aspectos dinˆamicos do sistema

modelado.

Ser˜ao descritos os diagramas comportamentais:

Diagrama de caso de uso

Diagrama de estados

Diagrama de atividades

(35)

Diagramas de comportamento: Diagrama de caso de uso

(36)

Diagramas de comportamento: Diagrama de estados

(37)
(38)

Diagramas de intera¸c˜ao

Descrevem a dinˆamica de troca de mensagens entre objetos.

Fornecem uma descri¸c˜ao de aspectos dinˆamicos do sistema

modelado.

Descreve o comportamento de um objeto em um caso de uso.

Ser˜ao descritos os diagramas de intera¸c˜ao:

Diagrama seq¨

uˆencia

Diagrama comunica¸c˜ao

Os diagramas de seq¨

uˆencia e comunica¸c˜ao s˜ao isom´

orficos.

(39)

Diagramas de intera¸c˜ao: Diagrama de seq¨uˆencia

(40)

Diagramas de intera¸c˜ao: Diagrama de comunica¸c˜ao

(41)

UML

Diagrama de classes - Descreve a estrutura do sistema em termos

de suas classes exibindo seus atributos, opera¸c˜oes e

responsabilidades

Diagrama de objetos - Exibe um conjunto de objetos e seus

v´ınculos, ´e uma instˆancia de um diagrama de classes

Diagrama de componentes - Apresenta as dependˆencias

existentes entre os componentes do sistema

(42)

UML

Diagrama de caso de uso - Apresenta as funcionalidades do

sistema e os atores que as realizam ou recebem as respectivas

sa´ıdas

Diagrama de estados - Exibe os poss´ıveis estados de objetos de

uma ´

unica classe

Diagrama de atividade - Modela o fluxo de atividades de um

processo

(43)

UML

Diagrama de seq¨

uˆencia - Descreve as intera¸c˜oes com ˆenfase na

ordena¸c˜ao temporal das mensagens

(44)

An´alise

Vis˜ao geral de uso da UML na fase de An´alise

(45)

Projeto

(46)

Ferramentas

ArgoUML:

argouml.tigris.org/

Enterprise Architect:

www.sparxsystems.com.au/

astah community (

):

http://astah.change-vision.com/en/

product/astah-community.html

Omondo:

www.eclipsedownload.com/product.html

Poseidon:

www.gentleware.com/

Rational Rose:

www-306.ibm.com/software/rational/

(47)

Introdu¸c˜ao: Mecanismos gerais

A UML consiste em trˆes tipos de componentes:

blocos de constru¸c˜ao

(48)

Introdu¸c˜ao: Mecanismos gerais

Estere´otipo. Estende o significado de um determinado elemento

Existem diversos estere´otipos pr´e definidos

´

E poss´ıvel definir novos estere´otipos

Pode-se classificar um estere´otipo como:

estere´

otipo gr´afico (´ıcone)

estere´

otipo textual (texto entre

<<>>

)

Estereotipos da UML

(49)

Introdu¸c˜ao: Mecanismos gerais

Notas explicativas. Utilizadas para esclarecer algum aspecto

relacionado a algum elemento de um diagrama

(50)

Introdu¸c˜ao: Mecanismos gerais

Etiquetas valoradas. Define propriedades adicionais para

elementos gr´aficos em UML

{

tag = valor

}

{

tag1 = valor1 , tag2 = valor2 ...

}

{

tag

}

Etiquetas valoradas da UML

(51)

Introdu¸c˜ao: Mecanismos gerais

(52)

Introdu¸c˜ao: Mecanismos gerais

Restri¸c˜oes. Alteram o significado associado a um elemento

Pode-se definir uma restri¸c˜ao:

de modo informal - utilizando linguagem natural

de modo formal - utilizando OCL (Object Constraint Language)

(53)

Introdu¸c˜ao: Mecanismos gerais

Pacotes. Mecanismos utilizados para agrupamento

(54)

Introdu¸c˜ao: Mecanismos gerais

Um diagrama de pacotes exibe relacionamentos entre pacotes

Relacionamentos entre pacotes

(55)

As ferramentas CASE para an´alise e projeto ap´

oiam a cria¸c˜ao e

edi¸c˜ao dos modelos utilizados

Categorias de ferramentas CASE incluem:

Editores de diagramas - s˜ao utilizados para criar diagramas de

diversos tipos

Ferramentas de defini¸c˜ao e gera¸c˜ao de relat´orios - recuperam

informa¸c˜

oes de um reposit´

orio e geram relat´orios com base nestas

informa¸c˜

oes

(56)

Ferramentas CASE que iremos utilizar na disciplina:

astah

- editor de diagramas UML

http://astah.net

Free Student Academic License

http://astah.net/student-license-request

(57)

Exerc´ıcio

(58)

Resumo

UML ´

e um padr˜

ao para modelar sistemas de software

Os diagramas UML podem ser classificados em: diagramas de estrutura, diagramas

de comportamento e diagramas de intera¸c˜

ao

ao diagramas da UML 2.0: Diagrama de classes, Diagrama de objetos, Diagrama

de componentes, Diagrama de implanta¸c˜

ao, Diagrama de pacotes, Diagrama de

estrutura, Diagrama de caso de uso, Diagrama de estados, Diagrama de atividade,

Diagrama de seq¨

encia, Diagrama de interatividade, Diagrama de comunica¸c˜

ao e

Diagrama de tempo

(59)

Ian Sommerville.

Engenharia de Software

, 8

a

ed., 2007.

Cap´ıtulo 7: Processos de engenharia de requisitos

Cap´ıtulo 8: Modelos de sistema

Roger S. Pressman.

Engenharia de Software

, McGraw-Hill, 6

a

ed., 2006.

Cap´ıtulo 11: Conceitos e princ´ıpios de an´alise

Cap´ıtulo 12: Modelagem da an´alise

(60)

Gilleanes T. A. Guedes

UML - Uma abordagem pr´

atica

, 2

a

ed.

Cap´ıtulo 1 : Introdu¸c˜ao `a UML

Cap´ıtulo 3 : Diagrama de Casos de Uso

Eduardo Bezerra

Princ´ıpios de an´

alise e projeto de sistema com UML

. Campus, 2

a

edi¸c˜ao, 2007.

Cap´ıtulo 4 : Modelagem de Casos de Uso

(61)

Perguntas?

Referências

Documentos relacionados

No estudo de Reis, em 2015, a colheita de dados relativa a questões de género, à caraterização do controle social familiar destas pessoas, à extensão das famílias cuida- das,

- 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) é

Os doentes que tomam até 3 microgramas de alfacalcidol por dia, deverão tomar uma cápsula mole de manhã, e 1-2 cápsulas moles à noite.. As cápsulas moles devem ser engolidas

Estas estruturas são consideradas apenas ao nível Nacional e distrital, segundo a Diretiva Operacional Nacional nº1 de Janeiro de 2010, ao nível Municipal as atribuições do CCO

A Vivace Process Instruments é composta por uma equipe multidisciplinar de profissionais com mais de 25 anos no mercado de automação e instrumentação, com ampla experiência nas

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

Juizados Especiais de Maringá Primeiro grupo foi definido como a totalidade dos entrevistados (10 entrevistados), isso possibilitará ter uma visão geral da atuação do

Isso significa que o estudo do problema que emerge entre dignidade e autonomia extrapola o interesse filosófico, sendo fundamental tratá-lo não apenas como um problema interno à