• Nenhum resultado encontrado

Alessandro GarciaLES/DI/PUC-RioAbril 2019Aula 9Modelagem da Arquitetura

N/A
N/A
Protected

Academic year: 2022

Share "Alessandro GarciaLES/DI/PUC-RioAbril 2019Aula 9Modelagem da Arquitetura"

Copied!
21
0
0

Texto

(1)

Alessandro Garcia LES/DI/PUC-Rio

Abril 2019

Aula 9

Modelagem da Arquitetura

(2)

Especificação

• Objetivos dessa aula

Notação de modelagem da arquitetura

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

• 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

(3)

Sumário

• Por que é importante definir arquitetura de um programa?

• Notação para arquitetura de software

módulos, interfaces e dependências definição das interfaces

• Como identificar módulos, interfaces e dependências?

3 /35 Alessandro Garcia © LES/DI/PUC-Rio

(4)

De requisitos a implementação

Requisitosdo Sistema

Arquiteturado Sistema

Desenvolvimento de cada Módulo

Validação dos Módulos Derivação de

Casos 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 arquitetural

(5)

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

5 /35 Alessandro Garcia © LES/DI/PUC-Rio

(6)

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

(7)

7 /36 LES/DI/PUC-Rio

Modelo de Módulos (Componentes)

Concurrent Exception

Handling Action

Exception

Exception Handling

Strategy ISearch

ICooperation

Handler

IInvocation

IRaising

IGet Information

IUpdate Information

get and update

get and update get

invoke handler

search handler

(8)

Modelo de Módulos (Componentes)

Concurrent Exception

Handling Action

Exception

Exception Handling

Strategy ISearch

ICooperation

Handler

IInvocation

IRaising

IGet Information

IUpdate Information

get and update

get and update get

invoke handler

search handler

arquivo *.h arquivo *.c

(9)

9 /36 LES/DI/PUC-Rio

Visão Expandida das Interfaces

(10)

Jogo de Damas?

• Modelagem da Arquitetura – Como Seria?

? ?

?

? ?

?

(11)

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...

11 /36 LES/DI/PUC-Rio

(12)

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…

(13)

Jogo de Damas?

• Modelagem da Arquitetura – Como Seria?

13 /36 LES/DI/PUC-Rio

LISTA

(14)

Jogo de Damas?

• Modelagem da Arquitetura – Como Seria?

? ?

?

Quais funções em cada módulo e interface?

? ?

(15)

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…

15 /36 LES/DI/PUC-Rio

(16)

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)

(do…

Tabuleiro)

(17)

Jogo de Damas

• Modelagem da Arquitetura – Visão das Interfaces

17 /36 LES/DI/PUC-Rio

(18)

Exercício – Modelagem da Arquitetura

• Entregue a especificação de requisitos no fim da aula

• Exercício – crie um modelo da arquitetura

visão de módulos

visão detalhada das interfaces

necessário refinar especificação dos requisitos?

(19)

Modelo de Componentes

Concurrent Exception

Handling Action Exception

Exception Handling

Strategy ISearch

ICooperation

Handler IInvocation

IRaising

IGet Information

IUpdate Information

get and update

get and update get

invoke handler

search handler

Visão de Módulos

Visão de Interfaces

(20)

Exercício – Modelagem da Arquitetura

• Entregue a especificação de requisitos no fim da aula

• Exercício – crie um modelo da arquitetura

visão de módulos

visão detalhada das interfaces

necessário refinar especificação dos requisitos?

(21)

Alessandro Garcia LES/DI/PUC-Rio

Abril 2019

Aula 9

Modelagem da Arquitetura

Referências

Documentos relacionados

Dentre essas respostas estão incluídas inflamação celular e produção de melanina, surgimento de amebócitos circulantes e antioxidantes (células do sistema imunológico e

horizontalmente; ou 2 casas horizontalmente e, em seguida, 1 casa verticalmente. Uma peça pode pular outra peça, mas não pode sair do tabuleiro, e as peças não podem se

O processo de transformação da lógica do território periférico se efetivará na condição do processo sistêmico de inovação, a ser criado com vertentes econômicas,

POWER & UTILITIES FORUM.. • Aplicativo Operação Online em produção desde 4T2017 • Acesso:. • Todos os empregados: informações básicas • Perfil “técnico”:

Cada um desses carbonos assimétricos pode provocar o desvio da luz polarizada de um ângulo α para a direita (composto dextrógiro) ou para a esquerda (composto

Con este libro, gañador do III Premio Martín Codax de poesía, Darío Xohán Cabana continúa explorando vieiros xa albiscados na súa obra, aínda que agora desde

Assinale “Alterar Valores de Peças Já Cadastradas” para modificar as peças que você já enviou para o Portal Busca Peça Legal.. Clique em salvar

O eletrodo compósito de grafite e poliuretana (GPU) foi desenvolvido por MENDES a partir da mistura de pó.. A composição de 60% de grafite e 40% em poliuretana foi considerada a