Prévia do material em texto
UNIVERSIDADE PAULISTA
BRUNO ANHEZINI
PIM IV
PIM IV
POLO AMERICANA
2024
BRUNO ANHEZINI
PIM IV
PIM IV
Projeto integrado multidisciplinar apresentado ao
curso de Análise e Desenvolvimento de Sistemas,
área de tecnologia, da UNIVERSIDADE
PAULISTA, como requisito parcial para a
conclusão das disciplinas em Análise e
Desenvolvimento de Sistemas.
Orientador: ANDERSON PASSINI
POLO AMERICANA
2024
RESUMO
Este projeto aborda o desenvolvimento de um software em linguagem C para
a gestão de dados operacionais e financeiros de uma empresa fictícia do setor
ambiental. A iniciativa visa solucionar problemas relacionados à descentralização de
informações e à dificuldade na geração de relatórios confiáveis, fornecendo uma
ferramenta eficiente e segura. O sistema implementado permite o cadastro de
empresas, dados financeiros e indicadores ambientais, bem como a geração e
exportação de relatórios em formatos legíveis, como TXT e CSV.
A metodologia utilizada baseou-se no uso de estruturas de dados organizadas,
manipulação de arquivos e implementação de criptografia simples para proteção de
senhas e dados sensíveis. Durante o desenvolvimento, foi aplicada uma abordagem
modular, garantindo escalabilidade e manutenção facilitada. Testes funcionais e de
segurança validaram a eficácia do sistema, assegurando que todas as
funcionalidades operassem conforme o esperado e em conformidade com a Lei
Geral de Proteção de Dados (LGPD).
Os resultados evidenciaram que o software promoveu a centralização e a
acessibilidade das informações, reduzindo inconsistências e aumentando a
produtividade. O projeto conclui que ferramentas personalizadas são capazes de
atender de maneira mais eficaz às demandas de organizações específicas, ao
mesmo tempo em que aprimoram a governança de dados e a tomada de decisões.
A solução proposta oferece um ambiente digital robusto e seguro, alinhado às
melhores práticas de desenvolvimento e aos requisitos legais.
Palavras-chave: Gestão de dados; Relatórios; Segurança da informação;
Linguagem C; LGPD.
ABSTRACT
This project focuses on the development of software in the C programming
language for managing operational and financial data in a fictitious company within
the environmental sector. The initiative aims to solve issues related to information
decentralization and difficulties in generating reliable reports by providing an efficient
and secure tool. The implemented system enables the registration of companies,
financial data, and environmental indicators, as well as the generation and
exportation of reports in readable formats such as TXT and CSV.
The methodology was based on the use of organized data structures, file
manipulation, and simple encryption to protect passwords and sensitive information.
A modular approach was applied during development, ensuring scalability and ease
of maintenance. Functional and security tests validated the system's effectiveness,
ensuring all features operated as expected and complied with the General Data
Protection Law (LGPD).
The results demonstrated that the software improved data centralization and
accessibility, reducing inconsistencies and increasing productivity. The project
concludes that customized tools can effectively meet the specific demands of
organizations while enhancing data governance and decision-making. The proposed
solution offers a robust and secure digital environment aligned with best development
practices and legal requirements.
Keywords: Data management; Reports; Information security; LGPD; C
programming.
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SUMÁRIO
INTRODUÇÃO 7
DESENVOLVIMENTO 9
Análise do Problema 9
Sistema Proposto 9
Estrutura Funcional 10
Implementação Técnica 10
Detalhamento das Funcionalidades 12
Login e Autenticação 12
Cadastro de Dados 12
Geração de Relatórios 13
Exibição e Navegação 14
Segurança e Conformidade com a LGPD 14
Diagramas do Sistema 15
Diagrama de Caso de Uso 15
Diagrama de Atividades 16
Plano de Testes 19
Interfaces do Sistema 21
Manual do Usuário 21
Manual de Instalação 22
Guia de Compilação e Testes 23
Compilação do Programa 23
Execução do Programa 24
Testes Funcionais 24
Relatórios de Testes 25
CONCLUSÃO 26
REFERÊNCIAS 28
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LISTA DE ILUSTRAÇÕES
Diagrama 1 — Diagrama de Caso de Uso 16
Diagrama 2 — Diagrama de Atividades18
Tabela 1 — Plano de Testes 19
Figura 1 — Menus do Sistema 21
LISTA DE ABREVIATURAS E SIGLAS
ABNT Associação Brasileira de Normas Técnicas
LGPD Lei Geral de Proteção de Dados
CSV Comma-Separated Values
TXT Texto
GCC GNU Compiler Collection
IDE Integrated Development Environment
BI Business Intelligence
1 INTRODUÇÃO
O gerenciamento eficiente de dados tornou-se um fator estratégico para
organizações modernas, especialmente aquelas inseridas em setores complexos,
como o ambiental. A crescente necessidade de acessar e organizar informações de
maneira confiável e segura reflete a importância de ferramentas tecnológicas que
apoiem a tomada de decisões. Neste contexto, o presente trabalho propõe o
desenvolvimento de um software voltado para a centralização, controle e proteção
de dados operacionais e financeiros.
A ausência de uma solução integrada para o gerenciamento dessas
informações representa um obstáculo significativo para empresas que buscam
melhorar sua eficiência. Dados armazenados de forma descentralizada,
inconsistências em relatórios e o não cumprimento de legislações, como a Lei Geral
de Proteção de Dados (LGPD), são alguns dos problemas enfrentados. Tais
dificuldades não apenas comprometem a produtividade, mas também impactam
negativamente a capacidade de adaptação e competitividade das organizações.
Este estudo parte da hipótese de que um sistema informatizado e
personalizado, desenvolvido em linguagem C, pode atender de forma mais eficaz às
necessidades específicas de gerenciamento de dados, ao mesmo tempo em que
promove segurança e conformidade com normas legais. A escolha pela linguagem C
se justifica por sua eficiência e controle sobre os recursos computacionais, tornando-
a ideal para aplicações robustas e otimizadas.
A metodologia utilizada no desenvolvimento do projeto envolveu a aplicação
de conceitos fundamentais de programação, como manipulação de arquivos,
estruturas de dados e técnicas de validação de entradas. Adicionalmente, foram
realizados testes funcionais e de segurança para garantir que as funcionalidades
operassem de forma correta e em conformidade com os requisitos do sistema.
O objetivo principal do trabalho é criar uma solução que centralize
informações, facilite o acesso a relatórios e proteja dados sensíveis. Para isso, o
sistema implementa funcionalidades como cadastro de empresas, geração de
relatórios financeiros e ambientais, e exportação de dados em formatos compatíveis
com análises externas. Além disso, mecanismos de autenticação e criptografia
garantem a segurança das informações manipuladas.
A relevância deste tema se evidencia na crescente dependência das
7
empresas por sistemas informatizados que otimizem seus processos internos e
reduzam custos operacionais. A capacidade de gerar relatórios confiáveis e proteger
informações sensíveis são requisitos fundamentais para organizações que buscam
se manter competitivas em um mercado dinâmico e regulamentado.
Por fim, o trabalho busca contribuir para a discussão sobre a adoção de
tecnologias acessíveis e personalizáveis no contexto corporativo, demonstrando
como um sistema simples, porém eficaz, pode atender às demandas de empresas
de pequeno e médio porte. A abordagem utilizada não apenas visa solucionar
problemas específicos, mas também promover boas práticas no desenvolvimento de
sistemas informatizados.
8
2 DESENVOLVIMENTO
2.1 Análise do Problema
No contexto atual, empresas do setor ambiental enfrentam desafios
crescentes relacionados ao gerenciamento de dados operacionais e financeiros.
Esses dados, fundamentais para a tomada de decisões estratégicas, muitas vezes
são armazenados de forma descentralizada e sem critérios padronizados,
dificultando o acesso, a análise e a geração de relatórios confiáveis.
A startup fictícia, especializada no desenvolvimento de soluções ambientais,
não dispõe de um sistema informatizado capaz de organizar e processar essas
informações de forma eficiente. A falta de uma ferramenta apropriada resulta em
perda de produtividade, inconsistências nos relatórios e dificuldades no cumprimento
de normas de proteção de dados, como a Lei Geral de Proteção de Dados (LGPD).
O problema identificado neste trabalho é a ausência de uma solução
tecnológica integrada para gerenciar dados de forma segura, organizada e eficiente.
A proposta, portanto, é desenvolver um software em linguagem C que permita o
cadastro de dados essenciais, a geração de relatórios financeiros e ambientais e a
exportação dessas informações em formatos legíveis. O sistema deve ainda atender
aos requisitos de segurança e conformidade, protegendo dados sensíveis contra
acessos não autorizados.
Essa solução visa não apenas otimizar os processos internos, mas também
aumentar a confiabilidade e a acessibilidade das informações para os tomadores de
decisão. O projeto parte do princípio de que uma ferramenta personalizada é capaz
de atender de forma mais eficaz às demandas específicas da empresa, ao mesmo
tempo em que reduz custos operacionais e melhora a competitividade no mercado.
2.2 Sistema Proposto
A proposta deste projeto é o desenvolvimento de um software em linguagem
C que automatize o gerenciamento de dados operacionais e financeiros da startup
do setor ambiental. O sistema foi projetado para ser funcional, seguro e alinhado às
demandas específicas da empresa, utilizando recursos de entrada/saída de dados e
estruturas organizadas que garantem desempenho e simplicidade.
9
2.2.1 Estrutura Funcional
O software foi estruturado com base em funcionalidades que atendem às
principais necessidades da empresa, contemplando as seguintes operações:
Login e Autenticação
Permite que os usuários acessem o sistema com credenciais individuais.
Utiliza validação de usuário e senha para restringir acessos não
autorizados.
Cadastro de Dados:
Possibilita o registro de informações fundamentais, como:
Empresas: Nome, CNPJ, endereço e tipo de atividade.
Relatórios financeiros: Receitas e despesas relacionadas às atividades
ambientais.
Relatórios ambientais: Indicadores específicos sobre a atuação da
empresa no setor.
Geração de Relatórios:
Criação de relatórios operacionais e financeiros em formatos TXT e CSV,
permitindo a exportação de dados para análises externas.
Exibição e Navegação:
Interface baseada em terminal que facilita a navegação entre as
funcionalidades do sistema.
Segurança e Proteção de Dados:
Implementação de criptografia simples para armazenamento seguro de
senhas e informações sensíveis.
2.2.2 Implementação Técnica
A implementação do software utiliza os seguintes conceitos e técnicas da
linguagem C:
Manipulação de Arquivos:
As funções fopen, fprintf, fscanf e fclose são utilizadas para criar, ler e
atualizar arquivos no formato TXT e CSV.
10
Exemplos:
Arquivo de usuários (usuarios.txt) para armazenar credenciais.
Arquivo de relatórios (relatorios.csv) para exportar dados.
Estruturas de Dados:
Utilização de structs para organizar informações relacionadas às empresas e
relatórios.
typedef struct {
char nome[50];
char cnpj[20];
char endereco[100];
char tipo_atividade[30];
} Empresa;
typedef struct {
float receita;
float despesa;
char descricao[100];
} RelatorioFinanceiro;
Menus e Navegação:
Menu principal e submenus para acessar as funcionalidades, utilizando switch
e laços de repetição (while) para garantir uma navegação intuitiva.
Validações e Tratamento de Erros:
Inclusão de validações, como:
Verificação de campos obrigatórios.
Tratamento de entradas inválidas.
Criptografia Simples:
Armazenamento seguro de senhas utilizando técnicas básicas de hash, como
somatório de caracteres ASCII, com possibilidade de melhorias em versões futuras.
Interação com o Usuário:
Uso de printf e scanf para interação com o terminal, facilitando a entrada e
exibição de dados.
11
2.3 Detalhamento das Funcionalidades
As funcionalidades implementadasno software foram projetadas para atender
às necessidades de gerenciamento de dados em empresas que demandam
soluções eficientes e seguras. A seguir, são descritos os principais módulos,
destacando seus objetivos, fluxos operacionais e benefícios.
2.3.1 Login e Autenticação
O módulo de login e autenticação controla o acesso ao sistema, garantindo
que apenas usuários autorizados possam utilizá-lo. Ele inclui:
Cadastro de Usuários: Permite que um administrador registre novos
usuários com nome, login e senha.
Validação de Credenciais: O sistema verifica os dados de login e senha
inseridos pelo usuário, comparando-os com os registros armazenados em
arquivo.
Mensagens de Feedback: Mensagens informativas são exibidas em caso
de erro, como "Usuário não encontrado" ou "Senha incorreta".
Armazenamento Seguro de Senhas: As senhas são armazenadas de
forma criptografada, dificultando acessos não autorizados.
Fluxo Operacional:
1. O usuário insere suas credenciais no terminal.
2. O sistema valida os dados comparando-os com o arquivo de registros.
3. Em caso de validação bem-sucedida, o acesso ao menu principal é
liberado; caso contrário, uma nova tentativa é solicitada.
2.3.2 Cadastro de Dados
O cadastro de informações essenciais é realizado através de submódulos
específicos, voltados para empresas, dados financeiros e relatórios ambientais.
Cadastro de Empresas:
Campos obrigatórios incluem nome, CNPJ, endereço e tipo de atividade.
Os dados são armazenados em um arquivo de texto para facilitar a
consulta e o gerenciamento.
O sistema valida o CNPJ para evitar duplicações.
12
Cadastro de Relatórios Financeiros:
Campos como receita, despesa e descrição do relatório são preenchidos.
As informações são registradas em arquivos no formato CSV para permitir
análises futuras.
Cadastro de Relatórios Ambientais:
Indicadores ambientais, como emissões de carbono e consumo energético,
podem ser registrados de acordo com as necessidades específicas da
empresa.
Os dados são organizados para possibilitar geração de relatórios
segmentados.
Benefícios:
1. Centralização das informações para facilitar a consulta e a atualização.
2. Organização dos registros em arquivos legíveis e padronizados.
2.3.3 Geração de Relatórios
A funcionalidade de geração de relatórios permite que os dados cadastrados
sejam processados e exportados de forma estruturada. Os principais recursos
incluem:
Tipos de Relatórios:
Individuais: Relatórios específicos de uma empresa ou de um determinado
registro.
Globais: Consolidam informações de múltiplas entradas, permitindo uma
visão ampla.
Exportação em TXT e CSV:
Formato TXT: Relatórios para leitura em ambiente de terminal.
Formato CSV: Ideal para análises externas em planilhas e sistemas de BI
(Business Intelligence).
Fluxo Operacional:
1. O usuário seleciona o tipo de relatório desejado.
2. O sistema processa as informações armazenadas nos arquivos.
3. O relatório é gerado e salvo automaticamente no diretório do sistema.
13
2.3.4 Exibição e Navegação
A interface do sistema foi projetada para ser simples e eficiente, com base em
menus e submenus que permitem fácil navegação.
Menu Principal: Acesso às funcionalidades centrais, como login, cadastro
e relatórios.
Submenus: Categorizados para organizar as operações, como registro de
empresas ou geração de relatórios.
Interatividade:
Mensagens claras confirmam a execução das operações ou indicam
eventuais erros.
Opções de retorno garantem flexibilidade e controle ao usuário durante a
navegação.
Essas funcionalidades foram desenvolvidas para oferecer uma solução
prática, segura e escalável, atendendo às demandas de gerenciamento de dados de
empresas que necessitam de maior controle e eficiência em suas operações.
2.4 Segurança e Conformidade com a LGPD
A segurança da informação foi um dos pilares fundamentais no
desenvolvimento do sistema, especialmente em um contexto onde dados sensíveis
são manipulados diariamente. Para proteger as informações, as senhas foram
armazenadas utilizando criptografia de hash, garantindo que mesmo em caso de
acesso indevido aos arquivos, as credenciais não possam ser lidas ou utilizadas.
O controle de acesso foi implementado para restringir as funcionalidades
apenas a usuários autenticados, com níveis diferenciados de permissões para
administradores e usuários regulares. Além disso, a validação de dados foi aplicada
em campos como CNPJ e registros financeiros, assegurando a consistência das
informações cadastradas. Os relatórios exportados são armazenados em diretórios
controlados, protegendo os dados contra acessos não autorizados.
O alinhamento à LGPD foi incorporado desde o início, respeitando princípios
como finalidade e necessidade, ao coletar apenas informações essenciais para o
funcionamento do sistema. Medidas de segurança técnica e organizacional foram
implementadas para evitar vazamentos e acessos indevidos. A transparência foi
14
assegurada ao permitir que administradores revisem e corrijam dados, garantindo
controle e conformidade com a legislação.
Essas medidas reforçam o compromisso do sistema com a proteção de dados
e a conformidade legal, criando um ambiente seguro e confiável para a operação e o
gerenciamento das informações.
2.5 Diagramas do Sistema
Os diagramas de software foram elaborados para representar as principais
interações e fluxos do sistema, proporcionando uma visão clara de sua estrutura e
funcionamento. A seguir, são apresentados o diagrama de caso de uso e o diagrama
de atividades, que detalham as operações e as interações dos usuários com o
sistema.
2.5.1 Diagrama de Caso de Uso
O diagrama de caso de uso ilustra as funcionalidades disponíveis para os
usuários e as interações que cada tipo de usuário pode realizar. O sistema
apresenta dois perfis principais: o administrador e o usuário regular.
Administrador:
Cadastrar novos usuários.
Gerenciar empresas e relatórios.
Visualizar e exportar dados completos.
Usuário Regular:
Acessar o sistema por meio de login.
Consultar relatórios específicos.
Exportar dados de interesse.
15
Diagrama 1 — Diagrama de Caso de Uso
Fonte: O autor (2024).
2.5.2 Diagrama de Atividades
O diagrama de atividades apresenta o fluxo operacional das principais
funcionalidades, como login, cadastro de empresas e geração de relatórios. Cada
atividade foi detalhada para ilustrar as etapas necessárias, desde a entrada dos
dados até a execução final.
Fluxo do Login:
1. O usuário insere suas credenciais.
2. O sistema valida os dados.
3. Em caso de sucesso, o acesso ao menu principal é liberado; em caso de
erro, o sistema exibe uma mensagem e solicita nova tentativa.
Fluxo de Cadastro de Dados:
1. O usuário preenche os campos obrigatórios (nome, CNPJ, etc.).
2. O sistema verifica a validade dos dados.
3. As informações são salvas no arquivo correspondente.
Fluxo de Geração de Relatórios:
1. O usuário seleciona o tipo de relatório desejado.
2. O sistema processa os dados e organiza as informações.
16
3. O arquivo é gerado e salvo no formato especificado (TXT ou CSV).
17
Diagrama 2 — Diagrama de Atividades
Fonte: O autor (2024).
18
(continua)
2.6 Plano de Testes
O plano de testes foi elaborado para garantir que todas as funcionalidades do
sistema funcionassem corretamente e atendessem aos requisitos definidos. Foram
realizados testes funcionais, de segurança e de integração, cobrindo os principais
módulos do software. A seguir, são apresentados os casos de teste e seus
respectivos resultados.
O objetivo do plano foi validar:
A funcionalidade de login e autenticação.
O correto registro e armazenamento de dados.
A precisão e a organização na geração de relatórios.
A segurança dos dados armazenados.
A integridade das interações entre os módulos do sistema.
Tabela 1 — Plano de Testes
Identificação Descrição Cenário
Critérios de
Sucesso
Resultado
Teste de Login
e Autenticação
Validar seo
sistema aceita
apenas usuários
cadastrados e
exibe mensagens
adequadas para
credenciais
inválidas.
Usuário insere
login e senha.
Acesso permitido
apenas com
credenciais
corretas;
mensagem de
erro em caso de
falha.
Teste bem-
sucedido; o
sistema validou
corretamente as
credenciais.
Teste de
Cadastro de
Empresas
Verificar se os
campos
obrigatórios (nome,
CNPJ, endereço)
são validados
corretamente e se
os dados são
salvos no arquivo.
Usuário preenche
o formulário de
cadastro e
confirma.
Dados válidos
salvos; duplicação
de CNPJ evitada.
Teste bem-
sucedido; o
sistema
registrou e
validou os
dados
corretamente.
Teste de
Geração de
Relatórios
Avaliar se os
relatórios são
gerados nos
formatos
Usuário seleciona
um relatório para
exportação.
Arquivo gerado
com todos os
dados previstos,
sem erros de
Teste bem-
sucedido; os
relatórios foram
gerados
19
(conclusão)Tabela 1 — Plano de Testes
Identificação Descrição Cenário
Critérios de
Sucesso
Resultado
especificados
(TXT e CSV) e
contêm as
informações
corretas.
formatação. corretamente.
Teste de
Validação de
Dados
Garantir que
entradas inválidas,
como CNPJs
incorretos ou
campos vazios,
sejam rejeitadas.
Usuário tenta
cadastrar dados
incorretos.
Mensagem de
erro exibida;
dados não salvos.
Teste bem-
sucedido; o
sistema
bloqueou
entradas
inválidas.
Teste de
Segurança
Validar se as
senhas
armazenadas não
podem ser lidas
diretamente dos
arquivos.
Acesso aos
arquivos de
armazenamento.
Senhas
criptografadas;
impossibilidade de
leitura direta.
Teste bem-
sucedido;
senhas
protegidas por
criptografia.
Fonte: O autor (2024).
Os testes realizados confirmaram que o sistema atende aos requisitos
funcionais e de segurança definidos no projeto. Todas as funcionalidades operaram
conforme esperado, e não foram encontrados problemas críticos. Algumas melhorias
podem ser implementadas, como a inclusão de logs mais detalhados para auditoria
e maior robustez na validação de entradas.
20
2.7 Interfaces do Sistema
Figura 1 — Menus do Sistema
Fonte: O autor (2024).
2.8 Manual do Usuário
O manual do usuário fornece orientações claras e diretas para operar o
sistema, abrangendo desde o acesso inicial até a geração de relatórios. Ao iniciar o
programa, o usuário será recebido pela tela de login, onde deve inserir suas
credenciais previamente cadastradas. Caso as informações estejam corretas, o
acesso ao menu principal será liberado; caso contrário, o sistema exibirá mensagens
de erro, como "Usuário não encontrado" ou "Senha incorreta". Em situações de
perda de senha, será necessário solicitar suporte ao administrador do sistema para
a redefinição de acesso.
No menu principal, as opções disponíveis incluem o cadastro de empresas,
relatórios financeiros ou ambientais, a geração de relatórios e a gestão de usuários
(disponível apenas para administradores). Para registrar uma nova empresa, o
usuário deve selecionar a opção correspondente, inserir os dados obrigatórios, como
nome, CNPJ, endereço e tipo de atividade, e confirmar. O sistema validará as
informações, armazenando-as no arquivo de empresas.
21
Da mesma forma, o cadastro de relatórios permite ao usuário escolher entre
relatórios financeiros e ambientais. Após a escolha, são solicitadas informações
específicas, como receita, despesa e descrição (para relatórios financeiros), ou
indicadores ambientais relevantes. Esses dados, uma vez confirmados, são salvos
em arquivos organizados, facilitando sua consulta futura.
A geração de relatórios é outra funcionalidade central do sistema. Para
acessá-la, o usuário deve selecionar a opção correspondente no menu principal e
indicar o tipo de relatório desejado: individual (dados específicos de uma empresa
ou relatório) ou global (consolidado). O formato de saída, TXT ou CSV, deve ser
escolhido antes de confirmar a operação. O sistema processará os dados e salvará
o arquivo no diretório padrão.
O sistema também fornece mensagens de feedback durante as operações
para orientar o usuário, indicando o sucesso ou a necessidade de correção de
dados. Mensagens como "Cadastro concluído com sucesso" ou "CNPJ inválido,
tente novamente" garantem uma interação clara e eficiente.
Este manual foi concebido para facilitar o uso do sistema tanto para
administradores quanto para usuários regulares, assegurando que todas as
funcionalidades possam ser acessadas e exploradas sem dificuldades.
2.9 Manual de Instalação
A instalação do sistema foi projetada para ser simples e acessível, garantindo
que qualquer usuário com conhecimentos básicos de tecnologia possa configurar e
executar o programa em um ambiente adequado. A seguir, são descritos os passos
necessários para a instalação e configuração.
O primeiro passo consiste na preparação do ambiente. É necessário um
computador com um sistema operacional compatível, como Windows, Linux ou
macOS, além de um compilador para a linguagem C, como o GCC (GNU Compiler
Collection). Recomenda-se instalar um editor de texto ou uma IDE, como Visual
Studio Code, para facilitar a edição e execução do código.
Com o ambiente preparado, o próximo passo é obter os arquivos do
programa. Estes podem ser transferidos de um repositório de código ou fornecidos
diretamente. O diretório principal deve conter todos os arquivos do sistema, incluindo
22
o código-fonte (main.c) e arquivos auxiliares, como cabeçalhos e arquivos de
exemplo (usuarios.txt, empresas.txt e relatorios.csv).
A compilação do programa é realizada no terminal ou no ambiente de
desenvolvimento configurado. No caso do GCC, o comando para compilar o
programa é "gcc main.c -o sistema".
Esse comando gera o executável sistema, que pode ser executado
diretamente. No Windows, é necessário abrir o terminal no diretório onde o código-
fonte está localizado antes de executar o comando.
Após a compilação, o programa está pronto para ser utilizado. Antes de
iniciar, recomenda-se criar os arquivos de texto necessários para armazenar os
dados do sistema. Esses arquivos incluem usuarios.txt, onde as credenciais dos
usuários serão salvas, empresas.txt, para os dados cadastrais, e relatorios.csv, que
armazenará os relatórios exportados.
Por fim, a execução do programa pode ser feita chamando o executável
gerado. No terminal, o comando seria "./sistema".
No Windows, a execução é realizada clicando diretamente no arquivo gerado
ou pelo terminal, utilizando o comando acima.
2.10 Guia de Compilação e Testes
A compilação e os testes do programa são etapas fundamentais para garantir
que o sistema funcione corretamente e atenda aos requisitos definidos durante o
desenvolvimento. A seguir, é descrito o processo detalhado para compilar o código-
fonte e validar suas funcionalidades.
2.10.1 Compilação do Programa
A compilação do código-fonte do sistema é realizada utilizando o compilador
GCC (GNU Compiler Collection), amplamente disponível em sistemas operacionais
como Windows, Linux e macOS. O processo é o seguinte:
1. Certifique-se de que os arquivos do programa, incluindo main.c e quaisquer
bibliotecas adicionais, estejam organizados em um único diretório.
2. Abra o terminal ou prompt de comando no diretório onde os arquivos estão
23
localizados.
3. Execute o comando abaixo para compilar o código-fonte e gerar o arquivo
executável: "gcc main.c -o sistema". Esse comando indica ao GCC que o
arquivo principal é main.c e que o programa compilado deve ser salvo como
sistema.
4. Caso a compilação seja bem-sucedida, o executável estará disponível no
mesmo diretório. Caso ocorra algum erro, revise o código para identificar
problemas de sintaxe ou dependências ausentes.
5. Para compilar em sistemas Windows, o compilador MinGW pode ser usado
como alternativa, seguindo o mesmo comando.
2.10.2 Execução do Programa
Após a compilação, o programa pode ser executado diretamente pelo
terminal. No Linux ou macOS, use o comando "./sistema".No Windows, a execução pode ser feita clicando duas vezes no arquivo
executável gerado ou utilizando o comando "sistema.exe".
Ao iniciar, o programa apresentará a tela de login, onde será possível
começar a interação com o sistema.
2.10.3 Testes Funcionais
Os testes funcionais garantem que cada módulo do sistema opere conforme
esperado. A seguir, são descritos os testes recomendados:
Login
Teste o acesso com credenciais válidas.
Verifique se o sistema bloqueia logins inválidos e exibe mensagens
adequadas.
Cadastro
Realize cadastros de empresas e relatórios, verificando se os dados são
armazenados corretamente nos arquivos empresas.txt e relatorios.csv.
Geração de Relatórios
Gere relatórios individuais e globais em formatos TXT e CSV. Abra os
arquivos gerados para verificar a precisão e a organização das informações.
24
Testes de Segurança
Proteção de Senhas: Verifique se as senhas armazenadas em usuarios.txt
estão criptografadas, impedindo sua leitura direta.
Validação de Dados: Insira dados inválidos, como um CNPJ incompleto, e
confirme se o sistema exibe mensagens de erro e impede o cadastro.
2.10.4 Relatórios de Testes
Registre os resultados dos testes em um relatório, indicando quais
funcionalidades foram validadas com sucesso e quais necessitam de ajustes. Esse
processo assegura a documentação do sistema e facilita futuras manutenções.
25
3 CONCLUSÃO
O presente trabalho teve como objetivo principal o desenvolvimento de um
software em linguagem C para gerenciar dados operacionais e financeiros de uma
empresa fictícia do setor ambiental. A proposta partiu da identificação de problemas
relacionados à descentralização de informações e à dificuldade na geração de
relatórios confiáveis, aspectos que impactavam negativamente a eficiência e a
competitividade organizacional.
Ao longo do estudo, foi possível demonstrar que a criação de um sistema
informatizado e personalizado não apenas resolve essas dificuldades, mas também
agrega valor ao processo de tomada de decisão. O sistema desenvolvido inclui
funcionalidades como cadastro de empresas, geração de relatórios financeiros e
ambientais, exportação de dados e autenticação segura. A centralização e a
organização das informações contribuíram para maior produtividade e confiabilidade
dos dados, aspectos essenciais para empresas que lidam com grandes volumes de
informações sensíveis.
A metodologia aplicada se mostrou eficaz, combinando princípios de
programação estruturada com técnicas de validação e testes rigorosos. O uso de
estruturas de dados otimizadas, manipulação de arquivos e criptografia simples
garantiu o cumprimento dos requisitos funcionais e de segurança. Os testes
realizados validaram o desempenho do sistema, confirmando sua capacidade de
atender às demandas propostas de maneira eficiente.
No contexto do problema de pesquisa, o sistema respondeu de forma
afirmativa à questão sobre a viabilidade de criar uma solução tecnológica integrada
e segura. Além disso, o software demonstrou potencial de adaptação para cenários
corporativos reais, reforçando a relevância de ferramentas acessíveis e
personalizadas para o gerenciamento de dados em organizações de pequeno e
médio porte.
Por fim, como sugestão de continuidade, destaca-se a possibilidade de
expandir o sistema para incluir integração com bancos de dados relacionais,
permitindo maior escalabilidade e flexibilidade na análise de informações. Além
disso, melhorias no algoritmo de criptografia e a inclusão de relatórios gráficos
podem aumentar ainda mais a usabilidade e o valor agregado do sistema. Este
trabalho reforça a importância de unir tecnologia e gestão de dados para promover
26
eficiência e inovação no ambiente corporativo.
27
REFERÊNCIAS
LGPD. Presidência da República. Lei n. 13709, de 13 de agosto de 2018. Diário
Oficial da União. Disponível em: https://www.planalto.gov.br/ccivil_03/_Ato2015-
2018/2018/Lei/L13709.htm#ementa. Acesso em: 20 nov. 2024.
28