17
Alessandro Garcia LES/DI/PUC-Rio Abril 2016 Aula 11 Modelagem da Arquitetura

Aula 11 Modelagem da Arquitetura - PUC-Rioinf1301/docs/2016_1/INF1301_Aula11_Arquitetura... · • ex. funções internas/auxiliares, estruturas de dados, etc... ... – São as abstrações

  • Upload
    ngocong

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Alessandro Garcia

LES/DI/PUC-Rio

Abril 2016

Aula 11

Modelagem da Arquitetura

Set 2009 2 /36LES/DI/PUC-Rio

Especificação

• Objetivos dessa aula

– Revisar notação de modelagem da arquitetura

– Realizar exercício: definição da arquitetura do programa de

truco

• Referência básica:

– Capítulo 10

– Seção 8.3

– Capítulo 9.4

– Apêndice 2

• Slides adaptados de: Staa, A.v. Notas de Aula em Programação

Modular; 2008.

• Referência complementar

– Silva, R.P.; UML2 em Modelagem Orientada a Objetos; Florianópolis, SC: Visual

Books; 2007

Set 2009 3 /36LES/DI/PUC-Rio

De requisitos a implementação

Requisitos doSistema

Arquitetura doSistema

Desenvolvimentode cada Módulo

Validaçãodos Módulos

Derivação deCasos de Teste

• Dos requisitos em alto nível de abstração até…

• ... implementação e teste dos módulos do sistema

1. definição de todas as interfaces (*.h)

2. definição de todas as implementações (*.c)

1. Requisitos funcionais

2. Requisitos não-funcionais

modelo lógico

modelo físico

Arquitetura de um sistema é...

• um conjunto dos módulos essenciais de um sistema, suas

interfaces, e as interdependências entre estes

– devendo satisfazer requisitos

• Como representar a arquitetura de sistemas?

– com modelos (representação visual)

• arquitetura poderia ser representada com um simples diagrama de

retângulos e linhas, mas não permite representar interfaces

• Para modelos conceituais da arquitetura, utilizaremos um

diagrama da linguagem UML

– diagrama de “componentes”

– módulos são representados como componentes neste diagrama

Abr 2010 4 /35Alessandro Garcia © LES/DI/PUC-Rio

Set 2009 5 /36LES/DI/PUC-Rio

Diagrama de módulos (componentes)

• Conjunto de módulos (componentes) de software e suas

relações estruturais

• Definição lógica e independente de tecnologia

– Omissão de detalhes de implementação:

• ex. funções internas/auxiliares, estruturas de dados, etc...

• Especificação de interfaces providas e requeridas

• Dependências entre:

– diferentes módulos

– módulos e suas interfaces, e

– entre interfaces

Set 2009 6 /36LES/DI/PUC-Rio

Modelo de Componentes

Concurrent

Exception

Handling

Action

Exception

Exception

Handling

StrategyISearch

ICooperation

Handler

IInvocation

IRaising

IGetInformation

IUpdateInformation

get and update

get and updateget

invoke

handler

search

handler

arquivo *.h

arquivo *.c

Set 2009 7 /36LES/DI/PUC-Rio

Visão Expandida das Interfaces

Jogo de Damas?

• Modelagem da Arquitetura – Como Seria?

Set 2009 8 /36LES/DI/PUC-Rio

? ?

?

???

Jogo de Damas

• Requisitos Funcionais? Exemplos…

• partida é praticada entre duas pessoas, num tabuleiro de 8 x 8

casas alternadamente claras e escuras

• cada jogador possui 12 peças (pretas ou brancas) e tem como

objetivo capturar ("comer") as peças do adversário

• ganha aquele que "comer" todas ou a maior quantidade de peças do

adversário

• cada jogador movimenta uma peça por vez

• existem dois tipos de peças, a peça comum, que são as peças que os

jogadores possuem no início do jogo e as damas

• se uma peça comum do jogador terminar uma rodada na última fileira

de casas do lado oposto do tabuleiro, esta é substituída por uma dama

• etc...

Set 2009 9 /36LES/DI/PUC-Rio

Como criar o modelo da arquitetura?

• Identifique nos requisitos os módulos do sistema

– São as abstrações principais

– São usualmente ‘substantivos’ nos requisitos:

• Damas: Tabuleiro, Peça, Partida/Damas, Jogador, etc…

Set 2009 10 /36LES/DI/PUC-Rio

Jogo de Damas?

• Modelagem da Arquitetura – Como Seria?

Set 2009 11 /36LES/DI/PUC-Rio

LISTA

Jogo de Damas?

• Modelagem da Arquitetura – Como Seria?

Set 2009 12 /36LES/DI/PUC-Rio

? ?

?

Quais funções em cada

módulo e interface?

??

Como criar o modelo da arquitetura?

• Identifique nos requisitos os módulos do sistema

– São as abstrações principais

– São usualmente ‘substantivos’ nos requisitos:

• Damas: Tabuleiro, Peça, Partida/Damas, Jogador, etc…

• Identificação das funções das interfaces

– São usualmente ‘verbos’:

• Damas: criar tabuleiro, inserir peça na casa, mover peça de casas,

retirar peça da casa,….

obter cor da peça, obter status da peça, etc…

Set 2009 13 /36LES/DI/PUC-Rio

Como criar o modelo da arquitetura?

• Identifique nos requisitos os módulos do sistema

– São as abstrações principais

– São usualmente ‘substantivos’ nos requisitos:

• Damas: Tabuleiro, Peça, Partida/Damas, Jogador, etc…

• Identificação das funções das interfaces

– São usualmente ‘verbos’:

• Damas: criar tabuleiro, destruir tabuleiro, inserir peça na casa,

mover peça de casas, retirar peça da casa,….

obter cor da peça, obter status da peça, etc…

• Alocação de cada função para cada interface dos módulos

– Como descobrir qual é a alocação mais apropriada?

• As ações (funções) são sempre feitas sobre o sujeito/substantivo

(candidato a módulo)

Set 2009 14 /36LES/DI/PUC-Rio

(do…Tabuleiro)

Jogo de Damas

• Modelagem da Arquitetura – Visão das Interfaces

Set 2009 15 /36LES/DI/PUC-Rio

Exercício – Modelagem da Arquitetura

• Exercício 3 – crie um modelo da arquitetura

– visão de módulos

– visão detalhada das interfaces

– necessário refinar especificação dos requisitos?

• Entrega dos Exercícios 1 e 2:

– Analisar possíveis defeitos e melhorias na especificação

• Outro grupo

• Revisão do professor

– Devem entregar uma especificação completa e melhorada

como parte do T2

Abr 2010 16 /35Alessandro Garcia © LES/DI/PUC-Rio

Alessandro Garcia

LES/DI/PUC-Rio

Abril 2016

Aula 11

Modelagem da Arquitetura