Sei sulla pagina 1di 50

Engenharia de Software

Engenharia de Software 2012/3


Aula 5 Modelagem de Sistemas
Thiago P. da Silva
thiagosilva@ufmt.br
06/05/13
2
Agenda

Modelagem de Sistemas

Modelos de contexto

Diagramas de Atividades

Modelos de interao

Diagramas de !asos de uso

Diagramas de Se"u#ncia

Modelos estruturais

Diagramas de !lasse

Modelos com$ortamentais

Diagramas de %stado
06/05/13
3
&b'etivos da Aula

!om$reender como modelos gr(ficos $odem ser usados


$ara re$resentar sistemas de soft)are*

!om$reender $or "ue diferentes ti$os de modelos so


necess(rios $ara re$resentar um sistema de soft)are*

%ntender os $rinci$ais diagramas da +M,*

!om$reender $or "ue diferentes modelos a$resentam


vis-es diferentes sobre o sistema. "ue so /teis $ara
diferentes stakeholders.
06/05/13
4
Modelagem de Sistemas

0 o $rocesso de desenvolvimento de modelos abstratos


de um sistema

!ada modelo re$resenta uma viso ou perspectiva


diferente do sistema

Modelos $odem usar nota-es gr(ficas. tal como UM. ou


modelos formais com es$ecificao formal

Modelos so usados am$lamente em outras disci$linas

%ngenharia civil modelos hidr(ulicos

Matem(tica 1 Modelos matem(ticos

23sica. 4u3mica. etc


06/05/13
5
Modelagem de Sistemas

!s modelos so abstra"#es do sistema. e no uma


representa"o alternativa dele

+ma $epresenta"o mant%m todas as informa"#es a


res$eito da entidade a$resentada

+ma &bstra"o sim$lifica e seleciona caracter'sticas


mais salientes

%xem$lo5

+m livro tradu6ido em outra l3ngua 7 uma re$resentao


alternativa da entidade livro

+m resumo $ode ser considerado uma abstrao da


entidade livro
06/05/13
6
Modelagem de Sistemas

Modelos $odem ser usados em todas as etapas da


engenharia de software

Engenharia de re(uisitos extrair re"uisitos do sistema.


esclarecer o "ue o sistema fa6. tirar d/vidas. ex$licar os
re"uisitos $ara outros stakeholders

)rocesso de )ro*eto Descrever o sistema

!utras etapas 1 Documentar a estrutura e o$erao do


sistema. estimular a discusso entre os engenheiros de
soft)are. descrever detalhadamente o sistema em
uma abordagem M++
06/05/13
7
Modelagem de Sistemas

Diferentes modelos $ro$orcionam perspectivas 8ou $ontos de


vista9 diferentes

)erspectiva e,terna modela o contexto ou o ambiente do


sistema

)erspectiva de intera"o modela as intera-es entre um


sistema e seu ambiente. ou entre os componentes de um
sistema

)erspectiva estrutural modela a organi-a"o de um


sistema ou a estrutura dos dados processados $elo
sistema

)erspectiva comportamental modela o comportamento


din.mico do sistema e como ele reage aos eventos
06/05/13
8
Modelagem de Sistemas

A UM 8Unified Modeling Language9 7 uma linguagem de


modelagem am$lamente utili6ada

!on'unto de nota-es "ue visam apoiar a


modelagem de sistemas orientados a ob*etos

:o ex$licita como a modelagem deve ser condu6ida

Pode ser usada $ara modelar sistemas no1&&

Modelos de dom3nio

Modelos de contexto
06/05/13
9
Modelagem de Sistemas

;<= sugerem "ue cinco tipos de diagramas podem


representar a ess/ncia de um sistema

+iagramas de &tividade atividades envolvidas em um


$rocesso ou no $rocessamento de dados

+iagramas de 0aso de Uso intera"#es entre um


sistema e seu ambiente

+iagramas de Se(u/ncia intera"o entre os atores e o


sistema. e entre os com$onente ou ob'etos do sistema

+iagramas de 0lasse mostram as classes de ob'etos do


sistema e as associa-es entre elas

+iagramas de Estado mostram como o sistema reage a


eventos internos e externos
06/05/13
10
Agenda

Modelagem de Sistemas

Modelos de conte,to

Diagramas de Atividades

Modelos de interao

Diagramas de !asos de uso

Diagramas de Se"u#ncia

Modelos estruturais

Diagramas de !lasse

Modelos com$ortamentais

Diagramas de %stado
06/05/13
11
Modelos de !ontexto

Definem os limites do sistema

:ormalmente usados em um est1gio inicial da especifica"o de um sistema

Trabalhar com os stakeholders $ara descobrir funcionalidades do sistema


e o (ue so fornecidos pelo ambiente

Mostram (uais outros sistemas fa-em parte do ambiente. mas no


mostram os tipos de relacionamentos entre sistemas

&s sistema externos $odem5

produ-ir dados $ara o sistema consumir dados deste

compartilhar dados

ser conectados diretamente $or meio de uma rede

estar fisicamente no mesmo local ou em locais se$arados


06/05/13
12
Modelos de !ontexto
E,emplo 2 0onte,to de um Sistema !peracional
S.&.
S.&.
Sistema
de Ar"uivos
Sistema de >er.
de Mem?ria
Sistema >er.
Processador
Sistema de %@S
06/05/13
13
Modelos de !ontexto
+iagrama de &tividades da UM

Modelam atividades. a ordem em "ue so


reali6adas e depend/ncias entre elas

Podem tamb7m indicar entradas e sa3das das atividades

Ateis $ara modelar flu,os de trabalho

%xem$los5

Se"u#ncia de $assos da descrio de um re"uisito

Processos dentro de uma em$resa


06/05/13
14
Modelos de !ontexto
+iagrama de &tividades da UM 2 E,emplo 1
06/05/13
15
Modelos de !ontexto
+iagramas de &tividades da UM

& in'cio de um processo 7 indicado $or um c3rculo $reenchido

& fim do processo 7 indicado $or um circulo $reenchido dentro de outro


c3rculo

&s retBngulos com cantos arredondados re$resentam atividades 8ou


sub$rocessos9

!b*etos so $resentados $or retBngulos 8$odem re$resentar outros sistemas9

As setas re$resentam o flu,o de trabalho de uma atividade $ara outra

A barra s3lida 7 usada $ara indicar coordena"o de atividades

&tividades podem ser e,ecutas em paralelo

4uardas 8anota"#es9 $odem ser inclu3das nas setas


06/05/13
16
Modelos de !ontexto
+iagrama de &tividades da UM 5 E,emplo 2
06/05/13
17
Modelos de !ontexto

:a modelagem de $rocessos de neg?cio 7 comum a


reali6ao de atividades $or v(rias entidades. $artici$antes
no dito $rocesso.

A +M, $ro$-e o conceito de $istas 8swimlanes9 ou rais como


elemento "ue $ermite agrupar as v1rias atividades da
res$onsabilidade de cada entidade participante.

+m diagrama de atividades ilustra o flu,o de controle entre


atividades. en"uanto "ue um diagrama de estados ilustra o
flu,o de controle entre estados
06/05/13
18
Modelos de !ontexto
+iagrama de &tividades da UM 5 E,emplo 3
06/05/13
19
Agenda

Modelagem de Sistemas

Modelos de contexto

Diagramas de Atividades

Modelos de intera"o

Diagramas de !asos de uso

Diagramas de Se"u#ncia

Modelos estruturais

Diagramas de !lasse

Modelos com$ortamentais

Diagramas de %stado
06/05/13
20
Modelos de Cnterao

Mostram intera"o do usu1rio. "ue $odem ter entradas e sa3das. com o


sistema

&*udam a descobrir re(uisitos do usu1rio

Mostram intera"#es entre sistemas

&u intera"#es entre os componentes do sistema

Pode1se usar dois abordagens $ara modelar a interao

0asos de uso "ue mostram. $rinci$almente. intera-es com atores


externos8sistemas ou usu(rios9

+iagramas de Se(u/ncia "ue mostram intera-es entre os com$onentes


do sistema

Diagramas de !asos de uso e se"u#ncia a$resentam intera"#es em


diferentes n'veis de detalhamento

+etalhes de alto n'vel do 0aso de uso podem ser detalhados no


diagrama de se(u/ncia
06/05/13
21
Modelos de Cnterao
0aso de Uso

Am$lamente usado $ara a$oiar a elicita"o de


re(uisitos

$epresenta uma tarefa discreta "ue envolve a


intera"o e,terna com um sistema. "ue $ode ser
hard)are@soft)are@$essoa

&ferece uma viso simples de uma intera"o

6ecess1rio mais detalhes para entender o "ue est(


envolvido
06/05/13
22
Modelos de Cnterao
0aso de Uso 2 E,emplo 1
06/05/13
23
Modelos de Cnterao
0aso de Uso 2 E,emplo 2
06/05/13
24
Modelos de Cnterao
0aso de uso

+m diagrama de casos de uso $ermite dar uma viso


global e de alto n'vel do sistema. sendo fundamental a
definio correta da sua fronteira

+m cen(rio 7 uma determinada se(u/ncia de a"#es "ue


ilustra um com$ortamento do sistema

+ma designao alternativa $ara cen1rio. $or ve6es


utili6ada. 7 Dflu,o de a"#esE
06/05/13
25
Modelos de Cnterao
0aso de uso

Deve1se especificar o comportamento de um caso de uso


descrevendo textualmente um ou mais flu,os de a"#es. de
modo "ue um usu(rio no t7cnico o $ossa entender sem
dificuldade.

Tal es$ecificao deve incluir5

0omo e (uando o caso de uso comea e termina*

4uando 7 "ue o caso de uso interage com os atores*

4ue ob*etos so trocados*

0en1rio principal. e

0en1rios alternativos 8%x.. situa-es de exceo9


06/05/13
26
Modelos de Cnterao
0aso de Uso 2 E,emplo 3
06/05/13
27
Modelos de Cnterao
0aso de Uso 2 E,emplo 3
6ome5 Falidar +su(rio
0en1rio )rincipal
& caso de uso inicia1se "uando o sistema a$resenta uma tela "ue $ede ao cliente o seu carto
eletrGnico. & cliente introdu6 o seu carto magn7tico e. atrav7s de um $e"ueno teclado. a sua senha.
:ote1se "ue o cliente $ode lim$ar a introduo da sua senha in/meras ve6es e re1introdu6ir um novo
n/mero antes de $ressionar o boto D%ntrarE. & cliente ativa o boto D%ntrarE $ara confirmar. &
sistema l# a senha e a res$ectiva identificao do carto. e verifica se 7 v(lido. Se a senha for v(lida o
sistema aceita a entrada e o caso de uso termina.
0en1rio &lternativo 1 8!liente cancela o$erao9
& cliente $ode cancelar a transao em "ual"uer momento ativando o boto D!ancelarE. im$licando a
re1iniciali6ao do caso de uso. :o 7 reali6ada "ual"uer alterao H conta do cliente.
0en1rio &lternativo 2 8senha inv(lida9
Se o cliente introdu6 uma senha inv(lida o carto MI 7 e'etado e o caso de uso reiniciali6ado. Se tal
ocorrer < ve6es consecutivas. o sistema aciona medidas de segurana e DrecolheE o carto e cancela
a transao* no $ermitindo "ual"uer interao nos J minutos seguintes.
06/05/13
28
Modelos de Cnterao
0aso de Uso 2 E,emplo 4enerali-a"o
DTestar SenhaE e DLeitura com SmartcardE so es$eciali6am o
caso de uso DFalidar usu(rioE
06/05/13
29
Modelos de Cnterao
0aso de Uso 2 E,emplo 77include88
$ela"o de delega"o. significando "ue o caso base incor$ora o
com$ortamento do outro caso
06/05/13
30
Modelos de Cnterao
+iagramas de Se(u/ncia

Modelam as intera"#es entre os atores e os ob*etos em um sistema. e


as intera"#es entre os pr3prios ob*etos

Mostra as intera"#es "ue ocorrem durante um caso de uso9 segundo


uma viso temporal

+m diagrama de se"u#ncia 7 re$resentado atrav7s de duas dimens-es5

a dimenso hori6ontal. "ue re$resenta o con*unto de ob*etos* e

a dimenso vertical "ue representa o tempo

&s ob'etos e atores envolvidos so listados no to$o do diagrama

:ntera"#es entre ob*etos so indicadas $or setas anotadas


06/05/13
31
Modelos de Cnterao
+iagramas de Se(u/ncia 2 E,emplo 1
06/05/13
32
Modelos de Cnterao
+iagramas de Se(u/ncia 2 E,emplo 2
06/05/13
33
Agenda

Modelagem de Sistemas

Modelos de contexto

Diagramas de Atividades

Modelos de interao

Diagramas de !asos de uso

Diagramas de Se"u#ncia

Modelos estruturais

Diagramas de !lasse

Modelos com$ortamentais

Diagramas de %stado
06/05/13
34
Modelos %struturais

%xibem a organi-a"o de um sistema em termos de seus


componentes e seus relacionamentos

Podem ser5

Est1ticos. "ue mostram a estrutura do pro*eto do


sistema ou*

+in.micos. "ue mostram a organi-a"o do sistema em


e,ecu"o

!on'unto de threads "ue interagem entre si

Pode1se criar modelos estruturais "uando se discute e


$ro'eta a ar"uitetura do sistema
06/05/13
35
Modelos %struturais
+iagrama de classe

So usados $ara modelar um sistema orientado a ob*etos

Mostra as classes de ob*etos de sistema e suas


associa"#es

De$end#ncia

Kerana e reali6ao

Associao

+ma classe 7 uma abstrao de um con'unto de ob'etos


com atributos comuns e os servi"os fornecidos $or cada
ob'eto

Pers$ectiva inerentemente est1tica


06/05/13
36
Modelos %struturais
+iagrama de classe

!s modelos podem ter n'veis de abstra"o diferentes em eta$as


da %ngenharia de soft)are

:a engenharia de re"uisitos $odemos $ensar em ob'etos do


contexto e criar classes $ara eles

De$ois $ode1se refinar estas classes

As classes so retBngulos com tr#s divis-es

o nome na $arte su$erior.

atributos na intermedi(ria e

o$era-es na inferior

!lasses $odem tamb7m a$arecer a$enas como retBngulos

Lelacionamentos entre classes so linhas


06/05/13
37
Modelos %struturais
+iagrama de classe 5 E,emplo
06/05/13
38
Modelos %struturais
+iagrama de classe 2 E,emplo 2

+m ob'eto 8o todo9 7 com$osto de outros ob'etos 8as


partes9

:a &grega"o. a exist#ncia do &b'eto1Parte fa6 sentido.


mesmo no existindo o &b'eto1Todo
06/05/13
39
Modelos %struturais
+iagrama de classe 2 E,emplo 2

+m ob'eto 8o todo9 7 com$osto de outros ob'etos 8as


partes9

0omposi"o 7 uma agregao mais forte* nela. a


exist#ncia do &b'eto1Parte :M& fa6 sentido se o
&b'eto1Todo no existir
06/05/13
40
Agenda

Modelagem de Sistemas

Modelos de contexto

Diagramas de Atividades

Modelos de interao

Diagramas de !asos de uso

Diagramas de Se"u#ncia

Modelos estruturais

Diagramas de !lasse

Modelos comportamentais

Diagramas de %stado
06/05/13
41
Modelos !om$ortamentais

Mostram o comportamento din.mico do sistema "uando


est( em e,ecu"o

& "ue o sistema fa6 em res$osta a est'mulos de seu


ambiente

Est'mulos ; dados ou eventos

+ados 1 dados "ue chegam $recisam ser $rocessados


$elo sistema

Eventos 2 eventos dis$aram o $rocessamento do sistema.

Dois $rinci$ais ti$os

Modelagem !rientada a +ados

Modelagem +irigida a Eventos


06/05/13
42
Modelos !om$ortamentais
Modelagem !rientada a +ados

Mostram a se(u/ncia de a"#es envolvidas no


processamento de dados de entrada e a gerao de uma
sa3da corres$ondente

So <teis durante a an1lise de re(uisitos. $ois $odem ser


usados $ara mostrar. do in3cio ao fim. o processamento de
um sistema

& UM no tem diagramas orientado a dados. %ntretanto


$ode1se usar diagramas de se"u#ncia

Diagramas de se"u#ncia destacam os ob'etos de um


sistema. en"uanto os diagramas orientados a dados
destacam as fun-es e os dados
06/05/13
43
Modelos !om$ortamentais
Modelagem !rientada a +ados

+iagramas de flu,o de dados =+>+?

Mostram as etapas de processamento em sistema.

:o reconhecem ob'etos
06/05/13
44
Modelos !om$ortamentais
Modelagem !rientada a Eventos

Mostram como o sistema reage a eventos internos e e,ternos

Sistemas t#m n/mero finito de estados e eventos $odem causa uma


transi"o de um estado para outro

& diagrama de estados da UM 8StateCharts9 mostra os estados


como n?s e eventos como arcos entre n?s. 4uando ocorre um
evento. o sistema move de um estado $ara outro

6o mostra o flu,o de dados. mas $ode incluir informa-es


adicionais sobre o $rocessamento reali6ado em cada estado.

0 im$ortante fornecer mais detalhes sobre os est'mulos e


estados. utili6ando texto e tabelas
06/05/13
45
Modelos !om$ortamentais
Modelagem !rientada a Eventos

Mostram como o sistema reage a eventos internos e e,ternos

Sistemas t#m n/mero finito de estados e eventos $odem causa uma


transi"o de um estado para outro

& diagrama de estados da UM 8StateCharts9 mostra os estados


como n?s e eventos como arcos entre n?s. 4uando ocorre um
evento. o sistema move de um estado $ara outro

6o mostra o flu,o de dados. mas $ode incluir informa-es


adicionais sobre o $rocessamento reali6ado em cada estado.

0 im$ortante fornecer mais detalhes sobre os est'mulos e


estados. utili6ando texto e tabelas
06/05/13
46
Modelos !om$ortamentais
+iagrama de estados da UM 2 >orno de Microondas
06/05/13
47
Modelos !om$ortamentais
+iagrama de estados da UM
06/05/13
48
Modelos !om$ortamentais
+iagrama de estados da UM 2 >orno de Microondas
06/05/13
49
+iagrama de estados da UM 2 >orno de Microondas
06/05/13
50
Lefer#ncias
;N= 1 S&MM%LFC,,%. Can. Engenharia de Software. O. ed..
JPP<.
;J= 1 PL%SSMA:. L.S. Engenharia de Software@ Uma
abordagem )rofissional. Q ed.. Mc>ra) Kill. JPNN.
;<= 1 :EEE Guide to the Software Engineering Body of
Knowledge JPPR Fersion. Dis$on3vel em
htt$5@@))).s)eboS.org@.

Potrebbero piacerti anche