projetar cápsulas

18
Projetar Cápsulas Aula de Laboratório

Upload: bishop

Post on 05-Jan-2016

33 views

Category:

Documents


0 download

DESCRIPTION

Projetar Cápsulas. Aula de Laboratório. Diagrama de Estados. Revisão. Maquina de Estados. Maquinas de estados são utilizadas para: Indicar qual será o comportamento dos objetos de acordo com o seu estado. Indicar sequência de ações válidas. construtor. Maquina de Estados De um Banco. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Projetar Cápsulas

Projetar Cápsulas Aula de Laboratório

Page 2: Projetar Cápsulas

Diagrama de Estados Revisão

Page 3: Projetar Cápsulas

Projetar cápsulas | 3

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Maquina de Estados

Maquinas de estados são utilizadas para: Indicar qual será o comportamento dos

objetos de acordo com o seu estado.

Indicar sequência de ações válidas.

Saldo = 0

crédito

Saldo > 0

construtor

crédito debito

debito

Maquina de Estados De um Banco

Page 4: Projetar Cápsulas

Projetar cápsulas | 4

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Noções básicas

Estado Pode indicar a uma possível seqüência de

eventos até o momento

Variáveis são consideradas estados também

Eventos Métodos ou mensagens solicitando serviços

notificando uma informação

Transição Ativado por um evento

Evento[guarda] / ação

Page 5: Projetar Cápsulas

Projetar cápsulas | 5

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Transição Notação

O nome da transição deverá ser significativo Explicar claramente o evento relacionado e a ação

O nome não poderá possuir caracteres especiais

Notação para explicar a transição Evento[guarda] / ação

estado1 estado2

estado1 estado2 Sem evento associado à transição e sem ação

estado1 estado2 Com evento associado à transição e sem ação

Com evento associado à transição e com ação

Page 6: Projetar Cápsulas

Projetar cápsulas | 6

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagramas de EstadosNotação

estado

transicão

estado

transicão final

transicão inicial

super-estado

transicão deorigem externa

auto-transicão

Principais elementos

sub-estado

sub-estado

HEstado história

Page 7: Projetar Cápsulas

Projetar cápsulas | 7

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagrama de EstadosEstados história

Permitem continuidade na execução de máquinas de estados internas a super-estadosExemplo: ...

1. t12. estado13. t24. estado25. t36. estado37. t6 8. estado3.19. t410. estado3.111. t712. estado3.213. t414. estado3.2

...

estado3.1

estado3.2

H

estadohistória

t6

t7

t8

estado1

t2

estado2

t1

estado3

t5

t4t3

Page 8: Projetar Cápsulas

Diagrama de Estrutura Revisão

Page 9: Projetar Cápsulas

Projetar cápsulas | 9

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagrama de EstruturaNotação

Elementos Instâncias de Cápsulas

Portas

Conexões

Instancia_A Instancia_B

conexão

Porta Porta

Page 10: Projetar Cápsulas

Projetar cápsulas | 10

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagrama de EstruturaTipos de Portas

Conjugada

Porta em que a definição dos sinais de entrada e saída é trocada.

End Port

Porta que direciona os sinais que passam por ela diretamente para o statechart da cápsula

Relay Port

Porta que permite a comunicação de cápsulas externas diretamente com as subcápsulas.

Obs.:Podem existir portas com serviços especiais (ex.: timer, log, frame). [Non-wired port]

Page 11: Projetar Cápsulas

Projetar cápsulas | 11

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagrama de EstruturaPortas

Instancia_B

Porta conjugada

Relay Portpublic

End Portprotected

Simboliza maq. estado

Instancia_A

Instancia_C

Page 12: Projetar Cápsulas

Projetar cápsulas | 12

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Exercício Produtor/Consumidor

Produzir: Criar Diagrama de Classes

• Cápsulas Produtor e Consumidor• Protocolo de Comunicação

Criar Diagrama de Estados• De cada uma das cápsulas, com seus estados e

transições

Criar Diagrama de Estrutura• Com a conexão entre as cápsulas

Page 13: Projetar Cápsulas

Projetar cápsulas | 13

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Exemplo: Produtor-Consumidor

Produtor

#/ timer+/ porta

produz(): Q

Consumidor

+/ porta~

consome(q: Q)

Comunicacao

incoming

outgoingenvia(Q )

Esperando

transicão inicial

envio/ consome();

Consumidor

Produzindo

transicão inicial

interrupcao/ produz(); porta.envia.send();

Produtor

Page 14: Projetar Cápsulas

Projetar cápsulas | 14

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagrama de EstruturaExemplo: Produtor Consumidor

Consumidor

porta~

Produtor

portatimer

Page 15: Projetar Cápsulas

Projetar cápsulas | 15

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Diagrama de Estrutura Crie uma cápsula Container com todo o seu

projeto

Todo sistema deverá ter uma cápsula principal, por onde começa seu fluxo de execução

Page 16: Projetar Cápsulas

Projetar cápsulas | 16

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Gerando códigoConfigure o tipo de projeto

Crie um novo componente na visão de componentes e abra sua especificaçãoNa aba General mude o tipo de componente para RT Java Project

• Clique no botão Apply para aplicar a nova configuração

Na aba References, adicione todos os pacotes necessários para compilação do projeto, no nosso caso, somente o pacote modem.Na aba RT Java Project: Selecione a opção Build Jar

Modifique as opções GenerateCommand, CompileCommand e CleanAllCommand, substituindo $defaultMake por gmake

Selecione Gnu_make na opção MakeType

Finalize clicando no botão OK

Page 17: Projetar Cápsulas

Projetar cápsulas | 17

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Executando o projeto

Crie um novo processador na visão de implantação e abra sua especificação Arraste o componente criado para o campo

Component Instances na aba Detail

Clique duas vezes na instancia criada para abrir sua especificação

Na aba Detail, modifique o campo Parameters acrescentando os seguintes parâmetros no começo da linha:

• -java com.rational.rosert.DebugApplication Main

Clique no botão Ok das janelas abertas para confirmar e fechar

Clique com o botão direito na instancia do processo criado e selecione a opção Run Clique na seta de Play.

Page 18: Projetar Cápsulas

Projetar cápsulas | 18

Cop

yri

gh

t ©

20

02

Qu

alit

i. T

od

os

os

dir

eit

os

rese

rvad

os.

Qualiti Software Processes

Gerando códigocriando dependências e compilando

Clique duas vezes no componente Main para abrir seu diagrama Arraste o novo componente para o diagrama aberto

Arraste o componente classes dentro do pacote rosert da visão de componentes

Crie uma associação entre o novo componente e o componente classes

Clique com o botão direito do mouse no componente criado e selecione a opção Build e Build novamente no submenu Clique no botão OK

Retire eventuais erros de compilação do projeto