Escola Politcnica
MBA em Engenharia de Computao e Sistemas
Implementao de uma arquitetura SOA para
interoperabilidade entre sistemas de Comando e Controle
Autor:
Orientador:
Examinador:
Examinador:
Examinador:
Examinador:
Examinador:
_________________________________________________
Jorge Eduardo Calvelli
_________________________________________________
Prof. Flvio Luis de Mello, DSc.
_________________________________________________
Prof. Edilberto Strauss, PhD
_________________________________________________
Prof. Claudio Luiz Latta de Souza, MSc
_________________________________________________
Prof. Manoel Villas Bas Jnior, MSc
_________________________________________________
Prof. Noberto Ribeiro Bellas, MSc
_________________________________________________
Prof. Paulo Fernando Peixoto da Costa Fazzioni, MSc
MBCA
Maro de 2016
i
CEP 21949-900
bibliotecas deste trabalho, sem modificao de seu texto, em qualquer meio que esteja
ou venha a ser fixado, para pesquisa acadmica, comentrios e citaes, desde que sem
finalidade comercial e que seja feita a referncia bibliogrfica completa.
ii
DEDICATRIA
A minha famlia, meu alicerce, que me incentiva e me ajuda a seguir em frente.
iii
AGRADECIMENTO
A minha famlia, pelo apoio e compreenso.
Aos meus amigos do trabalho: Toms Aquino Botelho, Patrick Lara, Manuel S
fundamentais, sem os quais minha tarefa teria sido muito mais difcil.
iv
Resumo
A dificuldade de integrao de dados entre sistemas informatizados de Comando
e Controle (C2) um problema atual, que afeta o setor militar de muitas naes,
Arquitetura Orientada a Servios (SOA) prov uma boa soluo para integrao de
sistemas heterogneos, possibilitando o desacoplamento entre esses sistemas e
facilitando a troca de mensagens entre eles. O presente trabalho apresenta o projeto
sistemas de C2, com os quais, juntamente com o Sistema Naval de Comando e Controle
(SISNC2), foi possvel executar os testes de exequibilidade, demonstrando a viabilidade
do projeto. Diante das tecnologias analisadas, percebe-se a necessidade de um
uma possvel contribuio para integrao de servios de segurana pblica, defesa civil
e sade pblica.
ABSTRACT
Data integration between Command and Control (C2) information systems is a
modern difficult problem that affects military sector in many nations, Brazil including.
To achieve Integration it should be taken into consideration not only computer systems,
but it should also consider the existence of processes associated to the data exchange
operation and how they are used or discarded. Adopting a Service Oriented Architecture
(SOA) provides a good solution for heterogeneous systems integration, enabling the
decoupling and facilitating message exchanging between them. The present work
presentes the pilot project for implementing a SOA architectureto provide a solution to
interoperability between systems of Command and Control of the Armed Forces in joint
operations based on the data model Joint Consultation, Command and Control
Information Exchange Data Model (JC3IEDM). During the year of 2015, were built the
prototype of the communication bus and C2 Systems simulators, with which, along with
the Naval Command and Control System (SISNC2), it was possible to perform the
feasibility tests, demonstrating the viability of the project. Among the analyzed
technologies, we found out the need for a deeper study of BML according to ADEM
limitations and glimpsed a possible contribution to public security services integration,
civil defense and public health.
vi
SIGLAS
ADEM - Alternate Development and Exchange Method
BBS - BML Base Services
BML - Battle Management Language
BPM - Business Process Management
BPMS - Business Process Management System
C-BML - Coalition Battle Management Language
C2 - Comando e Controle
CASNAV - Centro de Anlises de Sistemas Navais
CDAS - Common Data Access Services
COP - Controle da Operao Planejada
DCS - Domain Configured Service
DEM - Data Exchange Mechanism
EAI - Enterprise Application Integration
EB - Exrcito Brasileiro
ESB - Enterprise Service Bus
FA - Fora Armada
FAB - Fora Area Brasileira
Fcte - Fora Componente
FFAA - Foras Armadas
FS - Fora Sigular
HE - Hipoteses de Emprego
HTTP - Hyper Text Transfer Protocol
IBML - Integrated BML
InterC2 - Interoperabilidade de Comando e Controle
JC3IEDM - Joint Consultation, Command and Control Information Exchange Data
Model
JSON - Javascript Object Notation
MB - Marinha do Brasil
MD - Ministrio da Defesa do Brasil
MIP - Multilateral Interoperability Program
OpCj - Operao Conjunta
OpSing - Operao Singular
PPC - Processo de Planejamento Conjunto
Rest - Representational State Transfer
SIPLOM - Sistema de Planejamento Operacional Militar
SISMC2 - Sistema Militar de C2
SISNC2 - Sistema Naval de Comando e Controle
SISO - Simulation Interoperability Standards Organization
SOA - Arquitetura Orientada a Servios
SOAP - Simple Object Access Protocol
STIC2 - Sistemas de Tecnologia da Informao para C2
UDDI - Universal Description, Discovery and Integration
URI - Uniform Resource Identifier
WSDL - Web Services Description Language
XML - Extensible Markup Language
vii
Sumrio
INTRODUO .............................................................................................................. 1
1.1 TEMA .................................................................................................................... 1
1.2 JUSTIFICATIVA ...................................................................................................... 1
1.3 DELIMITAO ....................................................................................................... 3
1.4 OBJETIVO .............................................................................................................. 3
1.5 METODOLOGIA ..................................................................................................... 4
1.6 DESCRIO ........................................................................................................... 4
CONCLUSO............................................................................................................... 54
BIBLIOGRAFIA .......................................................................................................... 56
viii
Lista de Figuras
ix
Lista de Tabelas
Tabela 2.1- Entidades independentes do JC3IEDM [10] ............................................... 12
Tabela 2.2- Mtricas tcnicas para soluo de interoperabilidade [8] ........................... 25
Captulo 1
Introduo
1.1 Tema
Este trabalho trata sobre a interoperabilidade de Sistemas de Comando e
1.2 Justificativa
A evoluo tecnolgica e a complexidade geopoltica aumentaram as
de
tcnicas,
ferramentas
prticas
que
permitam
aperfeioar
uma nica FA (Fora Armada) em campanhas. Assim sendo, a combinao dos meios e
o que requer a capacidade e esforo coletivos das vrias organizaes, a fim de se obter
comando no mais alto escalo, uma mentalidade militar unificadas nos diversos nveis
de comando e a capacidade de interoperabilidade entre as Foras empregadas. Assim, a
necessidade de troca e compartilhamento de informao entre os diversos sistemas de
dos diversos sistemas de C2 das FFAA envolvidas na ao, que devem estar
consolidadas em uma viso nica.
Orientada a Servios (SOA) prov uma boa soluo para integrao de sistemas
heterogneos, j que prev um baixo acoplamento entre sistemas, que necessitaro de
poucas modificaes para interagirem uns com os outros.
das FFAA, estas possuem caractersticas especficas ligadas a sua esfera de atuao que
as diferenciam entre si. Essas caractersticas de negcio levam a que sistemas
1.3 Delimitao
Neste trabalho abordada a questo da necessidade do compartilhamento de
controle das Foras Armadas, no entanto, olhando a questo segurana de uma forma
agncias governamentais, tais como Polcia Federal, Polcia Militar e Defesa Civil,
tambm possam ser integrados no futuro, o que viria a proporcionar uma viso de
segurana pblica nacional muito mais precisa. Da mesma forma, a experincia obtida
tambm poder ser aproveitada para integrao de sistemas ligados a Defesa Civil e
Segurana Pblica de forma a prover solues mais eficientes na resposta a crises.
1.4 Objetivo
O objetivo do presente trabalho apresentar uma proposta de soluo que
1.5 Metodologia
A metodologia para elaborao deste trabalho deu-se atravs de levantamentos
1.6 Descrio
O trabalho ser organizado da maneira a seguir.
Servios (SOA).
realizado.
Captulo 2
Comando e Controle e a
Interoperabilidade
C2, que descrito como o conjunto de recursos necessrios para o comandate planejar,
dirigir e controlar as aes. Esse conceito composto por trs componentes: o Sistema
Militar de C2 - SISMC2 (instalaes, equipamentos, comunicaes, doutrinas,
No que se refere aos STIC2, estes devem permitir que um grande volume de
O ciclo OODA [2], tambm conhecido como ciclo de Boyd [42], um dos
decisrio parte de uma de suas quatro fases: Observar, Orientar-se, Decidir e Agir
(OODA).
2.2 Interoperabilidade
A Doutrina Para o Sistema Militar de Comando e Controle [2] d
Para que a interoperabilidade possa ser vista de forma mais abrangente, deve
compreender, alm do nvel tcnico, o nvel organizacional, como pode ser observado
na figura a seguir.
Tatical Data Links (TDLs) tm sido usados por muitos anos para o intercmbio
do mesmo grupo na rede. Assim, usando TDLs no h registro histrico sobre o que
aconteceu, o que faz sentido quando a informao mais recente a nica informao
relevante[15].
dados Joint Consultation, Command and Control Information Exchange Data Model
2.3.1 - JC3IEDM
O modelo JC3IEDM representa a viso de alto nvel da informao em termos
11
Entidade
ACTION
ADDRESS
AFFILIATION
CANDIDATETARGET-LIST
CAPABILITY
COMPONENTHEADER-CONTENT
COMPONENT-TEXTCONTENT
CONTEXT
RELATIVECOORDINATESYSTEM
GROUPCHARACTERISTIC
LOCATION
OBJECT-ITEM
Definio
Uma atividade, ou a ocorrncia de uma atividade,
que possa utilizar recursos e pode ser focada contra
um objetivo. Exemplos so ordem de operao,
plano de operao, ordem de movimentao, o
plano de deslocamento, ordem fogo, plano de fogo,
misso fogo, misso de apoio areo aproximado,
pedido de logstica, evento (por exemplo, entrada
aeronaves desconhecido), ou incidente (por
exemplo, ataque inimigo).
Regra
12
Geoposicionamento de objetos e
criao de formas.
Identifica as coisas
individualmente (Quem e O
Que).
OBJECT-TYPE
PLAN-ORDER
REFERENCE
REPORTING-DATA
RULE-OFENGAGEMENT
SECURITYCLASSIFICATION
VERTICALDISTANCE
13
concepo de bancos de dados relacionais com uma sintaxe concebida para suportar as
construes semnticas necessrias no desenvolvimento de um esquema conceitual, que
Para o contexto das operaes realizadas em conjunto pelas naes que adotam o
modelo JC3IEDM, o MIP definiu o Data Exchange Mechanism (DEM), que especifica
como atravs de conexo ponto-a-ponto entre os sistemas de informao de C2 dessas
14
2.3.2 - ADEM
A especificao Alternate Development and Exchange Method (ADEM)
Como parceiros de misso podem ser includos, mas no esto limitados a, os parceiros militares
sujeitos a diferentes nveis de segurana, o pessoal de emergncia civil (polcia, bombeiros, etc.) e as
agncias de segurana, ONGs, outros rgos governamentais e etc.
1
15
finito, podendo o parceiro COI estender essas estruturas de informao com contedo
especfico.
sistemas baseados nas especificaes MIP e outros sistemas parceiros no MIP. Nessa
16
2.3.3 - BML
A Battle Management Language (BML), e suas vrias extenses, destinam-se a
17
linguagem clara, sem ambigidades, com base em manuais e que capturava a doutrina
militar [19].
do trabalho iniciado com a BML, com a misso de adicionar a capacidade para atender
utilizao de tecnologias Web para a interoperabilidade entre sistemas, sendo seus dois
objetivos principais: (1) usar a tecnologia Service Oriented Architecture (SOA) para a
troca de informaes entre as interfaces dos sistemas e (2) usar o Command and Control
Information Exchange Data Model (C2IEDM, uma verso anterior do JC3IEDM ) do
MIP como uma base para representar as informaes a serem trocadas entre os sistemas
[19].
18
5Ws (quem - who, o qu - what, onde - where, quando - when, porqu - why) e outras
construes de interesse [22].
tentativa de padronizar BML. A IBML09 tambm a base para uma verso estendida
A Simulation Interoperability
20
simulao.
estado-final desejado.
(4.2.3). Esta verso foi conhecida como Scripted BML (SBML). Nesta verso,
processamento e mapeamento especficos para o modelo JC3IEDM eram providos por
uma linguagem de script conhecida como CSL [19].
2.3.4 WISE-SBML
O WISE-SBML, terceira gerao de servidor BML, baseado na soluo SAAB
22
IBML 2009;
C-BML Light, e
23
unidade
de
comando,
simplicidade,
segurana,
flexibilidade,
confiabilidade,
princpios
ajudam
definir
os
requisitos
funcionais
necessrios
para
Tipo de Requisito
Volume
Tempo de Resposta
Tamanho
Timeliness
Padro de Formato de Dados
Handshaking protocol
Infraestrutura de Comunicao
Descrio
25
Exemplos
Tamanho de Arquivo de at
10Mbytes.
Tempo real, dentro de 2
segundos, ou em at 2 horas.
Suporta formato ebXML,
formato EDI ou lida com
formato proprietrio.
De acordo com RosettaNET
PIP 2345, ou de acordo com
uma sequencia proprietria de
troca de mensagens.
Mensagens SOAP em HTTP
ou um formato proprietrio de
mensagem sobre IBM MQ
messsaging.
Resilincia e Recuperao
Frequncia
Segurana
Resilincia da estrutura de
Garantia da entrega de
falhas.
integrao em caso de
mensagens, redundncia e
cinco por cento.
Frequncia de interaes
a cada hora.
autenticao, autorizao e
no-repdio.
26
Captulo 3
Arquitetura Orientada a Servios (SOA)
Neste captulo ser apresentado o conhecimento terico necessrio a
conceitos de SOA pode ajudar a atingir o objetivo pretendido para a integrao dos
sistemas de comando e controle.
3.1 Conceitos
Como uma definio formal, pode-se citar que SOA uma forma de
que so reunidas de acordo com um contexto funcional estabelecido pelo servio com o
qual elas se relacionam. Funcionando como um container de capacidades, ser
composto pela lgica de execuo das capacidades e por contratos de servios, que
definem quais capacidades estaro disponveis para utilizao.
implementado, mas este conceito pode ser particularmente til durante a fase de
modelagem de servios quando o desenho fsico de um servio ainda no foi
determinado [5].
28
3.2 Princpios
a) Contrato de servio padronizado (Standardized Service Contract)
Um servio ser mais reutilizvel na medida em que tiver menor acoplamento, maior
abstrao, autonomia e suporte a composio [27].
Este princpio suporta o grau em que outros princpios de design podem ser
Quanto maior for a autonomia de um servio quanto a seu ambiente, mais fcil ser sua
manuteno e evoluo [27].
projetados para manterem informaes de estado apenas quando estas forem necessrias
[5].
30
de que esta fundamental a cada um dos princpios que foram descritos. Portanto, em
relao a computao orientada a servios, afirmar que os servios devem ser
interoperveis quase to bsico como afirmar que os servios devem existir. Cada um
dos oito princpios suporta ou contribui para a interoperabilidade de alguma maneira
[5].
importante ter a viso da SOA como um modelo arquitetural que neutro para
Segundo Thomas Erl [25], os servios podem ser construdos usando os padres
sistema distribudo. Ele fornece uma interface tcnica comparvel a uma interface de
programao de aplicativo tradicional (API), atravs do qual ele expe as capacidades
pblicas como mtodos, permitindo assim que seja explicitamente invocado por outros
programas [25].
ou no ter sido concebido como um servio, ao passo que o smbolo direita est
explicitamente marcado para indicar que foi concebido como um servio [25].
b) Servios como Web Services
tcnico, fisicamente dissociado, que consiste em uma definio WSDL e uma ou mais
Web Service expe recursos pblicos como operaes, estabelecendo uma interface
tcnica, mas sem qualquer ligao com um framework de comunicaes proprietrio
[25].
A figura 3.4 ilustra uma tpica arquitetura Web Service que contm um contrato
Description, Discovery and Integration (UDDI) tem como objetivo descrever, descobrir
e integrar Web Services.
c) Servios REST
escalabilidade e facilidade de uso. Servios REST podem ser moldados pela aplicao
dos princpios de orientao a servios [25].
Por se tratar de uma abstrao dos princpios que compe a World Wide Web
mtodos HTTP 1.0: GET, POST, DELETE e PUT. Um URI uma forma uniforme de
identificao de recursos em rede, sendo o seu tipo mais conhecido o Uniform Resource
Location (URL) [29].
arquitetural, com isso o retorno das chamadas pode ser formatado conforme os
Alm dos padres tecnolgicos citados, vale destacar mais duas tecnologias
33
Application Integration (EAI). Existem, tambm, solues open source tais como Mule,
ServiceMix (adotado na soluo apresentada neste trabalho), OpenESB e JBossESB .
e) Business Process Management System (BPMS)
3.4 Governana
A ltima seo deste captulo trata da governana, que uma das chaves de
Na abordagem proposta por Schepers e Kratz [30], para que uma boa
governana SOA possa ser alcanada, seis processos devem ser executados: Estabelecer
a viso SOA, Criar a organizao SOA, Gerenciamento do portflio de servios,
Gerenciamento do ciclo de vida de servios, Execuo dos princpios e Gerenciamento
do Nvel de Servios.
definidos. Muitas vezes isso leva a iniciao de um tipo de comit que deve ser
estar no lugar certo. Isso pode requerer, no somente um treinamento extra, como
quais servios devero ser desenvolvidos. O arquiteto deve mostrar argumentos tcnicos
35
algo a ser conduzido pelo comit de governana SOA, que gerencia as mudanas no
SOA os arquitetos devem ajudar a garantir que todos os servios estejam sendo
37
Captulo 4
Proposta de Soluo
Em 2014 o Centro de Anlises de Sistemas Navais (CASNAV) deu incio a
Fora Area Brasileira (FAB), mesmo que sejam construdos com tecnologia distinta,
ratificando a correta escolha de SOA para o Barramento. A Figura 4.1 apresenta o
diagrama esquemtico da interoperabilidade visualizada entre os diversos sistemas de
C2.
38
de posio dos meios, fatores fixos e feies de controle, empregados em uma operao
39
ESB) com base em SOA. A equipe do projeto INTERC2 realizou uma anlise
comparativa entre seis produtos ESB de software livre e decidiu empregar o Apache
ServiceMix [33]. O ServiceMix formado, principalmente, por quatro projetos Apache:
empregam a API Java JAX-WS para servios. H servios de solicitao e resposta que
podem ser tratados em portas distintas. Os webservices empregam nas mensagens
41
projetos corporativos.
emprega filas de mensagens persistentes do tipo Java Message Service (JMS) [37]. O
JMS uma interface de programao de aplicaes (API) na plataforma Java Enterprise
Edition (Java EE), para middleware orientado mensagens. Por meio da API JMS, duas
ou mais aplicaes podem se comunicar por mensagens.
ponto das Mquinas Virtuais (VM) realizada pelo firewall j presente no kernel do
Sistema Operacional Linux. A possibilidade de conexo ocorre apenas nos endereos de
virtualizao, onde mltiplas VM podem ser especializadas por funo. Esse arranjo
Barramento emprega uma VM para dados, uma para integrao e outra para
monitoramento.
de
informaes
operacional/estratgico.
para
tomada
de
deciso,
nos
nveis
Como exemplo, uma mensagem que tramita informao sobre uma Unidade
UNIT-TYPE
LOCATION
ORGANISATION-STATUS
OBJECT-ITEM-HOSTILITY
OBJECT-ITEM
OBJECT-TYPE
AFFILIATION-GEOPOLITICAL
REPORTING-DATA
REPORTING-DATA-ABSOLUTE-TIMING
SECURITY-CLASSIFICATION
1.0.2. Esses esquemas representam o modelo segundo o qual as informaes devero ser
codificadas como mensagens XML. Essas mensagens sero dirigidas para os Servios
Web. Os esquemas XML so disponibilizados como arquivos individuais.
43
identificao e uso
posterior do objeto;
Interesse Operao; e
Interesse.
= MB), indicando que foi gerada pelo SISNC2 e, logo na linha seguinte, o servidor
hospedeiro da fila JMS (localhost). Ainda no cabealho, na quarta linha, pode-se ler o
tipo do meio como navio de superfcie (SurfaceVessel).
indicando o data-hora. A seguir, vrias tag iniciando com <jc3:, mostrando o nome do
meio (Fragata Constituio), a hostilidade (amigo FR), e o estado operacional do meio
44
Ao incio da OpCj esses meios passam a ser acompanhados e podem ser realizadas
Figura 4.5, so eles: 1.1 Cadastrar Operao Conjunta, 1.2 Cadastrar Objeto de Interesse
e 1.3 Adjudicar Objeto a Operao.
tem
como
a0dcc3d06f01, e
contedo
urn:uuid:02b04074-a60b-47c2-91ac-
indica que os dados do objeto de interesse, dependendo de seu tipo, sero registrados
47
mensagem poder ser utilizado para registrar unidades de combate, edificaes, carros
de combate, aeronaves ou outro objeto que possa vir a ser acompanhado em uma
operao.
48
identificao
do
Objeto
de
Interesse,
urn:uuid:02b04074-a60b-47c2-91ac-
50
51
Acompanhamento.
52
53
Captulo 5
Concluso
5.1 Concluso
A dificuldade de integrao de dados entre sistemas informatizados de Comando
e Controle (C2) um problema atual, que afeta o setor militar de muitas naes,
do projeto esta sendo contemplada apenas a troca das informaes atuais de localizao,
Uma soluo que utilize a BML possibilita a tramitao de uma gama muito
no estudo da BML para uma possvel adoo pela soluo, de forma integral ou
55
Bibliografia
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
56
58