sistema de gerenciamento da produÇÂo rural · durante o desenvolvimento do sistema foi utilizado...
TRANSCRIPT
FRANCISCO PAULO PATTA GRANADO
SISTEMA DE GERENCIAMENTO DA PRODUÇÂO RURAL
ASSIS
2013
FRANCISCO PAULO PATTA GRANADO
SISTEMA DE GERENCIAMENTO DA PRODUÇÃO RURAL
Trabalho de Conclusão de Curso, apresentado ao Instituto
Municipal de Ensino Superior de Assis, como requisito do
Curso de Graduação.
Orientador: Prof. DOMINGOS DE CARVALHO VILLELA JUNIOR
Área de Concentração: Informática
ASSIS
2013
FICHA CATALOGRÁFICA
PATTA GRANADO, Francisco Paulo.
Sistema de Gerenciamento da Produção Rural / Francisco Paulo Patta Granado. FEMA –
Fundação Educacional do Município de Assis – Assis, 2013.
Orientador: Prof. DOMINGOS DE CARVALHO VILLELA JÚNIOR
Trabalho de Conclusão de Curso – Instituto Municipal de Ensino Superior de Assis
1. Sistema de Gerenciamento. 2. Produção Rural.
CDD:001.61
Biblioteca
SISTEMA DE GERENCIAMENTO DA PRODUÇÃO RURAL
FRANCISCO PAULO PATTA GRANADO
Trabalho de Conclusão de Curso apresentado ao Instituto
Municipal de Ensino Superior de Assis, como requisito do
Curso de Graduação analisado pela seguinte comissão
examinadora:
Orientador: Prof. DOMINGOS DE CARVALHO VILLELA JUNIOR
Analisador (1): Dr. OSMAR APARECIDO MACHADO
ASSIS
2013
RESUMO
Mesmo com o amplo desenvolvimento no setor agrícola na atualidade, ainda encontramos a
carência de softwares de gerenciamento que possam abranger esta área, pois são poucos os
existentes, que se tornam inviáveis aos pequenos e médios produtores, por terem alto custo
comercial. Surgiu então desta necessidade, a ideia de produzir um sistema de baixo custo com
fácil manuseio.
Para esse trabalho de conclusão de curso foi desenvolvido um sistema para o gerenciamento
das atividades realizadas na produção, como a correção de solo, o plantio, a aplicação de
insumos e a colheita, fornecendo ao final um relatório de gastos investidos pelo produtor.
Durante o desenvolvimento do sistema foi utilizado a linguagem Java com a plataforma
NetBeans 7.2.1, e o MySql como Banco de Dados.
Palavra chave: Sistema de Gerenciamento; Produção Rural.
ABSTRACT
Even with the broad development in agriculture today, we still find the lack of management
software that can cover this area because there are few existing, which become unviable for
small and medium producers, because they have high commercial value. Then came this need,
idea of producing a low-cost system with easy handling.
For this work of completion, a system for managing the activities performed in production,
such as soil improvement, planting, and crop input application was developed, providing a
report at the end of capital expenditure by the producer.
During the development of the Java language system was used with the platform NetBeans
7.2.1, and MySQL as Database.
Keywords: Management System; Rural Production.
LISTA DE ILUSTRAÇÕES
Figura 1: Caso de Uso do Sistema..................................................................................... 23
Figura 2: UC Manter Usuário............................................................................................. 24
Figura 3: Descrição da UC Manter Usuário....................................................................... 24
Figura 4: UC Manter Talhão. ............................................................................................ 25
Figura 5: Descrição da UC Manter Talhão........................................................................ 25
Figura 6: UC Manter Safra................................................................................................. 26
Figura 7: Descrição da UC Manter Safra........................................................................... 26
Figura 8: UC Manter Funcionário...................................................................................... 27
Figura 9: Descrição da UC Manter Funcionário................................................................ 27
Figura 10: UC Manter Produto........................................................................................... 28
Figura 11: Descrição da UC Manter Produto..................................................................... 28
Figura 12: UC Manter Produção........................................................................................ 29
Figura 13: Descrição da UC Manter Produção.................................................................. 29
Figura 14: UC Manter Fornecedor..................................................................................... 30
Figura 15: Descrição da UC Manter Fornecedor............................................................... 30
Figura 16: UC Manter Atividade....................................................................................... 31
Figura 17: Descrição da UC Manter Atividade.................................................................. 32
Figura 18: UC Efetuar Compra......................................................................................... 33
Figura 19: Descrição da UC Efetuar Compra.................................................................... 33
Figura 20: UC Gerar Histórico de Compra........................................................................ 34
Figura 21: Descrição da UC Gerar Histórico de Compra.................................................. 34
Figura 22: Descrição da UC Gerar Relatório de Custo da Atividade................................ 35
Figura 23: Descrição da UC Gerar Relatório de Custo da Atividade................................ 35
Figura 24: UC Gerar Relatório de Produção...................................................................... 36
Figura 25: Descrição da UC Gerar Relatório de Produção................................................ 36
Figura 26: UC Gerar Relatório de Produto........................................................................ 37
Figura 27: Descrição da UC Gerar Relatório de Produto................................................... 37
Figura 28: DS Editar Usuário............................................................................................. 38
Figura 29: DS Cadastrar Talhão......................................................................................... 39
Figura 30: DS Editar Talhão.............................................................................................. 39
Figura 31: DS Inativar Talhão............................................................................................ 40
Figura 32: DS Cadastrar Funcionário................................................................................. 40
Figura 33: DS Editar Funcionário...................................................................................... 41
Figura 34: DS Inativar Funcionário................................................................................... 41
Figura 35: DS Cadastrar Fornecedor.................................................................................. 42
Figura 36: DS Editar Fornecedor....................................................................................... 42
Figura 37: DS Inativar Fornecedor..................................................................................... 43
Figura 38: DS Cadastrar Maquinário................................................................................. 43
Figura 39: DS Editar Maquinário....................................................................................... 44
Figura 40: DS Inativar Maquinário.................................................................................... 44
Figura 41: DS Cadastrar Safra........................................................................................... 45
Figura 42: DS Editar Safra................................................................................................. 45
Figura 43: DS Cadastrar Produto....................................................................................... 46
Figura 44: DS Editar Produto............................................................................................. 46
Figura 45: DS Cadastrar Produção..................................................................................... 47
Figura 46: DS Editar Produção.......................................................................................... 47
Figura 47: DS Efetuar Compra........................................................................................... 48
Figura 48: DS Iniciar Atividade......................................................................................... 49
Figura 49: DS Editar Atividade.......................................................................................... 50
Figura 50: DS Encerrar Atividade...................................................................................... 50
Figura 51: DS Gerar Histórico de Compra......................................................................... 51
Figura 52: DS Gerar Relatório de Custo da Atividade....................................................... 51
Figura 53: DS Gerar Relatório de Produção...................................................................... 52
Figura 54: DS Gerar Relatório de Produto......................................................................... 52
Figura 55: Diagrama de Classe do Sistema........................................................................ 53
Figura 56: Diagrama ER do Sistema.................................................................................. 54
Figura 57: Camada Model.................................................................................................. 56
Figura 58: Modelo Atividade.java..................................................................................... 56
Figura 59: Camada Controller............................................................................................ 57
Figura 60: Controller AtividadeJpaController.java............................................................ 58
Figura 61: Camada View.................................................................................................... 59
Figura 62: View AtividadeMB.java................................................................................... 59
Figura 63: Cronograma....................................................................................................... 60
LISTA DE ABREVIATURAS E SIGLAS
DC Diagrama de Classes
DS Diagrama de Sequência
ER Entidade Relacionamento
HTML Hyper Text Markup Language
IDE Integrated Development Environment
JSF Java Server Faces
JVM Java Virtual Machine
POO Programação Orientada a Objetos
SQL Structured Query Language
UC Use Case
XML Extensible Markup Language
WBS Work Breakdown Structure
SUMÁRIO
1 INTRODUÇÃO.......................................................................................... 13
1.1 OBJETIVOS....................................................................................................... 14
1.2 PÚBLICO ALVO............................................................................................... 14
1.3 JUSTIFICATIVA............................................................................................... 15
2 MÉTODOS DE DESENVOLVIMENTO................................................. 16
2.1 METODOLOGIA DE ANÁLISE....................................................................... 16
2.2 JAVA.................................................................................................................. 17
2.3 NETBEANS........................................................................................................ 18
2.4 JAVA SERVER FACES..................................................................................... 19
2.5 PRIMEFACES.................................................................................................... 19
2.6 MYSQL............................................................................................................... 20
3 ESTRUTURA DE DESENVOLVIMENTO GERAL DO SISTEMA... 21
3.1 UML ................................................................................................................... 21
3.2 LEVANTAMENTO E ANÁLISE DE REQUISITOS....................................... 21
3.3 DIAGRAMA DE CASO DE USO..................................................................... 22
3.4 DIAGRAMA DE SEQUÊNCIA......................................................................... 36
3.5 DIAGRAMA DE CLASSES.............................................................................. 53
3.6 DIAGRAMA ENTIDADE RELACIONAMENTO........................................... 54
4 IMPLEMENTAÇÃO....................................................................................... 55
4.1 ORGANIZAÇÃO DO PROJETO................................................................. 55
4.1.2 MVC........................................................................................................... 55
5 CRONOGRAMA........................................................................................ 60
6 CONCLUSÃO............................................................................................. 61
7 REFERENCIAS.......................................................................................... 62
13
1. INTRODUÇÃO
O setor agrícola é um dos grandes responsáveis pelo crescimento do país, exportando grandes
quantidades de produtos para o mundo todo, o que gera milhares de empregos que preenchem
a demanda excedente das indústrias por exemplo. No entanto é uma área que apresenta grande
escassez na questão de softwares que ofereçam aos produtores agrícolas sistemas de
gerenciamento e auxilio na tomada de decisões.
Não existe no mercado uma quantidade significativa de opções de softwares que sejam
voltados para a agricultura, e os poucos existentes não atendem em sua totalidade as
necessidades apresentadas pela rotina diária do produtor no campo. O agronegócio vem
apresentando um crescimento exponencial a cada ano, gerando assim maiores gastos ao
produtor agrícola, o que acaba resultando em maiores desperdícios na produção por não haver
um controle preciso. Vimos então após análise destes fatores, a necessidade da criação de um
sistema de gerenciamento gastos e produção, com o intuito de auxiliá-lo nas tomadas de
decisões.
Tornando assim o desenvolvimento de um sistema voltado para o agronegócio de grande
importância para o produtor agrícola, tendo em vista que muitos vêm expandindo cada vez
mais sua área de atuação, surgindo à necessidade de um sistema de gerenciamento torna-se
imprescindível no auxílio de tomada de decisões, pois dará a precisão exata ao produtor de
todos os gastos com força de trabalho ferramental e humana.
Após consultar diversos produtores agrícolas foi possível constatar que a maioria não dispõe
de softwares de gerenciamento de produção e de gastos, tudo ainda é feito como faziam
nossos avós, através de anotações em cadernos. Isso infelizmente acarreta perca de tempo,
possibilitando uma margem de erros maior, o que resulta em maiores gastos ao final da safra.
De início, o objetivo deste sistema é atender aos produtores de pequeno e médio porte que
atuem com as culturas de soja e milho.
14
1.1. OBJETIVO
Com o aumento das áreas cultivadas pelos produtores rurais os gastos também aumentam. O
sistema terá como objetivo geral controlar as atividades realizadas na produção e controlar as
despesas com maior precisão. Será possível ao produtor saber quais maquinários está
disponível, quais funcionários e quantia de produtos existem em seu estoque auxiliando-o na
tomada de decisões.
O sistema tem como objetivos gerais: controlar funcionários, estoque, produção, maquinários,
talhão, atividades na produção, compra de produtos. Na página inicial do sistema, o produtor
contará com informação de previsão do tempo.
O setor agrícola carece de softwares e ferramentas para auxiliar na produção voltada para o
pequeno e médio produtor. Grandes empresas contam com softwares avançados, pois
investem muito dinheiro nessas ferramentas, no entanto o pequeno e o médio produtor não
podem dispor desses valores. Daí a necessidade de um sistema barato, preciso e de fácil
compreensão pelo usuário. Com o desenvolvimento de novos sistemas para este setor, novas
empresas verão a necessidade de investir nesta área em expansão.
1.2. PÚBLICO ALVO
O sistema será desenvolvido para produtores de médio e pequeno porte voltados para as
culturas de soja e de milho.
15
1.3. JUSTIFICATIVA
O sistema será desenvolvido para controlar as atividades realizadas na produção como o
plantio, aplicação de defensivos e a colheita. Será também controlada pelo sistema a compra
de produtos, estoque de produtos, maquinários e funcionários. O produtor contará com a
opção de gerar um histórico de compras e relatório das atividades, possibilitando a ele tomar
decisões precisas.
A sistematização do controle das atividades na produção proporciona ao produtor ter o
controle preciso das atividades realizadas em cada talhão. Possibilitando assim o
conhecimento de quais maquinários, funcionários e produtos estão sendo utilizados em cada
atividade, quando tiveram inicio e foram finalizadas, quais estão em andamento e quanto
tempo levaram para ser executadas. Tornando desnecessária a ida até o local para verificar o
andamento dos trabalhos.
O produtor tem uma grande dificuldade de controlar seus gastos na produção, muitas vezes
esse controle tem que ser feito manualmente, o que aumenta exponencialmente a margem de
erros dessas informações. Da mesma forma eram feitas o controle do estoque dos produtos, e
em muitos casos sequer existia esse controle, toda vez que o produtor necessitasse dessa
informação, era preciso alguém ir ao local de armazenamento e fazer a contagem do estoque,
tornando mais difícil a vida do produtor agrícola, poupando-lhe tempo e dinheiro.
16
2. MÉTODO DE DESENVOLVIMENTO
2.1. METODOLOGIA DE ANÁLISE
A análise e desenvolvimento do trabalho será utilizada a metodologia orientada a objetos, que
tem o significado de organizar coisas do mundo real, dividindo-as em objetos que fazem parte
de um estrutura de dados, possuindo um conjunto de operações para os manipularem. Cada
objeto pertence a uma classe, e esta pode conter vários objetos.
Essa metodologia é uma maneira de programar que auxilia na forma de organizar e resolver
vários problemas encontrados na programação procedural. A orientação a objetos melhora a
forma de se organizar e escrever menos, e atual na concentração de responsabilidades nos
pontos certos, flexibilizando sua aplicação e diminuindo drasticamente o código. (CAELUM,
p.28).
A POO (Programação Orientada a Objetos) é um conceito de desenvolvimento usado para
fazer abstrações do mundo real, que possibilita “agrupar” abstrações de mesma CLASSE,
onde cada classe determina o comportamento (definido nos métodos) que são ações que a
classe executa e os estados possíveis (atributos) de seus objetos (DEITEL, 2003; POTTS e
FRIEDEL JR, 2004).
17
2.2. JAVA
É uma linguagem de programação orientada a objetos, foi desenvolvida na década de 90 pela
empresa SunMicrosystems, atualmente pertence a Oracle. O que diferencia o Java das outras
linguagens, é que o Java é compilado para um bytecode que é executado pela JVM (Java
Virtual Machine). Diferente das outras linguagens que são compilados em código nativo, a
linguagem Java é compilada para um bytecode que é executado pela JVM (Java
VirtualMachine). JVM é um programa responsável por carregar e executar os aplicativos
Java, convertendo os bytecode em código de máquina (código binário). A linguagem Java é
poderosa em ambientes distribuídos complexos como a rede Internet. Sua versatilidade
permite ao programador utilizar-se de uma poderosa linguagem de programação de uso geral.
18
2.3 NETBEANS
Segundo Pinto (2010, p. 1)
O NetBeans IDE é um ambiente de desenvolvimento integrado (IDE) gratuito e
de código aberto para desenvolvedores de software na linguagem Java, C/C++,
PHP, Groovy, Ruby e muito mais. O IDE é executado em muitas plataformas,
como Windows, Linuw, Solaris e MacOs. O NetBeans IDE oferece aos
desenvolvedores ferramentas necessárias para criar aplicativos profissionais de
desktop, empresariais, Web e móveis multiplataformas.
Para o desenvolvimento do sistema foi escolhida a linguagem Java, com o uso da ferramenta
NetBeans IDE 7.2.1. O NetBeans originou-se de um projeto estudantil (seu nome no começo
era Xelfi), desenvolvido por estudantes na República Tcheca em 1996. Ele foi o primeiro Java
IDE que foi escrito em Java. Vários estudantes foram atraídos por esse projeto,
principalmente por o Java IDE ser um território pouco conhecido naquela época. Roman
Stanek era um empreendedor na República Tcheca à procura de novas idéias das quais
investir, ele descobriu o Xelfi e propôs um negócio com seus fundadores. Jarda Tulach
projetou a arquitetura básica do IDE, e dele partiu a idéia do nome NetBeans, descrevendo o
que os componentes fariam. O NetBeans foi lançado em 1999.
O NetBeans é um IDE (Integrated Development Environment) gratuito de código aberto, que
suporta várias linguagens de programação como: Java, C, C++, PHP, Groovy, entre outras. É
executável em várias plataformas: Windows, Linux, Solaris e MacOs. Esta ferramenta
disponibiliza ao desenvolvedor as ferramentas para criação de aplicativos para desktop, Web,
móveis, etc. Essa ferramenta conta com um Framework incrível que ajuda muita na
implementação.
19
2.4 JAVA SERVER FACES
Java Server Faces (JSF) é um framework utilizado para desenvolver aplicações web, um
framework dirigido a eventos. Ele é baseado na linguagem Java, e utilizado na construção de
interfaces de usuário, os componentes de interface do usuário são reutilizáveis, é permitindo a
conexão destes uma fonte de dados do aplicativo. Possui componentes padrões equivalentes a
quase todas as tags HTML (Hyper Text Markup Language). Possui vários pontos de extensão
(converters, validators, listeners, etc).
O Java Server Faces é uma tecnologia projetada para ser flexível, utilizando conceitos de
interface do usuário. O principal objetivo dessa tecnologia é facilitar o seu uso, essa
arquitetura define claramente a separação entre a lógica da aplicação e apresentação, tornando
mais fácil também a conexão da camada de apresentação para o código do aplicativo.
Entretanto, um dos grandes problemas destas tecnologias é que elas não resolvem o problema
da manutenção das aplicações.Esse problema só foi resolvido quando começou a se aplicar os
designs patterns no desenvolvimento das páginas. No caso das tecnologias para
desenvolvimento web usando Java, o design pattern utilizado é o MVC (Model-View-
Controller) (GONÇALVES, 2009).
2.5. PRIMEFACES
PrimeFaces é uma biblioteca de componentes de código aberto para JSF 2.0 (Java Server
Faces) com mais de 100 componentes ricos. Uma das grandes vantagens para usá-lo é que
seus componentes utilizam Ajax nativo do JSF (Java Server Faces). Se comparado a outras
bibliotecas sai na frente, pois contém um rico conjunto de componentes de interfaces
(DataTable, AutoComplete, HtmlEditor, gráficos, etc.), não sendo necessário fazer uso de
configuração adicional xml (eXtensible Markup Language) e não há dependências
necessárias, também conta com mais de 25 temas internos dentre outras.
20
2.6 MYSQL
O Banco de Dados utilizado será o MySQL. É um dos mais populares sistemas de
gerenciamento de banco de dados SQL (Structured Query Language) Open Source.
Atualmente é desenvolvido e distribuído pela MySQL AB. O Servidor MySQL pode ser
utilizado em sistemas de produção com alta carga e missão crítica, e também em programas
de uso em massa, é um sistema de gerenciamento de banco de dados relacional. Esse tipo de
banco de dados armazena os dados em tabelas separadas em vez de colocar todos os dados
num só local, aumentando assim sua velocidade e flexibilidade.
MySQL é um servidor de banco de dados multi-usuário e multi threaded. Utiliza a linguagem
SQL que é a linguagem mais popular entre os bancos de dados existentes. MySQL é rápido e
flexível permitindo armazenar logs e figuras nele facilmente. Ele tem como vantagens a
velocidade, robustez e facilidade de uso. Suporta todos os tipos de dados. É um banco de
dados completo, contendo todas as características que possuem os principais bancos de dados
concorrentes, sendo altamente recomendado para desenvolver aplicações de pequeno e médio
porte, gerando bons resultados, com a vantagem de possuir licença para uso gratuito.
O MySQL é um banco de dados completo, robusto e extremamente rápido, com todas as
características existentes nos principais bancos de dados disponíveis no mercado. O banco de
dados MySQL é um sério competidor para os maiores sistemas de banco de dados existentes
para aplicações de pequeno e médio porte. Uma das grandes vantagens do MySQL é suportar
mais de uma dúzia de tipos de dados (MILANI, 2007).
21
3. ESTRUTURA DE DESENVOLVIMENTO GERAL DO SISTEMA
3.1. UML
A UML (Unified Modeling Language), é uma linguagem padrão para a elaboração da
estrutura de projetos de softwares. Ela pode ser empregada para a visualização, a
especificação, a construção e a documentação de artefatos que façam uso de sistemas
complexos de software, ( Booch, 2000, p13).
A análise dos requisitos foi feita utilizando a linguagem UML. A UML auxilia na
visualização o desenho e na comunicação dos objetos, permitindo aos desenvolvedores que
visualizem em diagramas padronizados os produtos de seu trabalho. Frequentemente usada na
criação de sistemas de software, utilizando um conjunto de técnicas de notação gráfica. Essa
linguagem combina as melhores técnicas de modelagem de dados, negócios, objetos e
componentes.
A linguagem UML não demonstra que de trabalho deve ser feito, ou seja, não possui um
processo que define como o trabalho tem que ser desenvolvido. Ela descreve “o que fazer”,
“como fazer”, “quando fazer” e “porque deve ser feito”.
3.2. LEVANTAMENTO E ANÁLISE DOS REQUISITOS
O sistema não foi desenvolvido para um cliente específico, não havendo entrevista para o
levantamento de requisitos, para desenvolvê-lo, houve a cooperação do produtor rural
Francisco Paulo Granado no fornecimento de informações.
22
As principais necessidades do produtor são:
Dividir a propriedade em talhões para proporcionar uma melhor visão da propriedade
e das atividades;
Desenvolver um controle das atividades realizadas na produção, contendo informações
sobre estoque de produtos, funcionários e maquinários envolvidos nas atividades.
Tendo o controle individualmente de quais atividades foram realizadas em cada
talhão;
Criação de um histórico de produção para ajudar o produtor na tomada de decisões;
Elaboração de relatório de compras, possibilitando melhor gerenciamento e controle
dos produtos em estoque;
3.3. DIAGRAMA DE CASO DE USO
Para gerar os diagramas do sistema, foi utilizada a ferramenta Astah Professional 6.1. O
objetivo do diagrama de caso de uso (UC) é auxiliar na comunicação entre analistas e cliente.
Ele descreve um cenário mostrando as funcionalidades do sistema, e mostrando ao usuário o
relacionamento entre ator e caso de uso.
23
Figura 1 – Caso de uso do sistema
24
Figura 2 – UC Manter Usuário
Figura 3 – Descrição da UC Manter Usuário
25
Figura 4 – UC Manter Talhão
Figura 5 – Descrição da UC Manter Talhão
26
Figura 6 – UC Manter Safra
Figura 7 – Descrição da UC Manter Safra
27
Figura 8 – UC Manter Funcionário
Figura 9 – Descrição da UC Manter Funcionário
28
Figura 10 – UC Manter Produto
Figura 11 – Descrição da UC Manter Produto
29
Figura 12 – UC Manter Produção
Figura 13 – Descrição da UC Manter Produção
30
Figura 14 – UC Manter Fornecedor
Figura 15 – Descrição da UC Manter Fornecedor
31
Figura 16 – UC Manter Atividade
32
Figura 17 – Descrição da UC Manter atividade
33
Figura 18 – UC Efetuar Compra
Figura 19 – Descrição da UC Efetuar Compra
34
Figura 20 – UC Gerar Histórico de Compra
Figura 21 – Descrição da UC Gerar Histórico de Compra
35
Figura 22 – UC Gerar Relatório de Custo da Atividade
Figura 23 – Descrição da UC Gerar Relatório de Custo da Atividade
36
Figura 24 – UC Gerar Relatório de Produção
Figura 25 – Descrição da UC Gerar Relatório de Produção
37
Figura 26 – UC Gerar Relatório de Produto
Figura 27 – Descrição da UC Gerar Relatório de Produto
38
3.4. DIAGRAMA DE SEQUÊNCIA
O diagrama de sequência (DS) tem com objetivo, mostrar a troca de mensagens entre os
atores do sistema durante o tempo de realização de uma operação. Além dissi descreve os
detalhes de um caso de uso.
Figura 28 – DS Editar Usuário
39
Figura 29 – DS Cadastrar Talhão
Figura 30 – DS Editar Talhão
40
Figura 31 – DS Inativar Talhão
Figura 32 – DS Cadastrar Funcionário
41
Figura 33 – DS Editar Funcionário
Figura 34 – DS Inativar Funcionário
42
Figura 35 – DS Cadastrar Fornecedor
Figura 36 – DS Editar Fornecedor
43
Figura 37 – DS Inativar Fornecedor
Figura 38 – DS Cadastrar Maquinário
44
Figura 39 – DS Editar Maquinário
Figura 40 – DS Inativar Maquinário
45
Figura 41 – DS Cadastrar Safra
Figura 42 – DS Editar Safra
46
Figura 43 – DS Cadastrar Produto
Figura 44 – DS Editar Produto
47
Figura 45 – DS Cadastrar Produção
Figura 46 – DS Editar Produção
48
Figura 47 – DS Efetuar Compra
49
Figura 48 – DS Iniciar Atividade
50
Figura 49 – DS Editar Atividade
Figura 50 – DS Encerrar Atividade
51
Figura 51 – DS Gerar Histórico de Compra
Figura 52 – DS Gerar Relatório de Custo da Atividade
52
Figura 53 – DS Gerar Relatório de Produção
Figura 54 – DS Gerar Relatório de Produto
53
3.5. DIAGRAMA DE CLASSES
O diagrama de classes (DC) faz a descrição de todos os objetos envolvidos no sistema, e
mostra o relacionamento entre eles. O DC contém os atributos dos objetos e também mostra
os principais métodos que serão implementados no sistema (Figura 55).
Figura 55 – Diagrama de Classes do sistema
54
3.6. DIAGRAMA ENTIDADE RELACIONAMENTO
O diagrama ER (Entidade e Relacionamento) - (Figura 56) descreve a diagramação do dados
que serão armazenados no sistema. Proporcionando ao desenvolvedor uma melhor visão das
estruturas dos dados e dos relacionamentos entre eles. É também uma ferramenta para a
modelagem . Para desenvolver o diagrama ER, foi utilizada como ferramenta o Bando de
Dados MySQL.
Figura 56 – Diagrama ER do sistema
55
4. IMPLEMENTAÇÂO
Para implementação do projeto foi utilizada a linguagem Java e a ferramenta NetBeans IDE
7.2.1.
4.1 ORGANIZAÇÃO DO PROJETO
A arquitetura do projeto foi dividida em três partes MVC (Model View Controller).
4.1.2 MVC
É um padrão de arquitetura de software que separa a informação (e as suas regras de
negócio) da interface com a qual o usuário interage. MVC é uma maneira de estruturar o
projeto/aplicação de forma que a interface de iteração com o usuário (view) fique separada
do controle da informação (model), essa separação é intermediada por outra camada
controladora (controller).
Model: É a camada que representa os dados do projeto, fornecendo meios de
acesso (leitura e escrita) à esses dados (Figura 58 e 59).
56
Figura 57 – Camada Model
Figura 58 – Modelo Atividade.java
57
Controller: Possui métodos públicos que são chamados de actions, cada action é
responsável por uma “página” do seu sistema. O controller é quem decide qual model
utilizar, quais pedidos fazer para o model, qual combinação de views será usada para
exibir os dados retornados pelo model. Figura 60 e 61.
Mas não é o controller quem efetua a busca dos dados, ela é realizada pelo model. E a
exibição dos dados é efetuada pela view e não pelos controllers.
Figura 59 – Camada Controller
58
Figura 60 – Controller AtividadeJpaController.java.
View: É onde o sistema interage com o usuário. Tudo o que ele ver
(HTML/XML/RSS/CSV) deve ser gerado e exibido através dessa camada. A view
manipula os dados apenas para a exibição, ela não faz nenhum tipo de escrita e
persistência no sistema, e nem efetua busca de dados. Figura 62 e 63.
59
Figura 61 – Camada View
Figura 62 – View AtividadeMB.java
60
5. CRONOGRAMA
Figura 63 - Cronograma
61
6. CONCLUSÃO
O sistema traz funcionalidades que auxiliam o produtor rural no gerenciamento da produção,
e estas ações permitem ao usuário uma visão ampla do que está sendo desenvolvido em sua
propriedade. A análise facilitou o entendimento do sistema.
No que se referiu aos usos foi possível identificar melhor as funcionalidades do sistema, pois
os diagramas deram uma melhor compreensão do funcionamento do software.
Foram desenvolvidas funcionalidades que tornam a vida do produtor mais fácil quando o
assunto é referente ao que acontece em sua propriedade rural. Agora o produtor pode
monitorar tudo o que esta acontecendo em sua propriedade sem precisar sair de casa, como o
desenvolvimento do sistema para Web, em qualquer lugar do mundo (desde que esteja
conectado a internet) ele poderá acessar o sistema, tendo precisão exata das atividades que
foram ou estão sendo realizadas e em quais talhões estão sendo realizadas, quais produtos,
funcionário e maquinários estão sendo utilizados e o custo de cada atividade.
O produtor também contara com o histórico das atividades para uma melhor tomada de
decisões.
O sistema desenvolvido é de fácil entendimento e utilização. Foi feito para evitar duvidas ao
produtor na hora de utiliza-lo.
No desenvolvimento do sistema existiram algumas dificuldades, a maioria devido a falta de
conhecimento da linguagem e ferramentas utilizadas, o que resultou em atraso no
desenvolvimento do sistema.
62
7. REFERÊNCIAS
BOOCH, Grady. UML, guia do usuário. Rio de Janeiro: Campus 2000.
CAELUM. Apostila Lab. Java com Testes, JSF, Web Services e Design Patterns.
Caelum Ensino e Inovação. Disponível em: < http://www.caelum.com.br/apostila-java-testes-
jsf-web-services-design-patterns/introducao-ao-jsf-e-primefaces/>. Acesso em: 12 jun. 2013.
CAELUM. FJ11 Java e Orientação a Objetos.
CAELUM. FJ21 Java para Desenvolvimento Web.
CAELUM. Introdução ao JSF e PrimeFaces. Caelum. Disponível em:
<http://www.caelum.com.br/apostila-java-testes-jsf-web-services-design-patterns/introducao-
ao-jsf-e-primefaces/#7-7-preparacao-do-ambiente>. Acesso em: 20 ago. 2013.
DEITEL, H.M. e DEITEL, P.J., Java, como programar, trad. Carlos Arthur Lang
Lisboa, 4ª ed. , Porto Alegre, Bookman, 2003.
DEITEL, Harvey M.; DEITEL, Paul J.; Java Como Programador. 5. ed. Tradução de
Edson Furmankiewicz. São Paulo: Editora Pearson Education do Brasil, 2005.
Descrição MySQL(Banco de Dados). Disponível em <
http://pt.scribd.com/doc/97461920/DESCRICAO-MySQL-BANCO-DE-DADOS>. Acesso
em: 23. Ago. 2013.
Diagrama de Entidade Relacionamento. Disponível em <
https://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=9&ved=0CFEQFj
AI&url=http%3A%2F%2Fwww.mindmeister.com%2Fgeneric_files%2Fget_file%2F11451%
3Ffiletype%3Dattachment_file&ei=CJnAUdbAIsuM0QGamoHwAw&usg=AFQjCNE3gICo
WHC0rSrxQv5AKqrN7DIr0Q>. Acesso em: 17 jun. 2013.
63
Diretrizes para Elaboração de Trabalhos Acadêmico-Científicos. Fundação Educacional
do Município de Assis - FEMA. Assis. 2010
DO PRADO, Antonio Francisco. Desenvolvimento de Aplicações Distribuídas. 2006. 99p.
Lato sensu(Especialização em Computação) – Fundação Educacional do Município de Assis -
FEMA, São Paulo, Assis, 2006.
GONÇALVES, E.,Dominando Java Server Faces e Facelets Utilizando Spring
2.5, Hibernate e JPA, Editora Ciência Moderna, 2009.
K19. Desenvolvimento Web com JSF 2 e JPA 2, 2011.
MILANI, A., MySQL Guia do Programador, Novatec, 2007.
PINTO, Alessandro Cezar. Conheça o NetBeans IDE. Engenharia da Computação. Disponível
em : http://engenhariapc.blogspot.com/2010/05/conheca-o-netbeans-ide.html. Acesso em: 03
dez. 2013.
POTTS, A. e FRIEDEL JR, D. Java programming language handbook, CH.,
Coriolis Group Books, 2004.
SAMPAIO, Marcus Costa. Caso de Uso, Diagrama de Caso de Uso. UFCG CEEI
Departamento de Sistemas e Computação. Disponível em: <
http://www.dsc.ufcg.edu.br/~sampaio/cursos/2007.1/Graduacao/SI-
II/Uml/diagramas/usecases/usecases.htm>. Acesso em: 16 jun. 2013.
SAMPAIO, Marcus Costa. Diagramas de Interação, Diagrama de Sequência. UFCG CEEI
Departamento de Sistemas e Computação. Disponível em: <
http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/uml/diagramas/interacao/sequencia.ht
m>. Acesso em: 16 jun. 2013.
64
SILVA MOTA, Carlos Sérgio. Dicas para a construção de uma EAP (Estrutura Analítica
do Projeto). P4Pro Organização e Projetos. Disponível em: <
http://www.p4pro.com.br/index.php/artigos/25-dicas-para-a-construcao-de-uma-eap-
estrutura-analitica-do-projeto>. Acesso em: 17 jun. 2013.
SILVA, Emerson de Barros. APLICAÇÃO DE TÉCNICAS DE PERSISTÈNCIA DE
DADOS PARA SISTEMAS WEB. 2005. 38p. Monografia (Bacharelado em Ciência da
Computação) – Faculdade de Jaguariúna, São Paulo, Jaguariúna, 2005.
Um Breve Histórico do NetBeans. NetBeans. Disponível em: <
https://netbeans.org/about/history_pt_BR.html>. Acesso em: 14 jun. 2013.
UML – Conceitos Básicos 2. Macoratti.net. Disponível em: <
http://www.macoratti.net/vb_uml2.htm>. Acesso em: 24 ago. 2013.