Em Conceito: Arquitetura do Sistema, você encontrará o conceito dos pontos de
vista a partir dos quais um sistema pode ser examinado; aqui, o ponto de vista físico é de particular
relevância. Esse ponto de vista "tem o foco nas interações distribuídas entre os objetos no sistema e fornece os
mecanismos para suportar a distribuição" [citação de Architecting with RM-ODP, Janis Putman, Prentice Hall PTR].
No nível descrito aqui, os objetos lógicos incluem instâncias do subsistema. O Modelo de Implementação suporta esse
ponto de vista, descrevendo a distribuição física do sistema e o suporte físico para interações distribuídas entre os
objetos lógicos suportados pelo sistema.
O objetivo de um Modelo de Implementação é capturar a decomposição do sistema em elementos que hospedam o
processamento. Isso é feito em vários níveis de abstração, isto é, Localidade (o mais abstrato), Descritor e
Implementação (o menos abstrato, no qual as opções reais de hardware e software são descritas)- esses níveis são mais
ou menos equivalentes aos níveis de Conceito, Especificação e Físico descritos para o Modelo de
Implementação (que é utilizado quando o aplicativo do RUP está limitado ao desenvolvimento de software). A
manifestação mais comum do modelo de implementação está nos níveis de Design e Implementação, através do uso de
diagramas de implementação UML. A seguir, uma introdução ao conceito de ponto de vista físico de Localidade no
nível de Análise.
O Modelo de Localidade representa o particionamento e a distribuição iniciais, físicos e abstratos, do
sistema e diz respeito aos recursos físicos do sistema (nós, dispositivos, sensores e suas conexões e interfaces
físicas, além das características físicas, por exemplo, peso, geração de calor, consumo de energia, vibração e outros).
Uma localidade expressa nocionalmente onde ocorre o processamento (a semântica de localidade envolve um agrupamento
mais rigoroso dos recursos) sem definir o local geográfico exato ou como o recurso de processamento deve ser realizado.
Em sistemas muito grandes e complexos, é possível que o Modelo de Localidade tenha localidades que se decompõem em
localidades mais granulares (exatamente como um sistema pode conter subsistemas). No nível de Descritor, são
especificados os tipos de recursos de processamento em uma localidade - estes são nós, que podem incluir
dispositivos de computação (servidores, estações de trabalho, etc.), pessoas ou outros dispositivos eletromecânicos.
Por último, no nível de Implementação, é feita a seleção real do hardware, é determinado o número de instâncias
da função (no caso de recursos humanos), com um conjunto definido de configurações, capacidade, energia e outros
requisitos de ambiente, custo e desempenho. Por exemplo, uma visualização Localidade poderia mostrar que o sistema
permite o processamento integrado de um satélite espacial e uma estação terrestre. Outros exemplos são mostrados nas
figuras na seção Diagramas de Localidade.
O Modelo de Implementação também é utilizado para registrar as operações do subsistema hospedadas em cada localidade -
isso determina os requisitos de computação a serem suportados na localidade. Com base no comportamento a ser suportado
nas localidades, as colaborações de localidades podem ser construídas (e representadas em diagramas de interação)- elas
ajudam a caracterizar as conexões entre as localidades.
Os diagramas de localidade mostram o particionamento inicial, como os elementos de processamento do sistema são
distribuídos e como eles são conectados. A localidade de computação é um problema ao considerar requisitos
originalmente não funcionais e, para muitos engenheiros de sistemas, isto é "a arquitetura".
Os diagramas de localidade consistem em dois elementos:
-
Localidade - uma localidade é uma coleta de recursos de computação, de armazenamento, de estrutura, eletromecânicos
e humanos que podem hospedar o processamento (no senso comum) e/ou interagir fisicamente com o ambiente e outras
localidades.
-
Conexões - caminhos para itens físicos de informações, massa, energia ou distintos a serem trocados entre as
localidades.
A semântica dos diagramas de localidade são semelhantes àquela dos diagramas de implementação e as localidades são
representadas como nós UML estereotipados. No padrão UML, um nó é um classificador que "... é um objeto físico que
representa um recurso de processamento, geralmente tendo pelo menos uma memória e muitas vezes também o recurso de
processamento. Os nós incluem os dispositivos de computação, além de recursos humanos e recursos de processamento
mecânico". O UML nos permite estender a semântica de nós, e as associações que os conectam, através do estereótipo e da
aplicação de valores rotulados; além disso, esses recursos são utilizados para definir localidades e conexões. O ícone
para uma localidade é um cubo arredondado (consulte as ilustrações na seção Diagramas de Localidade).
Cada localidade no Modelo de Implementação precisa de uma descrição anexada dos requisitos suplementares derivados (das
especificações suplementares) que especificam a qualidade (confiabilidade, capacidade de manutenção, segurança e
outros), os requisitos físicos e ambientais e as restrições de desenvolvimento (custo, risco técnico e outros). A
partir desses requisitos, são determinadas as características reais (de cada localidade); obviamente elas são
escolhidas para atender no mínimo aos requisitos explícitos, mas poderão exceder os requisitos se a prática de
engenharia correta determinar isso - por exemplo, para lidar com as demandas de capacidade inesperadas.
As localidades são caracterizadas por:
-
Tags de qualidade, como confiabilidade, disponibilidade, desempenho, capacidade e outros.
-
Tags de gerenciamento, como custo e risco técnico.
As conexões são caracterizadas pelo seguinte:
-
Parâmetros de links, como taxa de dados, protocolos suportados, taxa de fluxo físico.
-
Tags de gerenciamento, como custo e risco técnico.
À medida que você avança pelo modelo de design, as localidades podem ser refinadas para um ou mais nós, ou mais de uma
localidade pode ser mapeada para um único nó. E, pela liberdade dada pela definição UML, as localidades podem
representar coisas totalmente discrepantes, realizadas no final, por exemplo, como uma coleta de plataformas de
hardware, parte de um recurso computacional ou grupos de recursos humanos de trabalho em conjunto.
As figuras mostram diagramas de Localidade que documentam diferentes abordagens de engenharia para uma empresa
"click-and-mortar". A empresa possui várias lojas de varejo, armazéns centrais e presença na Web. Na primeira solução,
existe recurso de processamento nas lojas. Na segunda solução, todos os terminais são conectados diretamente a um
processador do escritório central. Em cada caso, as características podem ser configuradas para as localidades
necessárias para realizar o design. Nos dias de hoje, a maioria das pessoas concordariam que o primeiro exemplo é o
melhor design. Entretanto, a solução no segundo exemplo poderia vir a tornar-se superior em alguns anos.
Diagrama de Localidade, Exemplo 1.
Diagrama de Localidade, Exemplo 2.
|