Академический Документы
Профессиональный Документы
Культура Документы
PARNAMIRIM - RN
2019
ANTONIO SERGIO FERREIRA PACHECO
PARNAMIRIM - RN
2019
ANTONIO SERGIO FERREIRA PACHECO
Banca examinadora
_____________________________________________________________
Prof. MSc. João Maria Araújo do Nascimento - Orientador
Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Nort e
_____________________________________________________________
Prof. DSc. Givanaldo Rocha de Souza - Examinador
Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte
_____________________________________________________________
Prof. DSc. Fabio Augusto Procópio de Paiva - Examinador
Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte
À minha esposa, pelo amor e
compreensão nos momentos de
dificuldade e ausência. Aos meus pais,
pelo incentivo e apoio constante. Aos
professores, pela dedicação e
competência em compartilhar seus
conhecimentos.
AGRADECIMENTOS
Érico Veríssimo
RESUMO
The work presented here describes the process of developing a Web application for
managing building costs estimates. Initially, the purpose of this interdisciplinary study
is to further analyze the process, tools and techniques used in web software
development. Subsequently, the main aim is to have a product that meets the needs
of small and medium-sized companies in the construction sector. Therefore, the
automation of the tables of the National System of Survey of Costs and Indices of the
Civil Construction (SINAP) was fundamental to the feasibility of this project, since they
are suggested as an official reference source of materials prices and service
compositions costs by Decree 7983/2013, which establishes rules and criteria for
drafting the reference budget for engineering works and services, contracted and
executed with resources from the Union's budgets. This work was modelled based on
UML (Unified Modelling Language), implemented with JAVA programming, as it is a
web application, the Spring Boot Framework was used, which resulted in a great
productivity gain. After applying and conducting unit and integration tests, the web
application was finally hosted on an application server along with MySQL server for
data persistence.
1 INTRODUÇÃO 14
1.3 JUSTIFICATIVA 16
2 REFERENCIAL TEÓRICO 18
2.6 HIBERNATE 30
2.7 THYMELEAF 30
2.8.4.4 TCPO 38
3 METODOLOGIA 39
3.2 MATERIAIS 39
5 CONSIDERAÇÕES FINAIS 55
14
1 INTRODUÇÃO
● Utilizar a tabela SINAPI como fonte de dados para aplicação Web proposta.
● Realizar o levantamento de todos os requisitos necessários para
implementação da aplicação Web.
● Construir protótipos das páginas, com o propósito de refinar os requisitos junto
ao cliente.
● Analisar e desenvolver a aplicação proposta com uma interface simples e de
fácil utilização, a fim de constatar os benefícios gerados pela aplicação.
● Validar os conhecimentos adquiridos durante o curso de Tecnologia em
Sistemas para Internet.
1.3 JUSTIFICATIVA
2 REFERENCIAL TEÓRICO
Para Pressman (2011, p. 338), uma aplicação Web pode ser desde uma
simples página até um Web Site completo. Segundo Paula Filho (2003), aplicações
Web são “produtos de software ou sistemas de informática que utilizam uma
arquitetura distribuída, pelo menos parcialmente sob protocolo HTTP. Em
consequência, pelo menos parte das interfaces com o usuário são acessíveis através
de um navegador (browser)”.
As aplicações Web necessitam de uma análise criteriosa durante sua fase de
modelagem, pois é inerente a esse tipo de aplicação surgirem novas circunstâncias.
As técnicas e métodos propostos pela Engenharia de Software tradicional,
apesar de serem completamente viáveis para as aplicações não Web, não definem
todos os aspectos para que a aplicação Web tenha sucesso em seu projeto.
Segundo Pressman (2011, p. 37), há características em que uma aplicação
Web se diferencia da maioria das aplicações convencionais. Essas características são
encontradas na grande maioria das aplicações Web.
Intensidade de Tráfego na Rede: Pela própria essência, uma aplicação Web
deve ser implementada em uma rede de computadores. Com isso, aspectos
relacionados à velocidade em que os dados trafegam por ela devem ser analisados,
de forma a não causar congestionamentos;
Direcionador de Conteúdo: Na maioria dos casos, a aplicação Web tem como
objetivo principal, apresentar ao usuário final conteúdo hipermídia, como textos, sons,
vídeos e figuras; e
Evolução Contínua: Em softwares convencionais, as atualizações são
planejadas de forma sistemática e programada. Já em aplicações Web podem sofrer
várias modificações ao longo de sua existência, chegando a ocorrer em determinados
casos, atualizações em tempo real.
19
Pressman (2011, p. 40) cita que o processo pode ser definido para atividades
como desenvolvimento, manutenção, aquisição e contratação de software. Os
processos de software formam a base para o controle gerencial de projetos de
software e estabelece o conteúdo no qual os métodos técnicos são aplicados, os
produtos de trabalho (modelos, documentos, dados, relatórios, formulários, etc.) são
produzidos, os marcos são estabelecidos, a qualidade é assegurada e as
modificações são adequadamente geridas.
Spring Boot é um projeto que faz parte do ecossistema Spring e fornece uma
forma mais simples e rápida de configurar e executar aplicativos autônomos baseados
na web. O Spring Boot tem uma visão opinativa da plataforma Spring e de bibliotecas
de terceiros tornando-os aplicativos executáveis sem necessidade de implantação e
configurações muito complexas. A maioria dos aplicativos Spring Boot precisa de uma
configuração de Spring muito pequena. Pode ser combinado com ferramentas de
construção automáticas como Maven ou Gradle.
até mesmo eletrodomésticos, assim como a maioria dos programas para Android.
(LUCKOW; MELO, 2015, p.640)
2.6 HIBERNATE
2.7 THYMELEAF
Mattos (2006, p. 35.), ainda afirma que o indicador mais utilizado para
representação do custo na construção civil por metro quadrado (m²) é o Custo Unitário
Básico (CUB).
34
● BDI (quando a CPU for de venda; caso contrário, não existe BDI).
Por mais abrangente que seja o conjunto de composições de custos unitários
que um dado livro ou órgão possa dispor, ele parte de observações de obras diversas,
de empresas diversas e realizadas sob condições particulares (MATTOS, 2006, p.
68).
Daí a necessidade das empresas em desenvolverem suas próprias
composições de custos, que reflitam os seus indicadores de produtividade e de
consumo, que melhor representem as características de produção da empresa. Ao
processo de obtenção dos indicadores reais de produção e de consumo dá-se o nome
de apropriação. É através da apropriação que a empresa passa a conhecer sua
produtividade, seus pontos fortes e fracos no que diz respeito ao processo produtivo
e ao processo gerencial. O passo inicial da apropriação é a observação, observar
significa assistir e registrar. É a partir dos dados coletados nos canteiros de obra que
podem ser elaboradas as composições de custos da empresa.
Dias (2012, p. 11) define BDI como um percentual que incide sobre os custos
diretos da obra, que se refere às despesas indiretas, lembrando que essa
porcentagem pode variar de acordo com a localização do empreendimento, com o tipo
de administração adotado, com os impostos e com a margem de lucro esperado pelo
empreendedor que também o compõem.
Por sua vez, González (2008, p. 32), complementa essa definição explicando
que a função do BDI é completar o orçamento, incluindo nele alguns itens que são de
difícil mensuração, sendo atribuídos valores estimados. Diz ainda que o BDI pode ser
apresentado no orçamento em sua forma percentual, incidindo sobre todos os custos
unitários, como um valor geral incluído usualmente no final da planilha ou como um
misto das duas formas. Os custos indiretos decorrem da estrutura da obra e da
empresa e não podem ser atribuídos diretamente à execução de um determinado
serviço, sendo os que mais afetam a construção, segundo Dias (2012, p. 12) são:
● Taxa de administração central
● Taxa de custo financeiro
● Taxa de risco do empreendimento
37
● Taxa de tributos
● Taxa de despesas de comercialização
● Lucro ou remuneração líquida da empresa
Segundo Mattos (2006, p. 38) a fórmula básica para cálculo do BDI é a seguinte:
𝐼 𝑅 𝐹
(1 + ) (1 + ) (1 + )
𝐵𝐷𝐼 = [( 100 100 100 ) − 1] = [( (1 + 𝑖)(1 + 𝑟)(1 + 𝑓) ) − 1] 𝑥 100
𝑇 + 𝑆 + 𝐶 + 𝐿 1 − (𝑡 + 𝑠 + 𝑐 + 𝑙)
1 − ( )
100
2.8.4.1 SINAPI
2.8.4.4 TCPO
3 METODOLOGIA
3.2 MATERIAIS
Os requisitos não funcionais são aqueles que não dizem respeito diretamente
às funcionalidades fornecidas pelo sistema. Podem estar relacionados a propriedades
de sistemas emergentes, como confiabilidade, tempo de resposta, espaço em disco,
desempenho e outros atributos de qualidade do produto (PAULA FILHO, 2003). Às
vezes podem dizer respeito ao sistema como um todo. Isso significa que na maioria
das vezes eles são mais importantes que os requisitos funcionais individuais. Se uma
falha em cumprir um requisito funcional pode comprometer parte do sistema, uma
falha em cumprir um requisito não funcional pode tornar todo o sistema inútil
(SOMMERVILLE, 2011).
Um problema dos requisitos não funcionais é que geralmente eles são de difícil
verificação e quantificação em uma primeira versão do produto (PAULA FILHO, 2003).
Podem ser escritos para refletir os objetivos gerais do cliente como usabilidade,
recuperação à falhas ou rapidez de resposta ao usuário. Esses requisitos são
problemáticos na medida em que abrem a possibilidade de múltiplas interpretações e
claro discussões quando o sistema é entregue (SOMMERVILLE, 2011).
43
RNF 02 Segurança dados Cada orçamentista somente terá acesso aos seus próprios
orçamentos e sua base própria de preços.
Este sistema Web reuniu competências adquiridas pelo autor durante o curso
de Tecnologia em Sistemas para Internet. O projeto foi uma ótima oportunidade para
integrar estas competências em um único projeto e contribuir para a formação
profissional ajustada às necessidades do mercado de trabalho.
Durante a etapa do projeto, foram levantados os principais requisitos desejados
por este tipo de aplicação para preencher a falta de opções neste nicho de mercado
e cumprir com o objetivo final do projeto: A apresentação de um trabalho
interdisciplinar de desenvolvimento de uma aplicação Web para gestão de orçamentos
na construção civil.
Na implementação, algumas das tecnologias necessárias para a construção da
aplicação Web já eram conhecidas pelo autor, mesmo que não profundamente. Outras
foram estudadas na etapa de implementação, o que tornou o projeto um desafio e
gerou algumas dificuldades.
A escolha do framework Spring Boot se mostrou acertada e proporcionou
agilidade na configuração da aplicação Web. O uso do Thymeleaf, também foi muito
produtivo e simplificou a construção das páginas web. Porém a aplicação web tem
características de Single Page Application (SPA), o que resultou tempo extra de
desenvolvimento de funções em AJAX para obter este comportamento.
Os requisitos fundamentais para que a aplicação funcionasse da forma que foi
idealizada foram cumpridos com sucesso, e a implementação de novas
funcionalidades depende apenas de tempo para desenvolvimento e de demanda dos
usuários.
55
5 CONSIDERAÇÕES FINAIS
REFERÊNCIAS
DEITEL, Paul; DEITEL, Harvey. Java: como programar. São Paulo: Pearson
Prentice Hall, 2010.
GIL, Antônio Carlos. Como elaborar projetos de pesquisa. 5ª ed. São Paulo: Atlas,
2008.
LINDHOLM, Tim et al.: The Java Virtual Machine Specification, Java SE 8 Edition
(2015). Disponível em:
<http://docs.oracle.com/javase/specs/jvms/se8/html/index.html>. Acesso em: 17 de
novembro de 2018.
NEVES, Pedro M. C.; RUAS, Rui P. F. O Guia Prático do MySQL. 1ª Ed. Lisboa:
Centro Atlântico, 2005.
OTTINGER, Joseph B.; LINWOOD, Jeff; MINTER, Dave. Beginning Hibernate: For
Hibernate 5. 4ªed. Nova York - USA: Springer Science, 2016.
Curso Alternativo
Cancelar a operação de voltar ao Dashboard do sistema
Pós-condição
É redirecionada a interface de gerenciamento de composição.
Fonte: Autor (2019)
68