Sie sind auf Seite 1von 13

Engenharia de Componentes - Parte 2

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

DESENVOLVIMENTO

FRONT-END

BANCO DE DADOS

LOGIN

Publicidade

Desenvolvimento - Java

Engenharia de Componentes Parte 2


Este estudo descreve assuntos relacionados componentizao,
que devem ser analisados antes de um estudo mais aprofundado
neste universo da componentizao de software. Os conceitos
tratados sero a Engenharia de software, engenharia web e
engenharia de componentes.
por Jean Wagner Kleemann

2.4 Processo de desenvolvimento de software


O processo de desenvolvimento de software, basicamente
determina uma estrutura para cada rea ou etapa no perodo de
desenvolvimento, relacionando as tecnologias e procedimentos
a serem utilizados.
Estas reas dentro do processo de desenvolvimento sero
usadas como alicerce para controlar o desenvolvimento do
projeto, determinando em que fase as tcnicas devem ser

Anuncie | Fale Conosco | Publique


Seja o primeiro de seus amigos a curtir isso.

Copyright 2015 - todos os direitos


reservados para Web03

1 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

Como os artefatos so produzidos em fases distintas, e


refinados ao longo do tempo, eles ajudam a organizar as
iteraes e a direcionar o projeto, uma vez que o PU baseado
em casos de uso durante praticamente todas as fases. Portanto
estes artefatos so primordiais para orientar a conduo do
projeto.
2.4.2 Rational Unified Process (RUP)
O Rational Unified Process (RUP) foi desenvolvido pela IBM,
sendo uma ramificao mais detalhada do PU, possuindo um
grande conjunto de manuais e modelos de artefatos a serem
produzidos ao longo do processo, alm de tutoriais da
ferramenta Rational Suite (conjunto de ferramentas construdas
em torno do RUP).
O processo do RUP disponibiliza uma abordagem baseada em
disciplinas para atribuir tarefas e responsabilidades dentro de
uma organizao de desenvolvimento, assim como o PU.
Tambm baseado em casos de uso, orientado pela
arquitetura, iterativo e incremental, apresentando uma gama de
papis, disciplinas, tarefas e artefatos.
Integrado ao RUP esto algumas prticas de desenvolvimento
de software, sendo elas:
Desenvolvimento de software de forma iterativa.
Gerenciamento de requisitos.
Arquitetura baseada em componentes.
Modelagem de software por meio de diagramas.
Analise da qualidade de software.
Gerenciamento de mudanas de software.
2.4.2.1 Fases
O RUP herda quatro fases do PU, sendo elas:
Concepo: definida a viabilidade do projeto como negcio,
atravs da delimitao de seu escopo, e de estimativas de
custo, cronograma e retorno sobre o investimento (ROI). Riscos
so identificados e gerenciados, so definidos os requisitos
funcionais e no funcionais, e traado um esboo da
arquitetura do sistema, que servir como alicerce para sua
construo. So definidas as primeiras verses do modelo de
negcio, do modelo de casos de uso, da lista de riscos e suas

2 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

Elaborao: Refinamento do sistema, com a identificao de


quase todos os casos de uso, com o detalhamento da
arquitetura traada na fase anterior e com o gerenciamento
contnuo dos riscos envolvidos. Estimativas realistas feitas nesta
fase permitem preparar um plano para orientar a construo do
sistema nas fases posteriores. possvel que se tenha uma
verso completa do modelo de negcios.
Construo: Nesta fase o sistema efetivamente
desenvolvido e, em geral, tem condies de ser operado,
mesmo que em ambiente de teste, pelos clientes. Ao final da
fase de construo tem-se um software executvel, a
atualizao de artefatos do sistema refletindo o estado atual do
sistema, e um manual do usurio detalhado.
Transio: O sistema entregue ao cliente para o uso em
produo. Nesta fase testes so realizados, um ou mais
incrementos do sistema so implantados e, se necessrio,
defeitos podem ser corrigidos. tambm nessa fase que os
usurios recebem treinamento para a operao do sistema.
2.5 Plataforma tecnolgica
2.5.1 Java
O Java uma plataforma de desenvolvimento que chama a
ateno de analistas, projetistas e programadores, pois
resultante de um grande trabalho de pesquisa cientfica e
tecnolgica que ser descrito nos tpicos seguintes.
2.5.1.1 Histrico
Segundo Peter Jandl Junior (2007), em 1991 um pequeno grupo
de projeto da Sun Microsystems denominado Green, pretendia
criar uma nova gerao de computadores portteis inteligentes,
capazes de se comunicar de muitas formas, ampliando suas
potencialidades de uso. Para tanto se decidiu criar tambm uma
nova plataforma para o desenvolvimento destes equipamentos
de modo que seu software pudesse ser portado para os mais
diferentes tipos de equipamentos. A primeira escolha de uma
linguagem de programao para tal desenvolvimento foi C++,
aproveitando suas caractersticas e a experincia dos
integrantes do grupo no desenvolvimento de produtos. Mas
mesmo o C++ no permitia realizar com facilidade tudo aquilo
que o grupo visionava.
James Gosling, um dos lderes do projeto, decidiu pela criao
de uma nova linguagem de programao que pudesse conter
tudo aquilo considerado importante e que ainda fosse simples,

3 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

da existncia de uma destas rvores em frente ao escritrio de


Gosling. Para dar suporte linguagem tambm surgiram o
Green OS e uma interface grfica padronizada.
Devido a problemas de direitos autorais, o Oak recebe o novo
nome Java, mas continua sem uso definido at 1994, quando,
estimulados pelo grande crescimento da internet, Patrick
Naughton e Jonathan Payne desenvolveram o programa
navegador WebRunner, capaz de efetuar o download e a
execuo de cdigo Java via internet. Este navegador, sob o
nome HotJava, e a linguagem Java foram apresentados
formalmente pela Sun em maio de 1995 no SunWorld"95, ento
o interesse pela soluo se mostrou explosivo. Logo no incio de
1996 a Netscape Corp. lana a verso 2.0 de seu navegador, o
qual incorpora as capacidades de efetuar o download e realizar
a execuo de pequenas aplicaes Java denominadas
applets.
Numa iniciativa indita, a Sun decide disponibilizar um conjunto
de ferramentas de desenvolvimento Java gratuitamente para a
comunidade de software, embora detenha todos os direitos
relativos linguagem e s ferramentas de sua autoria. Surge
assim, em meados de 1996, o JDK 1.02 (Kit de
Desenvolvimento Java). As plataformas inicialmente atendidas
foram: Sun Solaris e Microsoft Windows 95/NT. Uma vez que a
especificao da linguagem e do ambiente de execuo
tambm foram disponibilizados publicamente, progressivamente
foram aparecendo kits para outras plataformas, tais como IBM
OS/2, Linux e Apple Mac.
Um ano aps seu anncio, ocorre o primeiro grande evento da
linguagem Java, o JavaOne Conference, que, desde ento,
vem sendo usado para apresentar as novas caractersticas,
casos de sucesso, produtos e tecnologias associadas. Foi assim
que se iniciou a histria de sucesso do Java.
2.5.1.2 A linguagem de programao Java
A linguagem Java possui algumas caractersticas que, em
conjunto, diferenciam-na das demais linguagens de
programao. Dentre os diversos autores da literatura Java
como Horstmann (2000), Newman (1996), entre outros,
destacam caractersticas que so alguns pontos-chave da
Linguagem:
Orientada a Objetos Tudo em Java so classes ou
instancias de classes, por isso Java totalmente orientada a
objetos, pois, possui mecanismos para abstrao de dados

4 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

classe a partir de outra) e polimorfismo (diferentes classes


podem definir mtodos de mesmo nome).
Independente de Plataforma Os programas em Java
utilizam uma forma de compilao intermediria que resulta em
uma codificao denominada bytecode, um tipo de linguagem
de mquina (baixo nvel) que destinado a JVM (Maquina
Virtual Java). Dessa forma a JVM interpreta os bytecodes,
independente da plataforma, permitindo assim, que um
programa Java seja executado da mesma forma em qualquer
arquitetura.
Gerenciamento Automtico de Memria - A JVM possui um
mecanismo chamado de Garbage Collector (Coletores) que
responsvel por alocar e liberar os dados da memria
automaticamente. Com isso no necessrio que o
desenvolvedor realize tais procedimentos manualmente,
eliminando algumas falhas comuns como: tentar acessar um
objeto que j foi liberado da memria ou esquecer-se de liberar
um objeto.
Desempenho Nas primeiras verses, o Java apresentava
certa limitao quanto a performance, mas isto foi superado
com algumas adaptaes na JVM. Um compilador JIT (Just In
Time) foi incorporado na JVM que passou a interpretar os
bytecodes durante a execuo do programa. Conforme as
novas geraes de compiladores como, por exemplo, o
HotSpot da Sun combinado com a JVM, a performance vem
melhorando de forma muito significativa, podendo concorrer at
mesmo com o C++ (Carmine Mangione, on-line).
Tratamento de excees: Em alguns casos, a ocorrncia de
algum erro durante a execuo de um programa pode fazer com
que o computador trave sendo necessrio reinicia-lo. Com a
utilizao do Java este tipo de evento no acontece, pois, a
JVM verifica em tempo de execuo um conjunto de eventos
(acesso a memria, abertura de arquivos, etc.) e ao encontrar
algum impedimento ou inconsistncia gera uma exceo (uma
espcie de mensagem com a descrio do erro).
Segurana: Diferente das demais linguagens, em Java a
aplicao no se comunica com o Sistema Operacional, e sim
com a JVM que por sua vez interage com o Sistema. O
bytecode gerado pela aplicao deve passar primeiro por alguns
requisitos de segurana da JVM, que caso encontre alguma
irregularidade impede a execuo do cdigo.
Multithread: Capaz de executar vrias tarefas (conjunto de

5 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

Vale destacar que para desenvolver programas em Java,


primeiramente necessrio um editor que permita salvar o
programa fonte com a extenso .java, como por exemplo o
JEdit, JCreator ou at mesmo o bloco de notas do Microsoft
Windows. Uma alternativa mais interessante o uso de uma
IDE (Integrated Development Environment) prpria para Java,
como o NetBeans ou Eclipse. Posteriormente com base no
arquivo .java, o compilador Java responsvel por gerar o
arquivo de extenso .class, que o bytecode propriamente
dito. Ento a JVM interpreta e executa os arquivos de classe
fazendo o uso do cdigo nativo (usado para comunicar-se com
o hardware) do Sistema Operacional.
Dessa forma o cdigo Java o mesmo para diferentes
arquiteturas, pois o que muda so as distribuies da JVM,
livrando o desenvolvedor de ajustar o cdigo conforme a
plataforma.
2.5.1.3 A plataforma tecnolgica Java
Os ambientes de desenvolvimento ou plataformas Java
(ALECRIM, 2007, on-line):
JSE (Java Standard Edition): Pode-se dizer que o ambiente
principal, pois o JEE e o JME so aprimorados do JSE.
Desenvolvido para aplicaes baseadas em cliente/servidor.
JEE (Java Enterprise Edition): As aplicaes WEB so
fundamentadas nesta plataforma. As implementaes neste
padro so muito complexas, contm bibliotecas exclusivas
para o acesso a servidores, banco de dados, sistema de
e-mails, entre outros.
JME (Java Micro Edition): Corresponde ao JSE reduzido, para
dispositivos mveis (telefones celulares, palmtops,...).
2.5.2 Sistema Gerenciador de Banco de Dados
Segundo Abraham Silberschatz, um sistema gerenciador de
banco de dados (SGBD) constitudo por um conjunto de dados
associados a um conjunto de programas para acesso a esses
dados.
2.5.2.1 Conceito de SGBD
Um SGBD possui estruturas de dados otimizadas, que permitem
a manipulao de grandes quantidades de informao, e
apresentam um modelo que define o esquema dos dados
armazenados no sistema. Os quatro modelos mais conhecidos

6 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

Hierrquico.
Em Rede.
Relacional.
Orientado a Objetos.
Existem tambm outros modelos, variando com o autor:
O modelo relacional estendido uma adio de caractersticas
do modelo orientado a objetos ao relacional.
O semi-estruturado dedicado a documentos em formatos
semi-estruturados, normalmente em XML.
Um SGBD deve apresentar algumas caractersticas e
responsabilidades, tais como:
Integridade semntica (garantia de dados sempre corretos
com relao ao domnio de aplicao)
Segurana (evitar violao de consistncia dos dados,
segurana de acesso por usurios e aplicaes, segurana
contra falhas).
Gerenciamento de Concorrncia (evitar conflitos de acesso
simultneo a dados por transaes).
2.5.2.2 Uma breve histria do PostgreSQL
O PostgreSQL um dos resultados de uma ampla evoluo
que se iniciou com o projeto Ingres, desenvolvido na
Universidade de Berkeley, Califrnia. O lder do projeto, Michael
Stonebraker, um dos pioneiros dos bancos de dados relacionais,
deixou a universidade em 1982 para comercializar o Ingres,
porm retornou a ela logo em seguida. Aps seu retorno a
Berkeley, em 1985, Stonebraker comeou um projeto ps-Ingres
com o objetivo de resolver problemas com o modelo de banco
de dados relacional. O principal problema era a incapacidade do
modelo relacional compreender tipos (atualmente, chamados
de objetos), ou seja, combinaes de dados simples que
formam uma nica unidade.
O projeto resultante, chamado Postgres, era orientado a
introduzir a menor quantidade possvel de funcionalidades para
completar o suporte a tipos. Estas funcionalidades incluam a
habilidade de definir tipos, mas tambm a habilidade de
descrever relaes - as quais at este momento eram
amplamente utilizadas, mas completamente mantidas pelo
usurio. No Postgres, o banco de dados "compreendia" as

7 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

Iniciando em 1986, a equipe divulgou uma srie de documentos


descrevendo a base do sistema e em 1988 o projeto possua
um prottipo funcional. A verso 1 foi liberada para um grupo
pequeno de usurios em junho de 1989, seguida pela verso 2
com um sistema de regras reescrito em junho de 1990. Para a
verso 3, liberada em 1991, o sistema de regras foi reescrito
novamente, mas tambm foram adicionados suporte para
mltiplos gerenciadores de armazenamento e um melhorado
motor de consultas. J em 1993, Postgres havia crescido
imensamente em popularidade e possua uma grande demanda
por suporte e por novas funcionalidades. Aps a liberao da
verso 4, a qual era uma simples verso de limpeza, o projeto
foi oficialmente abandonado pela Universidade de Berkeley.
Entretanto, devido ao fato do seu cdigo fonte estar sob uma
licena BSD, o seu desenvolvimento foi continuado. Em 1994,
dois estudantes de Berkeley, Andrew Yu e Jolly Chen,
adicionaram um interpretador SQL para substituir a linguagem
QUEL (desenvolvida para o Ingres) e o projeto foi renomeado
para Postgres95. Com a divulgao de seu cdigo pela Internet,
Postgres95 iniciou uma nova vida como software open source.
Em agosto de 1996, Marc Fournier, Bruce Momjian e Vadim B.
Mikheev lanaram a primeira verso externa da Universidade de
Berkeley e deram incio tarefa de estabilizar o cdigo herdado.
Tambm em 1996, o projeto foi renomeado para PostgreSQL a
fim de refletir a nova linguagem de consulta ao banco de dados:
SQL. A primeira verso de PostgreSQL, a 6.0, foi liberada em
janeiro de 1997. Desde ento, um grupo de desenvolvedores e
de voluntrios de todo o mundo, coordenados pela Internet, tm
mantido o software e desenvolvido novas funcionalidades.
As principais caractersticas acrescentadas nas verses 6.x so
o en:MVCC (Multiversion Concurrency Control Controle de
Concorrncia Multiverses), melhorias no SQL e novos tipos de
dados nativos (novos tipos de datas e hora e tipos geomtricos).
Em maio de 2000 foi liberada a verso 7.0. As verses 7.x
trouxeram as seguintes novas funcionalidades: Write-Ahead Log
(WAL), esquemas SQL, outer joins, suporte a IPv6, indexao
por texto, suporte melhorado a SSL e informaes estatsticas
do banco de dados.
A verso 8.0 foi lanada em janeiro de 2005 e entre outras
novidades, foi a primeira a ter suporte nativo para Microsoft
Windows (tradicionalmente, o PostgreSQL s rodava de forma
nativa em sistemas Unix e, em sistemas Windows - atravs da

8 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

in-time recovery, roles e Two-Phase Commit (2PC). Em Julho de


2009 foi lanada a verso mais recente: 8.4.
2.5.2.3 Caractersticas tcnicas do PostgreSQL
Licena BSD (Berkeley Software Distribution). Portanto pode
ser utilizado, modificado e distribudo por qualquer pessoa ou
empresa para qualquer finalidade, sem encargo, em quaisquer
dos sistemas operacionais suportados.
Grande nmero de recursos, tais como: Comandos complexos,
Chaves estrangeiras, Gatilhos, Vises, Integridade de
Transaes, Controle de Simultaneidade Multi-verso, (MVCC),
Suporta mltiplas transaes online concorrentes entre
usurios, Suporte a Rules (sistema de regras que reescreve
diretivas SQL), Suporte ao modelo hbrido objeto-relacional,
Linguagem Procedural em vrias linguagens (PL/pgSQL,
PL/Python, PL/Java, PL/Perl), Indexao por texto, Estrutura
para guardar dados Georeferenciados PostGIS, entre outros.
Opes de extenso atravs do usurio: Tipos de dados,
Funes, Operadores, Funes de Agregao (Agrupamento),
Mtodos de ndice por texto, Linguagens Procedurais (Stored
Procedures).
Capacidade de lidar com grandes volumes de dados.
2.6 Sistema Distribudo
Segundo Tanenbaum (1995), um sistema distribudo um
conjunto de computadores independentes que aparentam aos
usurios um sistema nico. Outra definio tambm
apresentada por Coulouris (2005), que defende a idia de um
sistema distribudo ser componentes de hardware e software
conectados em rede que comunicam suas aes somente
atravs de trocas de mensagens.
Um sistema distribudo pode possuir diversos elementos de
hardware e software de forma distribuda, mas a distribuio de
apenas um dos elementos j o caracteriza como sistema
distribudo.
Neste captulo sero descritas algumas caractersticas de
sistemas distribudos e aspectos importantes sobre segurana e
telecomunicaes.
2.6.1 Conceito de Sistemas Distribudos, Segurana e
Telecomunicaes.
Apesar de um sistema apresentar conceitos relacionados

9 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

exemplo.
Os terminais inteligentes possuem baixa capacidade de
armazenamento e processamento e executam tarefas limitadas
e pouco flexveis transferindo dados para um sistema principal.
Por no possurem autonomia operacional suficiente, estes no
podem ser caracterizados como sistemas distribudos.
Os sistemas realmente distribudos devem apresentar a
distribuio de controle, processamento e dados. Dessa forma
um sistema que utiliza das vias de tele processamento, no
necessariamente um sistema distribudo de fato.
A distribuio do processamento quer dizer que em cada nodo
da rede deve existir capacidade de processamento
independente. Em outras palavras, deve ser capaz de executar
um processo em cada nodo e de gerenciar os recursos locais de
forma autnoma. Este processamento pode ser constitudo
desde um mainframe at por uma estao de trabalho, e o
componente de mais fcil de ser identificado, sendo necessrio
a existncia de mltiplos processadores.
A distribuio de dados a possibilidade de localizar os
arquivos ou banco de dados prximos aos locais onde so mais
acessados. Para isto deve existir um gerenciador de arquivos ou
de banco de dados local e um mecanismo que permita o acesso
remoto a estes recursos. Um sistema distribudo permite que os
dados armazenados sejam compartilhados pelos diversos
nodos onde existe capacidade de processamento. Este
compartilhamento pode ser obtido pela transferncia de
arquivos ou pelo acesso remoto aos dados.
A distribuio do controle significa que os processos executados
nos diferentes nodos interagem de forma cooperativa para
satisfazerem um determinado objetivo. Esta cooperao
definida por um protocolo que especifica completamente os
servios a serem executados.
O controle o de mais difcil domnio e, ao mesmo tempo, o de
maior importncia para o funcionamento de um sistema
distribudo. Os diferentes computadores do sistema distribudo
podem ser heterogneos e possuir, cada um, o seu prprio
sistema operacional. Porm o conjunto deve operar como um
todo integrado e apresentando um comportamento homogneo.
A integrao destes sistemas locais heterogneos em um nico
sistema homogneo no uma tarefa trivial.
O controle distribudo de uma aplicao , por natureza,

10 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

controle esto imediatamente disponveis e o sistema


operacional local tem completa autonomia para gerenciar os
recursos. A sincronizao dos processos que operam
simultaneamente em um sistema centralizado realizada por
meio do compartilhamento de reas de memria.
A caracterstica essencial do controle de um sistema distribudo
a coordenao entre os diferentes processos por meio de
mensagens. Esta caracterstica implica na impossibilidade da
manuteno de informao completa e atualizada sobre cada
processo de um sistema distribudo. Os algoritmos utilizados
para a sincronizao das atividades distribudas possuem, por
este motivo, uma complexidade maior que a apresentada por
algoritmos centralizados (LAMPORT, 1978).
O processamento distribudo, assim como foi caracterizado,
mais do que uma tecnologia , tambm, uma metodologia para
a concepo e implantao de sistemas de informao. Sua
principal caracterstica possibilitar o particionamento das
atividades (e dos dados associados) de acordo com a
localizao geogrfica das aplicaes mantendo, ao mesmo
tempo, a integrao dos diversos componentes.
As caractersticas mais importantes dos sistemas distribudos
podem ser resumidas em: Diminuir o trfego de mensagens,
processar localmente; Manter a integrao do sistema e atender
s necessidades locais.
Dessa forma, possvel otimizar o desempenho e o custo global
e aumentar a confiabilidade das aplicaes. Um sistema
distribudo possui, entretanto, uma maior complexidade que um
sistema centralizado e apresenta caractersticas funcionais que
podem influir nos procedimentos operacionais e de deciso das
empresas.
Podem ser citadas trs alternativas bsicas para a escolha de
critrios de distribuio: a distribuio por reas geogrficas por
grupos funcionais e por funes de processamento de dados.
A distribuio geogrfica dos dados um dos critrios
fundamentais para o projeto de sistemas distribudos. Deve
haver uma grande parcela de atividade local (dados locais) e
pequena atividade entre regies. Em grande parte dos sistemas
reais os dados apresentam a propriedade dos acessos serem
geograficamente agrupados. A idia bsica para o
particionamento dos dados consiste em agrup-los de acordo
com as taxas de acesso para a identificao dos possveis
computadores regionais. Desta forma minimizado o trfego

11 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

DESENVOLVIMENTO

FRONT-END

BANCO DE DADOS

LOGIN

A caracterstica determinante desta forma de distribuio a


relao entre atividade local e a remota. Caso a taxa de
atividade remota seja alta a distribuio no a soluo mais
adequada. Este critrio leva minimizao do fluxo de dados
interno e empregado em mtodos de alocao tima de
arquivos em sistemas distribudos. Com exceo de sistemas
muito especializados (defesa, alta segurana de operao) a
maioria dos sistemas distribudos reflete a agregao geogrfica
natural das organizaes.
O desenvolvimento de computadores levou aos sistemas
departamentais. O conceito administrativo utilizado, neste caso,
consiste em alocar capacidade de processamento em cada
departamento, isto : distribuio por grupo de funes. Esta
uma alternativa utilizao compartilhada de um grande
sistema central. Apenas os dados corporativos (e os muito
volumosos) so mantidos no sistema central. A integrao do
sistema de informaes automatizado assegurada pela
interligao dos diversos computadores departamentais e do
computador central.
Outra forma de distribuio consiste na distribuio por funes.
Neste caso esto classificados os servidores especializados,
tais como: servidores de impresso, servidores de arquivos,
processadores vetoriais ou processadores de uso geral
especializados por software. Este tipo de distribuio atribui a
cada tarefa um nodo adequado a funo especfica. Tais
categorias de distribuio no so exclusivas sendo que um
sistema pode conter partes dessas por se encaixarem em
categorias distintas.

Jean Wagner Kleemann - Atuo no desenvolvi


mento Web desde 2008 com nas plataformas
java , .net e php. Participao no desenvolvi
mento de sistemas web nas reas de EAD, I
SSQN, Factoring, e-commerces, sites internacionais, entr
e outros.
Bacharel em Cincia da Computao, pela UNIDERP. P
s-Graduado em Engenharia de Componentes Utilizando J
ava, pela TNT Educacional.
Twitter: @jeankleemann

12 de 13

07/12/2015 16:42

Engenharia de Componentes - Parte 2

DESENVOLVIMENTO

http://www.linhadecodigo.com.br/artigo/3120/engenharia-de-compone...

FRONT-END

BANCO DE DADOS

LOGIN

Leia tambm
Conhecendo a interface Map do Java
Java

Trabalhando com a Interface Set no Java


Java

Classes Wrappers em Java


Java

ComboBoxModel em Java
Java

Reduzindo a Mutabilidade em Java


Java

13 de 13

07/12/2015 16:42

Das könnte Ihnen auch gefallen