Upload
macleiton-soares
View
32
Download
8
Embed Size (px)
DESCRIPTION
Desenvolvimento de um sistema web para apoio ao analista de processo de segurança contra incêndio e pânico do Corpo de Bombeiros MT
Citation preview
SERVIÇO PÚBLICO FEDERAL
MEC – SETECINSTITUTO FEDERAL DE MATO GROSSOUNIVERSIDADE ABERTA DO BRASIL
MACLEITON OLIVEIRA SOARES
DESENVOLVIMENTO DE UM SISTEMA WEB PARA APOIOAO ANALISTA DE PROCESSO DE SEGURANÇA CONTRAINCÊNDIO E PÂNICO DO CORPO DE BOMBEIROS MILITAR
DO ESTADO DE MATO GROSSO
Nova Xavantina - MTFevereiro de 2016
INSTITUTO FEDERAL DE MATO GROSSO – IFMTUNIVERSIDADE ABERTA DO BRASIL
DESENVOLVIMENTO DE SISTEMAS PARA INTERNET
MACLEITON OLIVEIRA SOARES
DESENVOLVIMENTO DE UM SISTEMA WEB PARA APOIOAO ANALISTA DE PROCESSO DE SEGURANÇA CONTRAINCÊNDIO E PÂNICO DO CORPO DE BOMBEIROS MILITAR
DO ESTADO DE MATO GROSSO
Nova Xavantina - MTFevereiro de 2016
Ficha Catalográfica
Soares, Macleiton OliveiraDesenvolvimento de um sistema WEB para apoio ao analista deprocesso de segurança contra incêndio e pânico do Corpo de BombeirosMilitar do Estado de Mato GrossoCuiabá -MT, 2016Total de folhas do TCC: 59Guarienti, Gracyeli Santos SouzaInstituto Federal de Educação, Ciência e Tecnologia de Mato GrossoUniversidade Aberta do Brasil - UABTrabalho de Conclusão Curso de Tecnologia em Desenvolvimento deSistemas para Internet
MACLEITON OLIVEIRA SOARES
DESENVOLVIMENTO DE UM SISTEMA WEB PARA APOIOAO ANALISTA DE PROCESSO DE SEGURANÇA CONTRAINCÊNDIO E PÂNICO DO CORPO DE BOMBEIROS MILITAR
DO ESTADO DE MATO GROSSO
Trabalho de Conclusão de Curso
apresentado à Universidade Aberta do
Brasil no Curso de Tecnologia em
Desenvolvimento de Sistemas para
Internet, do Instituto Federal de Educação,
Ciência e Tecnologia de Mato Grosso,
como exigência para a obtenção do título
de Tecnólogo.
Orientador Profa. MSc. Gracyeli Santos Souza Guarienti
Nova Xavantina - MTFevereiro de 2016
MACLEITON OLIVEIRA SOARES
DESENVOLVIMENTO DE UM SISTEMA WEB PARA APOIOAO ANALISTA DE PROCESSO DE SEGURANÇA CONTRAINCÊNDIO E PÂNICO DO CORPO DE BOMBEIROS MILITAR
DO ESTADO DE MATO GROSSO
Trabalho de Conclusão de Curso em Tecnologia em Desenvolvimento de Sistemas
para Internet, submetido à Banca Examinadora composta pelos Professores da
Universidade Aberta do Brasil no Instituto Federal de Educação, Ciência e
Tecnologia de Mato Grosso, como parte dos requisitos necessários à obtenção do
título de Tecnólogo.
Aprovado em: ____________________
_________________________________________________
Profa. MSc. Gracyeli Santos Souza Guarienti - Orientador
_________________________________________________
Prof. MSc. Rothschild Alencastro Antunes - Avaliador Técnico
__________________________________________________
Profa. Dra. Ana Claudia de Azevedo - Avaliador Metodológico
__________________________________________________
Prof. MSc. César Eduardo Guarienti - Examinador Externo
Nova Xavantina - MTFevereiro de 2016
DEDICATÓRIA
Ao meu pai Alcidino Dionizio
Soares e para minha mãe Maria Oliveira
Soares.
AGRADECIMENTOS
Ao meu pai, Alcidino Dionizio Soares, pela cobrança desta graduação e pela
crença firme de que eu conseguiria.
À minha mãe, Maria Oliveira Soares, doutora em amor e carinho, sem por
isso se tornar omissa ou desleal em minha educação.
Laura Cavalcante, minha queridíssima esposa, sou sempre grato a ti minha
parceira em todas as conquistas.
Agradeço imensamente às minhas filhas Rhilary Maria, Lana Andressa e
Maria Vitória. Vocês me enriquecem a cada dia e em especial me fizeram
amadurecer ao conciliar família e estudos. Eu as amo muito, obrigado.
Aos meus irmãos, meus inspiradores e incentivadores.
Elizangela Soares, mana, você não foi a luz no fim do túnel, mas o holofote
que sempre me iluminou com seu exemplo e dedicação. Obrigado por isso.
Daniel Franczak, muito obrigado pelo socorro imediato e por ter me
orientado em meu pré-projeto do TCC.
Aos tutores presenciais do polo UAB em Nova Xavantina, Cássia Rocha
Reis e Laurence Antônio de Oliveira Junior.
Aos meus colegas de curso, em especial ao Jean Veiga e ao Elias Tavares.
Obrigado pelo companheirismo.
“Comece fazendo o que é necessário, depois o que é
possível, e de repente você estará fazendo o impossível. ”
São Francisco de Assis
“Sempre faço o que não consigo fazer, para aprender
o que não sei! ”
Pablo Picasso
RESUMO
Com a popularização da internet e a mobilidade da computação a comunicação foifavorecida permitindo a interligação entre diversos pontos do planeta de formasíncrona. Diversos serviços antes realizados somente fisicamente podem serrealizados por meio da internet. Além da interação social, jogos e negócios, ainternet pode ser usada para rodar sistemas de computador que ofertam serviçosaos contribuintes ou mesmo para que tarefas internas de um órgão governamentalseja melhorada em eficiência e eficácia. Para isso basta a ligação à rede, internet oulocal, e um navegador de internet. Este trabalho trata do desenvolvimento de umsistema web para analistas de processo de segurança contra incêndio e pânico doCorpo de Bombeiros Militar do Estado de Mato Grosso. O sistema utiliza atecnologia JavaServer Pages, JSP, uma linguagem de script gratuita baseada emJAVA, cujo objetivo primário é a geração de conteúdo dinâmico para páginas daInternet. Com o sistema é possível que seja padronizada a análise de processos desegurança pelo Corpo de Bombeiros de Mato Grosso, permitindo mais segurança aoanalista e facilidade de acesso às normas que regem esse tipo de trabalho. Oambiente de trabalho ficará mais organizado, vez que as diversas leis e normasimpressas necessárias ao serviço de análise estarão disponíveis no sistema e adistribuição de alterações ou substituição de normas estará centralizada no servidorno corpo de bombeiros.
Palavras-chaves: Sistemas. Web. JSP. Segurança contra incêndio. Bombeiros.
ABSTRACT
With the popularization of the internet and computer communication mobility wasfavoured allowing the interconnection between various points on the planetsynchronously. Various services before performed only physically can be performedthrough the internet. In addition to social interaction, games and business, theinternet can be used to run computer systems that offer services to taxpayers oreven for internal tasks of a government agency be improved in efficiency andeffectiveness. To do this simply connect to the internet or local network and aninternet browser. This work deals with the development of a web system for processanalysts of fire safety and panic of the Military fire brigade of the State of MatoGrosso. The system uses JavaServer Pages technology, JSP, a free scriptinglanguage based on JAVA, whose primary objective is the generation of dynamiccontent to Web pages. With the system it is possible to be standardized processanalysis of safety by firemen from Mato Grosso, allowing for more safety to theanalyst and ease of access to the rules governing this type of work. The desktop willbe more organized, time that the various laws and regulations printed necessary forthe analysis service will be available on the system and the distribution of changes orreplacement of standards will be centered on the server in the fire department.
Key words: Systems. Web. JSP. Fire safety. Fire department.
LISTA DE ABREVIATURAS
API – Application Program Interface
ASP – Active Server Pages
CBM – Corpo de Bombeiros Militar
HTML – HyperText Markup Language
HTTP – HyperText Transfer Protocol
IDE – Integrate Development Environment
JEE – Java Enterprise Edition
JDK – Java Development Kit
JDBC – Java Data Base Connectivity
JSP – JavaServer Pages
JVM – Java Virtual Machine
PHP – HyperText Preprocessor
PSCIP – Processo de Segurança Contra Incêndio e Pânico
SGBD – Sistema de Gerenciamento de Banco de Dados
SQL – Structure Query Language
URL – Universal Resource Locater
WWW –Word Wide Web
SUMÁRIO
1 INTRODUÇÃO......................................................................................................12
1.1 OBJETIVOS...................................................................................................13
1.1.1 Objetivo Geral........................................................................................ 13
1.1.2 Objetivos Específicos............................................................................13
1.2 JUSTIFICATIVA............................................................................................ 14
2 REFERENCIAL TEÓRICO................................................................................. 15
2.1 LEGISLAÇÃO CONTRA INCÊNDIO E PÂNICO.....................................15
2.2 INTERNET E A PRESTAÇÃO DE SERVIÇO ONLINE.......................... 17
2.3 A TECNOLOGIA JAVA................................................................................ 18
2.4 JAVA SERVLET............................................................................................22
2.5 JSP..................................................................................................................24
3 MÉTODO DE PESQUISA...................................................................................27
3.1 TIPO DA PESQUISA REALIZADA............................................................ 28
3.2 REQUISITOS DO SISTEMA.......................................................................29
3.2.1 Identificação dos atores........................................................................30
3.2.2 Requisitos Funcionais...........................................................................35
3.2.3 Requisitos Não Funcionais.................................................................. 35
3.3 PROJETO DO SISTEMA DE INFORMAÇÃO WEB................................36
3.3.1 Arquitetura do Software Web...............................................................36
3.3.2 Estrutura de Classes das Análises de PSCIP.................................. 37
3.3.3 Diagramas de Sequência do Sistema PSCIPWeb...........................39
3.3.4 Camada de Apresentação....................................................................40
3.3.5 Banco de Dados.................................................................................... 41
3.4 IMPLEMENTAÇÃO DO SISTEMA DE INFORMAÇÃO WEB................41
3.4.1 Testes do sistema Web de apoio ao analista de PSCIP.................45
4 CONCLUSÃO....................................................................................................... 51
REFERÊNCIAS........................................................................................................53
ANEXO A.................................................................................................................. 56
12
1 INTRODUÇÃO
A internet é marco histórico para a humanidade, uma revolução na forma de
interação entre as pessoas. Desde meados de 1995, quando foi aberta aos usuários
domésticos, a internet vem se firmando como um dos maiores meios de
comunicação humana, permitindo que pessoas de distintos pontos no globo
terrestres se comuniquem por multimídias (CASTELLS, 2003). É comum nos dias
atuais comprar e vender, jogar, compartilhar situações pessoais, imagens, áudio e
vídeo pela rede mundial de computadores.
Com a mobilidade da computação e o crescimento vertiginoso da internet,
sistemas desktops têm migrado para o mundo online. Esse efeito pode tornar um
sistema mais acessível, com melhor possibilidade de manutenção e disponibilização
de versões melhoradas.
A exemplo da iniciativa privada, órgãos governamentais de diferentes
esferas igualmente disponibilizam uma vasta quantidade de serviços online aos
cidadãos, almejando agilidade na prestação destes. Considerando o atual cenário,
não obstante, há ainda órgãos do governo que utilizam ferramentas tecnológicas
abaixo do esperado, com casos de inexistência de um sistema destinado ao fomento
da realização de atividades que compõem seu eixo de atribuições.
O Corpo de Bombeiros Militar do Estado de Mato Grosso, autarquia estadual,
realiza estudos e análise de Processos de Segurança Contra Incêndio e Pânico
(PSCIP), visando o bem-estar público através da prevenção de incêndio, acidentes e
sinistros.
Um PSCIP, segue uma composição normativa quanto a sua apresentação
em uma unidade bombeiro militar. O Anexo A nos dá uma perspectiva ampla desta
composição.
Neste cenário surge a figura do analista de PSCIP, profissional que verifica a
sua composição e conformidade com a legislação em vigor. Atender de forma
eficiente a população passa, dentre outros, pela eficiente gestão desses processos,
de modo a oferecer uma análise segura e em um pequeno tempo resposta.
13
O desenvolvimento de um sistema web de apoio ao analista de processo de
segurança contra incêndio e pânico da companhia de bombeiros militar de Nova
Xavantina, Mato Grosso, objeto desse trabalho, visa dar mais segurança e facilidade
ao trabalho do analista, de modo que toda a tramitação seja agilizada e a análise
alcance maior nível de qualidade, atendendo melhor o contribuinte.
O sistema dá acesso à todas as medidas de segurança contra incêndio e
pânico exigíveis em consonância com a Lei estadual 8.399/05 e normas correlatas
adotadas pelo Corpo de Bombeiros Militar do Estado de Mato Grosso. A arquitetura
do sistema baseia-se no padrão de projetos MVC (Model-View-Controller),
objetivando clareza e facilidade na implementação e manutenção. O banco de dados
armazenará informações relacionadas à ocupação, grupo de risco e divisão,
descrição da ocupação, código da Classificação Nacional de Atividades Econômicas
(CNAE), carga de incêndio e risco predominante e dados específicos de cada norma
técnica que seja transferida ao sistema como um subprograma.
Baseado em tais informações, o sistema foi desenvolvido com a tecnologia
JavaServer Pages (JSP). O JSP faz parte da família Java e é uma linguagem de
script desenvolvida pela Sun Microsystems que permite o desenvolvimento de sites
dinâmicos.
1.1 OBJETIVOS
1.1.1 Objetivo Geral
O objetivo deste trabalho é fornecer um serviço público ao
cidadão/contribuinte e ao analista de processo de segurança contra incêndio e
pânico, no âmbito do Corpo de Bombeiros Militar do estado de Mato Grosso.
1.1.2 Objetivos Específicos
Para atingir o objetivo geral do trabalho faz-se necessário desenvolver as
seguintes etapas:
14
● Definir a linguagem programação base para o sistema proposto, bem
como os benefícios de sua utilização no desenvolvimento de sistemas para internet;
● Desenvolver um Sistema Web utilizando a arquitetura MVC;
● Reduzir o tempo de espera dos processos de segurança contra
incêndio e pânico com a utilização do sistema;
● Permitir que militares recém-formados ou instruídos para análise de
processo de segurança contra incêndio e pânico tenham mais facilidade e
segurança no desempenho de suas atividades de analistas de PSCIP;
1.2 JUSTIFICATIVA
Um sistema on-line que gerencie e manipule informações consistentes para
que imprima maior agilidade na análise de PSCIP é necessário para que se possa
obter melhores resultados na oferta do serviço ao contribuinte. As diversas consultas
que se faz ao banco de leis e normas impressas quando da análise de um PSCIP
podem ser direcionadas ao sistema, diminuindo o trabalho de manuseio de papelada
e deixando o ambiente laboral do analista mais agradável e organizado. Há que se
considerar também que a automatização de rotinas e a condução às normas
correlatas a ocupação ou local de risco em análise dão mais segurança e agilidade à
sequência da análise de processos de segurança.
15
2 REFERENCIAL TEÓRICO
2.1 LEGISLAÇÃO CONTRA INCÊNDIO E PÂNICO
O corpo de bombeiros é um tipo de instituição cuja criação originou-se antes
mesmo da era cristã. A princípio os bombeiros como corporação foram criados para
o combate direto de incêndios, servindo ainda em muitos casos, e por muito tempo,
como componentes das polícias locais onde estavam instalados. Seus primeiros
equipamentos eram basicamente baldes de couro e um dos principais requisitos
para a incorporação eram a habilidade e força física (RAINBIRD, 1976).
Principalmente nos primórdios de sua criação, quando tecnologias similares às de
hoje não existiam, o trabalho carecia de estruturação técnica e treinamento
específico, valendo-se do reforço da sociedade civil e de escravos (Regulamento do
Corpo Provisório de Bombeiros de 1860). Mesmo com os avanços ao longo dos
séculos, na idade média os bombeiros quase foram extintos em muitas partes do
mundo por motivos culturais e religiosos (MENEZES, 2007).
Grandes incêndios e tragédias levaram a população e autoridades a cobrar
da equipe de salvamento uma atuação mais técnica e que resultasse na
minimização dos danos físicos e materiais decorrentes daqueles sinistros. A
evolução dessa participação social e política resultou na criação de normas e leis
que regulam a adoção de medidas preventivas contra incêndio e pânico por
bombeiros de todos os continentes.
É de competência das Corporações as atividades de prevenção e decombate a incêndios, busca e salvamento, de atendimento pré-hospitalar(resgate), bem como de analisar previamente os projetos de segurançacontra incêndios em edificações e contra sinistros em áreas de risco, deacompanhar e de fiscalizar sua execução e de impor sançõesadministrativas estabelecidas em lei. A competência é intimamente ligada àmanutenção de uma vida digna e estável em sociedade, ou seja, para osindivíduos e para toda a coletividade. (MARTINS, 2010, p. 54).
Neste cenário surge a figura do analista de processo de segurança contra
incêndio e pânico (PSCIP). Esse profissional verifica a composição do PSCIP e sua
conformidade com a legislação em vigor. Segundo RODRIGUES (2015) o PSCIP é o
conjunto de documentos que tipificam as características de um sistema de
16
segurança contra incêndio e pânico constituído por memoriais, planilhas, projetos,
armazenagem de produtos perigosos, materiais inflamáveis e outras informações
complementares que facilitem a análise global da segurança das edificações,
instalações e locais de risco.
Atender de forma eficiente a população passa, dentre outros, pela eficiente
gestão desses processos, de modo a oferecer uma análise segura e em um
pequeno tempo resposta. A Constituição Federal de 1988, em seu artigo 37 elenca
como princípio da administração pública brasileira, entre outros, a eficiência, que por
definição é a capacidade de obter uma maior quantidade de saídas/produtos
(outputs), utilizando a menor quantidade de recursos/entradas (inputs). Trata-se da
boa gestão dos recursos públicos, sejam eles materiais, humanos, tecnológicos e
etc. Assim, uma tarefa será eficiente quando for realizada da melhor maneira
possível (Ministério Público Federal, 2013).
De acordo com FERNANDES (2014) a gestão por processos ou Business
Process Management (BPM) é uma abordagem sistemática de gestão que trata de
processos de negócios como ativos, que potencializam diretamente o desempenho
da organização, primando pela excelência organizacional e agilidade nos negócios.
Isso envolve a determinação de recursos necessários, monitoramento de
desempenho, manutenção e gestão do ciclo de vida do processo. Fatores críticos de
sucesso na gestão por processos estão relacionados a como mudar as atitudes das
pessoas e ou perspectivas de processos para avaliar o desempenho dos processos
das organizações.
O desenvolvimento de um sistema web de apoio ao analista de processo de
segurança contra incêndio e pânico da companhia de bombeiros militar de Nova
Xavantina, Mato Grosso, utilizando JSP objetiva, sobretudo, apoiar o trabalho do
analista, de modo que toda a tramitação seja agilizada e a análise alcance maior
nível de qualidade, atendendo melhor o contribuinte.
Segundo BARROS (1991, p. 51 apud ARAÚJO 2004, p. 19):
No processo de entendimento do conceito de qualidade é importanteperceber que sempre estarão envolvidos dois personagens principais: oprodutor da qualidade, ou aquele responsável por gerar produtos ou
17
serviços; e o consumidor ou cliente da qualidade, aquele que se utilizadesses produtos, ou é usuário dos serviços ofertados.
2.2 INTERNET E A PRESTAÇÃO DE SERVIÇO ONLINE
As aplicações projetadas para serem utilizadas via internet são chamadas de
aplicações web. Elas são executadas em um ambiente distribuído, onde cada
elemento da aplicação pode estar localizado em diferentes computadores
conectados via internet (MAGRI, 2014, p. 11).
A utilização natural da internet levou ao surgimento dos serviços web e a
transição de páginas meramente estáticas para conteúdos dinâmicos (JÚNIOR,
2010). Diversas tecnologias podem ser utilizadas para o desenvolvimento de
sistemas web, tais como PHP, ASP, CGI, Ruby on Rails, Phyton e JavaServer
Pages (JSP). Este último oferece vantagens em relação ao uso de outras
tecnologias, destacando características como portabilidade, facilidade, flexibilidade e
licença gratuita, herdadas da própria linguagem Java, da qual emana.
A internet possibilitou a web e estas a interconexão de pessoas ao redor do
planeta. Nos últimos anos percebe-se o crescimento acentuado das Tecnologias da
Informação e Comunicação (TIC). A prestação de diversos serviços pode ser feita
tanto fisicamente como por meio eletrônico. Com o avanço desse tipo de
comunicação e transferência de dados surge a possibilidade de sistemas virtuais
para a realização de variados serviços. Operações bancárias, compra e venda,
atividades educacionais, agendamento de consultas e atendimentos, reuniões e
diversas outras ações são realizadas pela internet. Empresas disponibilizam uma
variada quantidade desses serviços aos seus clientes. Todavia, os governos
federais e de demais esferas também convergem diversos serviços à internet.
Podemos chamar de Governo eletrônico o uso das tecnologias da informação e a
entrega dos produtos e serviços do Estado tanto aos cidadãos como à indústria e no
uso de ferramentas eletrônicas e tecnologias da informação para aproximar governo
e cidadãos. Os conhecimentos nos processos internos de governo, nesta
contextualização, também podem ser entendidos como governo eletrônico.
18
Perri (2001 apud JARDIM e ALMEIDA, 2012, p. 6) diz que governo
eletrônico envolve diversas leituras; dentre elas o fornecimento de serviços
eletrônicos, que é “o fornecimento de serviços de utilidade pública para o
contribuinte, assim como o relacionamento Governo-Empresas, usando as
tecnologias da informação e comunicação como propiciadoras para tal. ” Na
perspectiva de Jardim e Almeida (2012) dentre as principais linhas do governo
eletrônico estão a convergência entre sistemas de informação, redes e bancos de
dados governamentais para permitir o intercâmbio de informações e a agilização de
procedimentos e a implantação de uma infraestrutura avançada de comunicações e
de serviços, com padrões de segurança e serviços.
O sistema de apoio ao analista de processo de segurança contra incêndio e
pânico, denominado PSCIPWeb, é uma forma de prestação de serviço pela internet
que utiliza conhecimentos em processos internos em uma autarquia estadual,
portanto, uma forma de governo eletrônico. É uma ferramenta tecnológica baseada
em JavaServer Pages que pode permitir avanço qualitativo na prestação de serviço
ao contribuinte, resgatando melhor índice de satisfação com a agilização na
tramitação de processos de segurança contra incêndio.
2.3 A TECNOLOGIA JAVA
As linguagens de programação podem ser classificadas em linguagem
declarativa ou de script e em linguagem procedural ou imperativa, conforme nos diz
Magri (2014, pag. 14).
As linguagens declarativas ou de script exigem que o programador forneçauma descrição exata da tarefa a ser realizada sem a necessidade deexplicar como executar a tarefa. As linguagens SQL, HTML, XML, SMIL,LINQ são exemplos de linguagens declarativas. As linguagens proceduraisou imperativas exigem que o programador escreva um roteiro queespecifique detalhadamente como executar uma tarefa. Em geral, umroteiro é descrito usando um conjunto de comandos possíveis de seremexecutados por um computador. Esses roteiros são chamados deprogramas: eles são escritos usando-se uma linguagem chamada delinguagem de programação. As linguagens: Visual C#, Visual Basic, Java,COBOL, C++, são exemplos de linguagem de programação imperativas.(MAGRI, 2014, p. 14).
19
Jandl Júnior (2014, p. 17) aponta que a Plataforma Java é o resultado de um
enorme trabalho de pesquisa acadêmica e tecnológica que ainda causa entusiasmo
em programadores, analistas e projetistas de software. O autor ainda afirma que
Java é um ambiente completo de desenvolvimento e execução de programas com
um conjunto ímpar de facilidades: robustez, orientação a objetos, portabilidade, que
permite operação em rede, distribuição de aplicações e incorpora diversas
características voltadas à segurança.
Desde as primeiras novidades – como JavaBeans, JDBC, Applets,
AWT/Swing, RMI – passando pelas inovações na linguagem (Annotations, Generics)
e chegando até as tecnologias Enterprise Edition (EJB, Web services, JSF), Java
vem constantemente transformando o modo de desenvolvimento de software,
ampliando as oportunidades para o desenvolvedor. Essa plataforma JAVA
contempla o desenvolvimento para um conjunto de tecnologias de segmentos
específicos de aplicações. Dentre estes destacam-se:
● JAVA SE (Java Platform, Standard Edition). É a base da
plataforma. Inclui o ambiente de execução e as bibliotecas comuns.
● JAVA EE (Java Platform, Enterprise Edition). A edição voltada
para o desenvolvimento de aplicações corporativas e para internet.
● JAVA ME (Java Platform, Micro Edition). A edição para o
desenvolvimento de aplicações para dispositivos móveis e embarcados.
● JAVA CARD. Voltada para dispositivos embarcados com
limitações de processamento e armazenamento, como smart cards.
● JAVAFX. Plataforma para desenvolvimento de aplicações
multimídia em desktop/web (JavaFX Script) e dispositivos móveis (JavaFX Mobile).
O propósito inicial da Sun Microsystems – desenvolvedora de JAVA – de em
1992 criar inovações tecnológicas para que permitissem a reescrita de softwares
para pequenos dispositivos, como videocassete e televisores, utilizando JAVA,
fracassou (JAVA... [ca 2015]). Com o uso comercial da web a partir de 1995 o JAVA
surge como alternativa às páginas estáticas, permitindo que os navegadores
(browsers) não apenas processassem HTML, mas se tornassem aplicações capazes
de realizar operações avançadas.
20
Como Java é composta de variadas tecnologias distintas de todo o ambiente
de desenvolvimento e execução de softwares, a máquina virtual Java (Java Virtual
Machine, ou JVM) e um conjunto padrão de bibliotecas de classe ficam responsáveis
pela interação com o usuário. É possível utilizar uma aplicação Java de várias
formas, desde applets1 embutidas em páginas web, aplicativos de uso geral em
desktops, aplicativos em aparelhos celulares até servidores de aplicações para
Internet. Para tanto, os desenvolvedores de aplicações em Java utilizam um
conjunto de ferramentas de desenvolvimento, o Java Development Kit (JDK), que é
composto por compilador e bibliotecas.
Para a escrita de códigos JAVA, bem como de outras linguagens, pode se
usar um ambiente integrado de desenvolvimento (Integrated Development
Environment – IDE), que é uma aplicação para agilizar o processo de
desenvolvimento composto por características e ferramentas de apoio ao
desenvolvedor. De acordo com Purewal (2014, p.24), um IDE geralmente te recurso
que facilitam a manipulação do código e tem também recursos importantes para o
desenvolvimento corporativo de softares. Na Figura 1 é possível ver uma captura da
tela do NETBEANS, é um dos ambientes de desenvolvimento JAVA utilizados pela
comunidade de desenvolvedores.
1 Pequeno software que executa uma atividade específica dentro de outro programa maior
21
FIGURA 1 – Ambientes de desenvolvimento integrado NetBeans
Fonte: Desenvolvido pelo autor
Existem atualmente distintas tecnologias no mercado que possibilitam o
desenvolvimento de sites dinâmicos, desde um simples site com conteúdo dinâmico
à um complexo sistema de comercialização, que utiliza ferramentas que possibilitam
consulta a bancos de dados, entre outras inúmeras funcionalidades.
Dentre estas tecnologias o JavaServer Pages (JSP) oferece diversas
vantagens em relação ao uso de outras tecnologias como PHP, ASP, CGI, Ruby on
Rails e Phyton. As principais vantagens são herdadas da própria linguagem Java,
que tem como característica portabilidade, facilidade, flexibilidade e licença gratuita.
Sistemas com clientes baseados em navegadores Internet (browsers)
exibem muitas vantagens sobre as aplicações C/S (Client/Server) tradicionais, tais
como um número virtualmente ilimitado de usuários e procedimentos de distribuição
simplificados (JÚNIOR, 2009, p. 17).
Para o desenvolvimento em Java é necessário um compilador e de uma
interface de programação de aplicações (Java API), além da JVM (Java Virtual
Machine) para a execução das aplicações. Todos esses componentes podem ser
22
encontrados no pacote JDK (Java Development Kit). A JVM sempre utiliza os
serviços oferecidos pelo sistema operacional em uso. Assim o ambiente Java é
composto com a JVM, sua API e com as classes da aplicação (JÚNIOR, 2013, p. 21).
A Figura 2 mostra a sequência descrita..
FIGURA 2 – Ambiente Java
Fonte: Adaptado de Jandl Júnior (2013, p.22)
2.4 JAVA SERVLET
A tecnologia Java Servlet fornece aos desenvolvedores Web um mecanismo
consistente para estender a funcionalidade de um servidor Web e para acessar os
sistemas de negócios existentes. Um servlet pode ser pensado como um applet que
corre no lado do servidor. Java Servlet é a principal tecnologia JAVA para a geração
de conteúdo web dinâmico. Ele estende a funcionalidade de servidores Web e é o
modelo mais simples para construir uma aplicação web completa em JAVA EE. O
servlet disponibiliza ao programador da linguagem Java uma interface para o
servidor web através de uma API. As aplicações baseadas no servlet geram
conteúdo dinâmico e interagem com os clientes, utilizando o modelo requisição-
resposta. Este paradigma de requisição e resposta é baseado no Protocolo de
Transferência de Hipertexto (HTTP). Mesmo existindo diversos frameworks para
23
simplificar a programação Java Web, todos eles criam um nível de abstração sobre
servlet.
Sampaio (2007, p.37), diz que:
“Você pode criar um web site somente com páginas JSP ou somente comServlets. Pode até mesmo dispensar páginas HTML. Páginas JSP são maisdirecionadas para uso compartilhado com Web Designers. Estesprofissionais necessitam editar aspectos visuais do site e não possuemgrande conhecimento de Java. Classes Servlets são compiladas, logo, maisseguras. Além disso, não são vistas pelo usuário web. Como são feitas emlinguagem Java pura (sem tags HTML) são mais fáceis de seremtrabalhadas por programadores. Considerando essas diferenças vemos quepáginas JSP pertencem à camada de interface com usuário e Servlets a deregras de negócio. Usando o modelo MVC - Model/View/Controller, aspáginas JSP podem atuar como View e os Servlets como Controller. Muitasaplicações são compostas apenas por páginas JSP, mas não é comumvermos aplicações apenas com Servlets. ”
Sobre o MVC, Purewal (2014, p. 345) nos diz que se trata de “uma
abordagem utilizada na arquitetura de aplicações que, em sua maior parte,
determina o design de uma aplicação baseada em banco de dados e tornou-se
padrão de mercado para a criação de aplicações web. “
Júnior (2010) afirma que “servlets costumam ser executados após
submetermos um formulário HTML. Quando o usuário clica em um botão do tipo
“submit” no formulário de uma página, os dados preenchidos são enviados ao
servidor, que executa o servlet definido pelo atributo “action” da tag <form>.
“ Ressalta ainda que “cada campo do formulário deve possuir um nome único, para
que o servlet seja capaz de recuperar o que foi digitado pelo usuário neste campo. “
Os servlets por padrão herdam da classe HttpServlet e recebem as variáveis
request e response como parâmetros. Request contém os dados referentes à
requisição submetida pelo usuário e em response incluímos informações relativas à
resposta enviada ao navegador do cliente.
Pode-se apontar como principais benefícios em se usar servlet o
desempenho, portabilidade, robustez, suporte a grandes sistemas e custo. Todavia,
mesmo com tais vantagens o desenvolvimento e a manutenção de aplicações
servlets é considerado difícil e menos produtivo ao ser comparado com a tecnologia
24
JavaServer Pages. O problema em desenvolver aplicativos servlet é que todo código
HTML deverá ser inserido dentro de códigos Java.
2.5 JSP
A tecnologia JSP, ou JavaServer Pages, permite misturar código HTML
estático com conteúdo gerado dinamicamente em Java. Os trechos de código Java
são simplesmente inseridos ao longo do HTML dentro de tags especiais, que
começam com <% e terminam com %> (JÚNIOR, 2010). JSP é uma extensão de
servlet que permite a criação tanto conteúdo estático quanto conteúdo dinâmico para
um cliente Web, assim como as linguagens ASP e PHP.
É uma tecnologia Java situada na camada de apresentação, tendo como
características predominantes a independência de plataforma, simplicidade no
desenvolvimento de aplicações Web, extremamente portátil e baseada em
orientação a objetos.
Um arquivo JSP é capaz de tratar HTML puro ou mesclá-lo com código
JAVA.
Podemos pensar em servlets como código Java com HTML por dentro, eem JSP como código HTML com código Java por dentro. Apesar da grandediferença na forma de escrever esses dois tipos de código, servlets e JSPsão, no fundo, a mesma coisa. Os códigos escritos em JSP sãotraduzidos em servlets. JSP é, portanto, apenas uma forma de escreverservlets na qual o HTML é escrito mais facilmente (afinal, nos servletsdevemos imprimir, em Java, cada linha gerada na página retornada aousuário, o que não é muito produtivo quando temos páginas HTMLcomplexas). (JÚNIOR, 2010, p. 87).
JSP é mais útil que servlets no desenvolvimento da parte de apresentação
do sistema ao usuário. Servlets são mais utilizados quando implementamos a lógica
de negócios do sistema, que possui mais cálculos e/ou consultas ao banco do que
HTML, pontua Júnior (2010). Vemos, então, a possibilidade de utilizá-los em
conjunto, mesmo sendo o JSP uma especialização de servlets.
Uma página JSP pode conter todos as tags de HTML. Tanto que a ideia por
trás do JSP é usar HTML para maior parte das páginas, marcando código Java com
25
tags especiais. Assim, toda a página JSP é traduzida para um Servlet e é este
Servlet que é chamado ao se chamar uma JSP. A Tabela 1 apresenta os tipos de
tags JSP, sua finalidade e sintaxe.
TABELA 1 – Tipos de tags JSP
TIPO FINALIDADE SINTAXE
Expressão Permite calcular e imprimir o valor de uma
expressão
<%= expressão %>
Diretiva Contém informações que permitem
configurar e rodar uma página escrita em
JSP
<%@ diretiva %>
Scriptlet Corresponde a um trecho de código escrito
em Java
<% scriptlet %>
Declaração Contém a declaração de um método,
variáveis ou constantes
<%! Declaração %>
Comentário Comentar um trecho escrito em JSP <%- comentário -%>
Fonte: MAGRI, 2014, p. 108.
JSP oferece diversos benefícios como um sistema para geração de
conteúdo dinâmico. Primeiramente, sendo uma tecnologia baseada em Java, ela se
aproveita de todas as vantagens que a linguagem Java fornece em relação a
desenvolvimento e acionamento. Como uma linguagem orientada a objetos com
forte digitação, encapsulamento, tratamento de exceções e gerenciamento de
memória automática, o uso de Java conduz a uma produtividade aumentada do
programador e a código mais robusto. Pelo fato de haver uma API padrão publicada
para JSP, e pelo fato do bytecode de Java compilado ser portável através de todas
as plataformas que aceitam uma JVM, o uso de JSP não o restringe ao uso de uma
26
plataforma de hardware, sistema operacional ou software de servidor específico
(Fields, 2000 apud BURKHARDT, 2001, p. 14).
27
3 MÉTODO DE PESQUISA
Apresentado o referencial teórico no capítulo anterior descrevendo a
arquitetura multicamadas, conceituando a tecnologia JavaServer Pages e mostrando
suas principais características e recursos necessários para a implementação do
sistema, descrever-se-á neste capítulo a metodologia utilizada para especificação e
implementação do sistema proposto, bem como os resultados obtidos.
A implementação do sistema web para apoio ao analista de processo de
segurança contra incêndio e pânico do Corpo de Bombeiros Militar do Estado de
Mato Grosso (PSCIPWeb) foi realizada através do levantamento de requisitos com
os próprios militares da corporação, e das reuniões realizadas na sede da 4ª
Companhia Independente de Bombeiros Militar em Nova Xavantina, Mato Grosso.
No decorrer do Projeto foram desenvolvidas versões intermediárias utilizando o
modelo evolucionário (SOMMERVILLE, 2007). Este modelo tem como base a ideia
de desenvolver uma implementação inicial, expor o resultado ao comentário do
usuário e fazer seu aprimoramento por meio de muitas versões, até que um sistema
adequado tenha sido desenvolvido. O modelo evolucionário é representado na
Figura 3.
FIGURA 3 – Modelo Evolucionário
Fonte: Adaptado de SOMMERVILLE, 2007.
28
A abordagem evolucionária do desenvolvimento de software, muitas vezes,
é mais eficaz do que a abordagem em cascata2, no sentido de produzir sistemas que
atendam às necessidades imediatas dos clientes. Um problema recorrente é o fato
de os softwares/sistemas serem desenvolvidos rapidamente, não sendo viável a
produção de documentos que reflitam cada versão do sistema.
A fase de concepção do projeto reduziu-se à definição da visão geral e
criação do plano de negócio e escopo do projeto. Não houve estimativas de custos,
considerando que o desenvolvimento do sistema não teve custos à corporação,
sendo desenvolvido sob a licença Creative Commons Atribuição - Não Comercial -
Compartilha Igual 4.0 Internacional3.
Foi utilizada a linguagem de programação Java, por meio da especialização
JavaServer Pages. Para facilitar a escrita e otimizar o trabalho foi utilizado o
ambiente de desenvolvimento Netbeans.
3.1 TIPO DA PESQUISA REALIZADA
Conforme Jung (2004), Marconi & Lakatos (2003) através do método
científico a pesquisa realizada é de natureza tecnológica, com objetivos de caráter
exploratório, utilizando procedimentos experimentais fundamentados em um trabalho
de campo.
“Dado o objetivo, o método descreve o caminho para atingi-lo. Assim,deverá ser suficiente trilhar o caminho descrito pelo método para sealcançar o objetivo. Se o objetivo e o método foram coerentes, então grandeparte do trabalho de pesquisa já terá sido executada, restando apenas aexecução dos passos descritos no método” (WAZLAWICK, 2014).
2 O modelo em cascata é um modelo de desenvolvimento de software sequencial no qual odesenvolvimento é visto como um fluir constante para frente (como uma cascata) através das fasesde análise de requisitos, projeto, implementação, testes (validação), integração, e manutenção desoftware.
3 Licença tipo Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International –Disponível em http://creativecommons.org/licenses/by-nc-sa/4.0/legalcode - Acesso em 10 dedezembro de 2015.
29
3.2 REQUISITOS DO SISTEMA
Os requisitos são as capacidades e condições que o sistema deve atender
(SERAFINI; CUNHA, 2008). Para isso utiliza-se de técnicas de captura de requisitos,
dentre as quais entrevistas e tempestade cerebral (brainstorming). Para o sistema
PSCIPWeb foram realizadas reuniões com o comando da 4ª Companhia
Independente de Bombeiros Militar (4CIBM) e com a chefia da Seção de Segurança
Contra Incêndio e Pânico (SSCIP), com sedes em Nova Xavantina, Mato Grosso.
Reuniões com militares da SSCIP/4CIBM que desempenham a função de analistas
de PSCIP também aconteceram na elicitação dos requisitos e durante o
desenvolvimento da versão alpha4.
Elicitar requisitos significa descobrir, tornar explícito, obter o máximo de
informações para o conhecimento deste. Assim, no processo de elicitação de
requisitos busca-se obter conhecimento relevante para o problema e prover o mais
correto entendimento de o que é esperado do software/sistema. É uma fase de
elevada importância, já que informações fundamentais à concepção e
desenvolvimento surgem nesse processo. A Figura 4 apresenta um roadmap do
processo de obtenção e documentação dos requisitos do sistema.
4 A versão alpha (ou alfa) é normalmente definida quando um software ainda está em fasede construção e testes. Nesta fase o acesso é restrito ao desenvolvedor. Porém, os usuários queserão beneficiados com o software poderão testar o sistema em um ambiente controlado.
30
FIGURA 4 – Requisitos roadmap
Fonte: SANTOS, [2007], p. 16.
3.2.1 Identificação dos atores
UML (Unified Modelling Language – Linguagem Unificada de Modelagem) é
uma linguagem de modelagem que utilizamos para criar modelos de sistemas. A
UML é padronizada pela International Standard Organization (ISO) e é independente
da linguagem de programação utilizada no projeto. Aliás, ela é capaz de modelar
qualquer problema, não só os de sistemas de informação.
Este trabalho utiliza diversos diagramas UML. Uma modalidade desses
diagramas é o de caso de uso, que são utilizados para visualizar o comportamento
do sistema, geralmente especificando um requisito funcional. O diagrama de casos
de uso é uma representação gráfica de cada funcionalidade que os usuários utilizam
no decorrer do sistema.
A Figura 5 ilustra o diagrama de caso de uso do PSCIPWeb, que conta com
seis casos de uso.
31
FIGURA 5 – Casos de uso
Fonte: Desenvolvido pelo autor
O Diagrama de caso de uso apresentado pela Figura 5 ilustra a interação dos
tipos de usuários com o sistema de software, o analista e o usuário comum. Ambos
poderão acessar o sistema. Assim, é sabido que a qualquer usuário será permitido
acesso ao sistema. O analista poderá consultar e gerar os relatórios de um PSCIP
(de aprovação ou de não conformidade), consultas simples e diretas às normas
adotadas pelo Corpo de Bombeiros Militar do estado de Mato Grosso quanto à
segurança contra incêndio e pânico e realizar uma checagem dos itens
composicionais em consonância com a norma correlata. Como o processo visa a
transparência e segurança pública, qualquer usuário poderá acessar o sistema e
simular a análise de seu PSCIP. A base de dados é a camada que tratará da
segurança das informações. Esta camada não é contemplada por este trabalho,
sendo ela desenvolvida por Santos (2016).
O diagrama de casos de uso é apenas um panorama visual das
funcionalidades do sistema, é necessária uma descrição textual para detalhar os
32
casos de uso (TACLA, [200-]. As Tabelas 2 a 7 ilustram esta documentação para os
casos de uso apresentados na Figura 5.
TABELA 2 – Documentação para o caso de uso consulta leis e normas
Nome do caso de uso Consulta leis e normas
DescriçãoPermite consultar as leis e normas adotadas peloCBMMT5 no que tange a segurança contra incêndio epânico
Ator Envolvido Analista
Pré-condições Sistema deve estar em execução aguardando poruma solicitação
Pós-condições Lei/Norma exibida na tela ou abandono da solicitaçãopelo usuário
FLUXO BÁSICOUsuário Sistema
Aguarda requisiçãoEntra com a solicitação
Exibe página com o conteúdo solicitadoFonte: Desenvolvido pelo autor
TABELA 3 – Documentação para o caso de uso consulta medidas preventivas
Nome do caso de uso Consulta medidas preventivas
Descrição Permite consultar as medidas preventivas exigíveispara um PSCIP
Ator Envolvido Analista
Pré-condições Sistema deve estar em execução aguardando poruma solicitação
Pós-condições Medida preventiva exibida na tela ou abandono dasolicitação pelo usuário
FLUXO BÁSICOUsuário Sistema
Aguarda requisiçãoEntra com a solicitação
Exibe página com o conteúdo solicitadoFonte: Desenvolvido pelo autor
5 Corpo de Bombeiros Militar do Estado de Mato Grosso
33
TABELA 4 – Documentação para o caso de uso realiza checklist
Nome do caso de uso Realiza checklistDescrição Permite realizar checklistAtor Envolvido Analista
Pré-condições Sistema deve estar em execução, exibindo a páginacheclist.jsp, aguardando por uma solicitação.
Pós-condições Exibe resultado do checklistFLUXO BÁSICO
Usuário SistemaAguarda requisição
Entra com as informaçõesExibe página com o resultado do checklistAguarda pela solicitação do relatórioFonte: Desenvolvido pelo autor
TABELA 5 – Documentação para o caso de uso analisa PSCIP
Nome do caso de uso Analisa PSCIPDescrição Permite realizar a análise de um PSCIPAtor Envolvido Analista
Pré-condições
Sistema deve estar em execução aguardando poruma solicitação.Deve ser informado o CNAEDeve ser informada a área construídaDeve ser informada a altura
Pós-condições
Exibe a descrição de PSCIPExibe o grupo de risco e divisãoExibe a carga de incêndio e risco predominante{Exibe as medidas preventivas}
FLUXO BÁSICOUsuário Sistema
Aguarda requisiçãoEntra com as informações
Exibe página com o resultado da análiseAguarda pela solicitação do relatório
FLUXOS ALTERNATIVOS
A1: em {Exibe asmedidas preventivas}
Permite a consulta às medidas preventivas para oPSCIP em análiseGera relatóriosFonte: Desenvolvido pelo autor
34
TABELA 6 – Documentação para o caso de uso gera relatórios não conformidade
Nome do caso de uso Gera relatórios não conformidadeDescrição Permite gerar relatórios não conformidadeAtor Envolvido Analista
Pré-condiçõesSistema deve estar em execução aguardando poruma solicitação, após uma análiseDeve ser solicitado o relatório
Pós-condições Gera relatório de não conformidadeFLUXO BÁSICO
Usuário SistemaAguarda requisição
Entra com as informaçõesAguarda pela solicitação do relatórioExibe página com o relatório solicitadoFonte: Desenvolvido pelo autor
TABELA 7 – Documentação para o caso de uso atesta aprovação de PSCIP
Nome do caso de uso Atesta aprovação de PSCIPDescrição Permite gerar certificado de aprovação de PSCIPAtor Envolvido Analista
Pré-condiçõesSistema deve estar em execução aguardando poruma solicitação, após uma análiseDeve ser solicitado o certificado
Pós-condições Gera certificado de aprovaçãoFLUXO BÁSICO
Usuário SistemaAguarda requisição
Entra com as informaçõesAguarda pela solicitação do certificado{Exibe página com o certificado gerado}
FLUXOS ALTERNATIVOSA1: em {Exibe páginacom o certificadogerado}
Permite a impressão do certificadoPermite exportar o certificado para PDFPermite enviar certificado por e-mailFonte: Desenvolvido pelo autor
35
3.2.2 Requisitos Funcionais
A descoberta dos requisitos funcionais deve ser realizada separadamente
dos requisitos não funcionais, de modo a permitir que se centre no problema a ser
resolvido. Ressalta-se que, de modo geral, requisitos são dinâmicos. Assim, estão
suscetíveis a mudanças durante o ciclo de vida do software (CYSNEIROS, 1997).
Do ponto de vista funcional do sistema, define-se como principais recursos:
a) permitir ao analista e público externo o acesso às legislações e normas
para os serviços de Segurança Contra Incêndio e Pânico no âmbito do Corpo de
Bombeiros Militar do Estado de Mato Grosso;
b) padronizar o acesso a manifestações acerca de dúvidas atinentes à
análise de PSCIP;
c) viabilizar uma checagem rápida aos itens de composição obrigatória do
PSCIP conforme normatização;
d) permitir a realização de análise de PSCIP;
e) permitir, a partir do código CNAE6 e da altura e área construída, a
classificação de um local de risco quanto à ocupação, grau de risco e medidas
mínimas de segurança contra incêndio e pânico;
f) gerar relatórios para um PSCIP (de aprovação ou de não conformidade).
3.2.3 Requisitos Não Funcionais
Requisitos não funcionais expressam qualidades de cunho geral, bem como,
restrições específicas de um determinado problema (CYSNEIROS, 1997).
A lista a abaixo especifica os requisitos não funcionais do sistema proposto:
a) sistema multiplataforma, rodando via web;
b) desenvolvimento em Java, conforme convenções próprias da linguagem;
c) oferecer interface amigável (SANTOS, 2016);
6 Classificação Nacional de Atividades Econômicas
36
d) utilizar banco de dados Software Livre (SANTOS, 2016);
e) facilidade de uso do sistema, com boa usabilidade e condução;
f) atualização automática, via servidor;
g) suporte a múltiplos usuários.
3.3 PROJETO DO SISTEMA DE INFORMAÇÃO WEB
Sistemas de informação na web são sistemas de informação que
essencialmente tem sua estrutura no ambiente web, isso demanda por metodologias
de desenvolvimento adequadas.
3.3.1 Arquitetura do Software Web
O Projeto de arquitetura é um processo criativo em que se tenta estabelecer
uma organização do sistema que satisfaça os requisitos funcionais e não funcionais
do sistema de software, ou seja, a arquitetura define o que é o sistema em termos
de componentes computacionais e, os relacionamentos entre estes componentes,
os padrões que guiam a sua composição e restrições (SHAW E GARLAN, 1996
apud BLOIS, 2006).
Transcorrida a fase de modelagem foi estruturada a arquitetura do sistema,
que pode ser observada na Figura 6.
37
FIGURA 6 – Arquitetura do Software Web (MVC)
Fonte: Adaptado da internet7
3.3.2 Estrutura de Classes das Análises de PSCIP
Classes podem ser vistas como abstrações ou definições maiores das coisas,
um modelo ou especificação que define um tipo de objeto. Já objeto é algo mais real,
mais concreto, é um elemento ou tipo daquela classe.
Para Deitel (2004, apud OLIVEIRA, 2009, p. 65), herança é o recurso utilizado
para “criar uma nova classe a partir de uma classe existente, a nova classe herda os
atributos e comportamento dessa classe existente”. A Generalização e a
Especialização foram utilizadas na estrutura das classes envolvidas. Segundo
Guedes (2005, apud OLIVEIRA, 2009, p. 65) este relacionamento é uma forma de
associação entre Casos de Uso na qual existem dois ou mais Casos de Uso com
características semelhantes entre si. A estrutura de um Caso de Uso generalizado é
herdada pelos Casos de Uso especializados, incluindo quaisquer possíveis
associações.
7 http://images.slideplayer.com.br/1/43124/slides/slide_11.jpg - Acesso em 10 de janeiro de2016
38
A classes da Figura 7 representam as entidades implementadas no sistema:
Projeto, PSCIP e AnalisePSCIP. A classe Projeto possui o construtor público sem
argumentos, getters e setters. Na implementação existem meios de fazer com que a
chamada a um método do tipo getter ocorra automaticamente, conforme a
necessidade; por isso o padrão getter/setter é tão importante (JAVA, [ca 2015]). A
classe PSCIP é uma especialização de projeto. Já a classe AnalisePSCIP estende a
classe PSCIP. Cabe lembrar que essa estrutura foi concebida com vistas na
extensão posterior do sistema permitindo, por exemplo, o cadastro dos processos
aprovados na unidade e a geração de dados estatísticos.
39
FIGURA 7 – Estrutura das classes
Fonte: Desenvolvido pelo autor
3.3.3 Diagramas de Sequência do Sistema PSCIPWeb
Serafini (2009) diz que o diagrama de sequência faz parte da modelagem
dinâmica do sistema, sendo extremamente útil para se observar a “vida” dos objetos
no sistema, identificar as mensagens a serem realizadas ou ainda descobrir erros de
modelagem estática que impossibilitem o fluxo de informações ou de chamadas de
40
métodos entre componentes do sistema. O diagrama de sequência descende dos
diagramas de interação de objetos e mostra os objetos colaborando entre si.
O diagrama se forma com os objetos que fazem parte da sequência e estes
se situam na parte superior do diagrama. Quem inicia a ação se situa à esquerda do
diagrama. Desse objeto sai uma linha vertical tracejada que indica sua vida no
sistema. Essa linha simples se converte em uma linha grossa quando representa
que o objeto tem o foco do sistema, isto é, quando está ativo.
A implementação de uma mensagem pode tomar várias formas, como uma
chamada de procedimento, o envio de um sinal entre linhas ativas, a elevação
explícita de eventos, e assim por diante. A seguir demonstra-se na Figura 8 o
diagrama de sequência referente às funções do sistema.
FIGURA 8 – Diagrama de sequencia
Fonte: Desenvolvido pelo autor
3.3.4 Camada de Apresentação
41
A camada de visualização do sistema não será tratada neste trabalho. A
especificação e desenvolvimento desta fase atendem ao trabalho de Santos (2016).
3.3.5 Banco de Dados
O banco de dados do sistema não será tratado neste trabalho. A
especificação e desenvolvimento do banco de dados atendem ao trabalho de Santos
(2016).
3.4 IMPLEMENTAÇÃO DO SISTEMA DE INFORMAÇÃOWEB
Nesta etapa a intenção é mostrar como foi desenvolvido o sistema de apoio
ao analista de processos de segurança contra incêndio e pânico do Corpo de
Bombeiros do Estado de Mato Grosso, onde são descritas as técnicas e ferramentas
utilizadas para implementação em consonância com os objetivos propostos. Além
deste é apresentado um estudo de caso, mostrando as funcionalidades do sistema
do ponto de vista do usuário.
Para a escrita de códigos JSP, bem como de outras linguagens, foi utilizado
o ambiente integrado de desenvolvimento NetBeans, que é uma aplicação para
agilizar o processo de desenvolvimento composto por características e ferramentas
de apoio ao desenvolvedor que facilitam a escrita e otimizam o trabalho. O
NetBeans IDE é gratuito e de código aberto para desenvolvedores de software nas
linguagens Java, C, PHP, Ruby, entre outras. O IDE é executado em muitas
plataformas, como Windows, Linux, Solaris e MacOS.
A Figura 9 mostra a estrutura das classes do PSCIPWeb – na tela do
NetBeans. Os pacotes, como se vê, obedecem ao padrão MVC sendo cada camada
do sistema separada em seu respectivo pacote. Cabe ressaltar que algumas
implementações serão contempladas numa próxima fase do projeto, como controle
de acesso, chat entre analistas, exportação de relatórios para arquivos de
documentos de formato portátil (PDF), dentre outras.
42
FIGURA 9 – Estrutura do PSCIPWeb
Fonte: Desenvolvido pelo autor
A Figura 10 apresenta fragmentos da Classe Java
MedidasDeSegurancaDAO, cuja função é receber a requisição das medidas de
43
segurança necessárias à um PSCIP e responder à Classe PSCIP a resposta à
requisição, atuando como ponte de acesso à essas informações no banco de dados.
FIGURA 10 – Classe MedidasDeSegurancaDAO
Fonte: Desenvolvido pelo autor
Dentre as implementações a definição do grau de risco fundamental. Essa
regra de negócio atua como um dos eixos para se estabelecer as medidas de
segurança contra incêndio e pânico. De acordo com a Lei estadual 8.399/05 e a
NTCB 01/08 se um local de risco tiver área construída menor que 750 m2 e altura
menor que 6m, sendo de risco baixo, está dispensado de muitas formalidades. A
este é facultado a possibilidade de apresentação de um processo técnico
simplificado, sem a exigência de um responsável técnico. A Figura 11 apresenta
parte do código que define no sistema o grau de risco para um PSCIP.
44
FIGURA 11 – Definição do grau de risco
Fonte: Desenvolvido pelo autor
O sistema permite a partir do lançamento do código CNAE, da altura da
edificação e de sua área construída, a classificação da ocupação e/ou local de risco,
bem como elenca as medidas de segurança exigíveis para este. Isso é muito
importante para que o analista do processo verifique a regularidade das informações
prestadas com a leis e normas correlatas. Todavia, há casos em que é dispensável
este rito, podendo o analista verificar de forma direta as medidas de segurança para
um local/ocupação. Seja por conhecer o local ou por se tratar de uma alteração ou
atualização de um PSCIP. Para que essa consulta pudesse ser realizada de forma
direta, sem mesmo o uso do banco de dados, foram desenvolvidas páginas JSP que,
auxiliadas por JavaScript8, listam as medidas de segurança em poucos cliques,
conforme pode se observar na Figura 12.
8 JavaScript é atualmente a principal linguagem para programação client-side emnavegadores web. As linguagens de script servem para estender a funcionalidade de um programae/ou controlá-lo.
45
FIGURA 12 – Definição direta das medidas de segurança
Fonte: Desenvolvido pelo autor
3.4.1 Testes do sistema Web de apoio ao analista de PSCIP
A etapa de produção de software é o processo de convergir uma
especificação de sistema em um sistema executável. Para o caso em estudo foram
realizados vários testes no próprio código-fonte do sistema, haja vista os testes
permitirem encontrar os defeitos e garantir a confiabilidade do software. Tendo em
vista demonstrar o funcionamento do sistema PSCIPWeb, a seguir descreve-se um
estudo de caso com dados e situações aleatórias e fictícias. A figura 13 mostra a
interface gráfica do sistema.
46
FIGURA 13 – Interface gráfica do PSCIPWeb
Fonte: Desenvolvido pelo autor
Como descrito anteriormente há possibilidade de consulta às medidas de
segurança no sistema por formas distintas: diretamente em um grupo de ocupações
específicas9, pela divisão dos grupos ou pela descrição da atividade comercial. Por
padrão a tela inicial do sistema oferece a possibilidade de se realizar uma consulta
com base no código da classificação nacional de atividades econômicas (CNAE),
conforme pode se ver na Figura 14. Quando a consulta é realizada por esta
modalidade o sistema exige ainda a altura e a área construída do PSCIP objeto de
análise, já que estas variáveis influenciam na determinação das exigências para o
local de risco.
FIGURA 14 – Consulta por CNAE
9 A Lei Estadual 8.399/05 faz a classificação das edificações, instalações e locais de riscoquanto à ocupação (Tabela 1 da lei), por exemplo: grupo A – Residencial, grupo F – Local de reuniãode público, etc.
47
Fonte: Desenvolvido pelo autor
A Figura 15 apresenta a tela com a classificação do local de risco de acordo
com as variáveis apresentadas pelo usuário, neste caso conforme a Figura 14.
FIGURA 15 – Classificação do local de risco
Fonte: Desenvolvido pelo autor
48
Ao clique no link que se encontra na descrição da divisão da ocupação/local
de risco o usuário é redirecionado para a página com os itens necessários para que
o estabelecimento ou instituição esteja em regularidade com as normas de
segurança contra incêndio. O resultado para o caso em estudo pode ser visto na
Figura 16.
FIGURA 16 – Medidas preventivas para locais de hospedagem
Fonte: Desenvolvido pelo autor
O PSCIP deve ser utilizado para apresentação das medidas de segurança
contra incêndio e pânico das edificações, instalações e locais de risco. Esse
processo deve ser composto por uma série de documentos, alguns dos quais
obrigatórios. Para atender a essa exigência o sistema conta com a possibilidade de
49
realizar um checklist dos itens de composição do PSCIP, cujo link pode ser
acessado de qualquer página do sistema. A Figura 17 apresenta o checklist.
FIGURA 17 – Checklist de PSCIP
Fonte: Desenvolvido pelo autor
50
A ausência de um item obrigatório para a composição do PSCIP implica em
não aprovação e, obrigatoriamente, na emissão de um relatório de não
conformidade que aponte as inconsistências. Havendo não conformidade na etapa
de checagem dos itens obrigatórios à composição do processo, a geração do
relatório de não conformidade é automática, como pode ser observado na Figura 18.
FIGURA 18 – Relatório de não conformidade
Fonte: Desenvolvido pelo autor
51
4 CONCLUSÃO
Por meio do sistema desenvolvido por este trabalho, espera-se dar mais
segurança e facilidade ao trabalho do analista de processo de segurança contra
incêndio e pânico do Corpo de Bombeiros do Estado de Mato Grosso, de modo que
toda a tramitação seja agilizada e a análise alcance maior nível de qualidade,
atendendo melhor o contribuinte. A instalação do sistema no servidor poderá ser
feita fora do local de trabalho dos militares, protegendo os dados através de cópias
de segurança metódicas. O programa resultante do presente trabalho permite a
padronização de procedimentos na análise de processos de segurança contra
incêndio e pânico no âmbito do Corpo de Bombeiros de Mato Grosso. As tecnologias
baseadas na Web permitem oferecer aos usuários a oportunidade de consultar os
resultados das análises em tempo real a partir de qualquer navegador Web e de
qualquer sistema operacional.
Com o desenvolvimento do presente trabalho observou-se que a arquitetura
multicamadas oferece vantagens significativas sobre as demais arquiteturas de
software existentes no mercado. Porém, com estudo e implementação da arquitetura
multicamadas através da tecnologia JavaServer Pages, algumas dificuldades foram
encontradas devido a quantidade de tecnologias que são envolvidas no
desenvolvimento de um sistema para internet, sendo necessário estudar cada uma
delas para a correta implementação do sistema.
Ainda que seja expressiva a quantidade de recursos e ferramentas
envolvidas, a tecnologia JavaServer Pages se mostrou uma excelente solução para
desenvolvimentos de sistemas web, destacando características como portabilidade,
facilidade, flexibilidade e licença gratuita.
O emprego do modelo MVC contribuiu para que o sistema fosse projetado
com uma melhor separação entre os dados do negócio, a interface do usuário e o
banco de dados. Estes tratados em trabalhos distintos de Santos (2016) e Santos
(2016), respectivamente.
52
O sistema PSCIPWeb pode receber recursos adicionais como controle de
acesso, chat entre analistas, exportação de relatórios para arquivos de documentos
de formato portátil (PDF), dentre outras.
53
REFERÊNCIAS
ARAÚJO, Marconi Pereira de. Gestão da qualidade no serviço público: desafiode uma nova era. João Pessoa: Universidade Federal da Paraíba, 2004.
BLOIS, Ana Paula Terra Bacelo. Uma Abordagem de projeto arquiteturalbaseado em componentes no contexto de Engenharia de Domínio. 2006. Tesede Doutorado. UNIVERSIDADE FEDERAL DO RIO DE JANEIRO.
BRASIL. (Estado). Lei de Segurança Contra Incêndio e Pânico de Mato Grosso.Cuiabá, IOMAT: 22/12/2005. N. 8.399, Disponível em:
http://www.bombeiros.mt.gov.br/anexos2/1863.pdf. Acesso em: 10/06/2014.
BURKHARDT, Charles. Desenvolvimento de um sistema de leilão utilizandoJavaServer Pages. 2001. 77 f. TCC (Graduação) - Curso de Ciências da
Computação, Universidade Regional de Blumenau, Blumenau, 2001.
CASTELLS, Manuel. A Galáxia Internet: reflexões sobre a Internet, negócios e asociedade. Zahar, 2003.
CORPO DE BOMBEIROS MILITAR DE MATO GROSSO. NTCB 01:
Procedimentos Administrativos. 1 ed. Cuiabá: IOMAT, 2008. Disponível em:
<http://www.cbm.mt.gov.br/anexos2/2044.pdf>. Acesso em: 15/06/2015
CYSNEIROS, Luiz Mareio; LEITE, J. C. S. P. Definindo requisitos não funcionais.XI Simpósio Brasileiro de Engenharia de Software. Fortaleza, CE, p. 28, 1997.
FERNANDES, Aguinaldo Aragon; DE ABREU, Vladimir Ferraz. Implantando aGovernança de Ti: Da estratégia à Gestão de Processos e Serviços. Brasport,2014.
JANDL JÚNIOR, Peter. Desenvolvendo aplicações web com JSP e JSTL. SãoPaulo: Novatec, 2009. 316 p.
JANDL JÚNIOR, Peter. Java Guia do Programador: Atualizado para Java 7. 2. ed.
São Paulo: Novatec, 2013. 640 p.
54
JARDIM, José Maria; ALMEIDA, Carlos Henrique Marcondes de. Políticas deinformação governamental: a construção de governo eletrônico naadministração federal do Brasil. 2012.
JAVA e orientação a objetos: Curso FJ-11. Curso FJ-11. [ca 2015]. Elaborada por
CAELUM. Disponível em: <https://www.caelum.com.br/download/caelum-java-
objetos-fj11.pdf>. Acesso em: 25 dez. 2015.
JUNG, C. F. Metodologia para Pesquisa e Desenvolvimento: aplicada a novastecnologias, produtos e processos. Axcel Books do Brasil Editora, Rio de Janeiro,
RJ, 2004.
MAGRI, João Alexandre. Programação Web com plataforma Java: fundamentose desenvolvimentos de aplicações. 1. Ed. São Paulo: Érika, 2014.
MARCONI, M. A.; LAKATOS, E. M. Fundamentos de Metodologia Científica. SãoPaulo: Atlas, 2003.
MARTINS, Antônio Carlos. Direito fundamental do cidadão: disponibilização dosserviços da defesa civil e dos corpos de bombeiros. 2010. 124 f. Dissertação
(Mestrado) - Curso de Direito, Centro Universitário Fieo, Osasco, 2010.
MENEZES, José Pantoja de. O Corpo de Bombeiros no Pará. 2. ed. Belém: 2007.Disponível em: www.bombeiros.pa.gov.br/downloads/o-cbmpa-menezes.pdf. Acesso
em: 12/06/2015
OLIVEIRA, Ricardo Ramos de. Desenvolvimento de um sistema de informaçãoweb utilizando padrões de projeto e JSF para um laboratório de análises físico-químicas. 2009. 90 f. Tese (Doutorado) - Curso de Ciências da Computação,
Universidade Federal de Lavras, Lavras, 2009.
PUREWAL, Semmy. Aprendendo a desenvolver aplicações web. São Paulo:
Novatec, 2014. 360 p. Tradução de Lúcia Kinoshita.
RAINBIRD, John S. The Vigiles of Rome, Durham theses, Durham University, 1976.
Disponível em: <http://etheses.dur.ac.uk/7455>. Acesso em: 10/06/2015
SAMPAIO, Cleuton. Guia do Java Enterprise Edition 5-Desenvolvendoaplicações corporativas. Brasport, 2007.
55
SANTOS, Elias Tavares dos. Desenvolvimento do banco de dados para umsistema de apoio ao analista de processo de segurança contra incêndio epânico do Corpo de Bombeiros Militar do Estado de Mato Grosso. 2016. 30 f.
TCC (Graduação) - Curso de Sistemas Para A Internet, Ifmt, Nova Xavantina, 2016.
SANTOS, Jean Veiga dos. Desenvolvimento da interface gráfica do sistema webde apoio ao analista de processo de segurança contra incêndio e pânico doCorpo de Bombeiros Militar do Estado de Mato Grosso. 2016. 40 f. TCC
(Graduação) - Curso de Sistemas Para A Internet, Ifmt, Nova Xavantina, 2016.
SANTOS, Rildo F. Análise de Requisitos de Software. [S.l.]: E-tecnologia, [2007].Color.
SERAFINI, José Inácio. Projeto de Sistemas Orientados a Objetos. Vitória: IFES,2009. 149 p.
SERAFINI, José Inácio; CUNHA, Luiz Egídio Costa. Análise de SistemasOrientados a Objetos. Vitória: CEFETES, 2008. 109 p.
SOMMERVILLE, Ian. Engenharia de software. Tradução André Maurício de
Andrade Ribeiro; revisão técnica Kechi Hirama. – São Paulo: Addison Wesley, 2007.
TACLA, Cesar Augusto. Análise e projeto OO & UML 2.0. Curitiba: IFPR, [200-]. p.97.
WAZLAWICK, Raul Sidnei. Metodologia de pesquisa para ciência da computação. 2.
ed. Rio De Janeiro: Elsevier, 2014.
56
ANEXO A
Roteiro Para Análise de PTECIdentificação: Ocupação:
Área Construída Área Considerada Altura Grupo Divisão Carga Incêndio Risco
CheckList - Conforme NTCB 01 – Item 5.1.1.2 (Composição)
Item Situação Item Situaçãoa) Etiqueta de Identificação (anexo A) j) Laudo elétrico
b) Requerimento de serviços técnicos (anexo B) k) Cálculo SPDA
c) Procuração do proprietário l) Plano de Segurança Espetáculos Pirotécnicos
d) Taxa do serviço solicitado m) Planta de detalhes das medidas preventivas(hidrantes, extintores etc.)
e) Credenciamento do responsável técnico n) Planta do isométrico (hidrantes, GLP, chuveirosautomáticos etc.)
f) ART – PSCIP ( som, iluminação, tendas, palco,arquibancadas, estruturas, camarotes, etc)
o) Conjunto de plantas arquitetônicas (fachada,cortes, escadas)
g) Folha Resumo para o PTEC (anexo C) p) Planta situação/locação (com logradouros epropriedades circunvizinhas)
h) Assinatura em todas as páginas q) Planta de risco de incêndio (anexo H)Plano de intervenção de incêndio, se necessário
i) Memorial descritivo e industrial (Anexo I e J)
Preventivos - Conforme Lei 8.399/05
Tipo de Preventivo Necessita? Atende Normas?
Acesso de Viatura na Edificação
Segurança Estrutural
Compartimentação Horizontal
Compartimentação Vertical
Controle de Materiais de Acabamento
Saídas de Emergência
Plano de Intervenção de Incêndio
Brigada de Incêndio
Iluminação de Emergência
Detecção de Incêndio
Alarme de Incêndio
Sinalização de Emergência
Extintores
Hidrante e Mangotinhos
Resfriamento
Chuveiros Automáticos
57
Preventivos - Conforme Lei 8.399/05
SPDA
Controle de Fumaça
Monitoramento, supressão e alívio de explosões de gases e/ou poeiras
Saídas de Emergência - Conforme NTCB 13/2013
Tabela 1Dimensões em planta
Quanto à área do maior pavimento
Quanto à área dos pavimentos atuados abaixo da soleira de entrada
Quanto à área total (soma das áreas de todos os pavimentos)
Tabela 2 Classificação quantos as características construtivas
Tabela 3Dimensionamento dassaídas de emergência
UP = Unidade depassagem
Setor/Pavimento
Pessoas m2
UP Acessos edescargas
UP Escadas e rampas
UP Portas
População Máxima
Tabela 4Distâncias Máximas aserem percorridas
Possui chuveiros automáticos? Possui detecção?
Saída única
Mais de uma saída
Tabela 5Quantidade mínima desaídas e tipos de escadas
Tipo de escadas Quantidade de Saídas
NE - Escada não enclausurada (Comum)
EP – Escada enclausurada protegida
PF – Escada à prova de fumaça
Notas:*****Conforme a 1ª análise do projeto em tela, deve-se atender as seguintes observações: *****
I) O PSCIP deverá ser retirado para correções; *****II) A apresentação das correções deverá obedecer ao item 5.1.5.1.17 da NTCB 01/2009; *****III) Após a retirada do PSCIP, o proprietário, responsável pelo uso ou responsável técnico terá no máximo 90 (noventa) diaspara sanar as não conformidades e apresentar para a reanálise, conforme item 5.1.5.1.23 da NTCB 01/2009. –POSTO/GRADUAÇÃO – NOME DO MILITAR – ANALISTA.Situação da análise: _____________________________
Nova Xavantina/MT, ____/______/20___
Carimbo do analista