Buscar

Port Grupo 4 Semestre ads

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

3
Sistema de Ensino Presencial Conectado
Análise e Desenvolvimento de Sistemas
Elias Sousa da Silva
Jucelino Pedrosa Lima
MaRcos leandro borges
Sofia alves teixeira
WALTER D’ÁVILA DOS SANTOS
PRODUÇÃO TEXTUAL EM GRUPO
“Sistema de Controle de Frota”
Brasília
2015
Elias Sousa da Silva
Jucelino Pedrosa Lima
MaRcos leandro borges
Sofia alves teixeira
WALTER D’ÁVILA DOS SANTOS
estudo de caso:
Controle de frota
Produção textual em grupo do 4º semestre apresentado à Universidade Norte do Paraná - UNOPAR, como requisito parcial para a obtenção de média semestral nas disciplinas de Análise Orientada a Objetos II; Banco de Dados II; Programação Orientada a Objetos; Programação Web I e Seminários IV.
Orientadores: Adriana Aparecida Loper; 
 Luis Claudio Perini;
 Márcio Roberto Chiaveli;
 Roberto Yukio Nishimura e
 Veronice de Freitas.
Brasília
2015
SUMÁRIO
1 INTRODUÇÃO .......................................................................................................03
1.1 Apresentação.......................................................................................................03
2 OBJETIVO..............................................................................................................05
3 DESENVOLVIMENTO..................................................,.........................................06
3.1 Análise Orientada a Objetos.................................................................................06
3.1.1Diagramas..........................................................................................................06
3.2 Banco de Dados...................................................................................................09
3.3 Programação Orientada a Objetos.......................................................................10
3.4 Programação Web................................................................................................12
3.4.1 PHP...................................................................................................................14
3.4.2 Códigos PHP.....................................................................................................16
4 CONCLUSÃO.........................................................................................................20
5 REFERÊNCIAS.......................................................................................................21
INTRODUÇÃO
 Apresentação 
Este trabalho apresenta o desenvolvimento e a implementação de um sistema de informação via web para controle de uma frota de veículos. A aplicação web gerencia os dados das reservas e locações de uma frota de veículos, procurando automatizar seus processos na busca por qualidade e melhora na obtenção de informações gerencias.
Muitas empresas estão utilizando frotas próprias para agilizar o trabalho de seus funcionários, essa é uma medida muito interessante que tem que ser bem gerenciada. Precisamos fazer o gerenciamento das pessoas que utilizam os veículos para não haver usos indevidos e veículos que necessitam manutenção, ver a disponibilidade, enfim temos vários controles a fazer.
 O sistema foi desenvolvido em linguagem PHP utilizando-se do banco de dados MySQL, permitindo todo acompanhamento da frota, as locações, as manutenções e as reservas por período dos veículos. Permite ainda que funcionários autorizados façam reservas, se comuniquem com o setor de frotas e envie alertas sobre as manutenções necessárias à frota.
Segundo Audy, Andrade e Cidral (2005, p. 119), quando uma organização opta pela utilização de um sistema de informação, o sistema de processamento de transações tende a ser o primeiro a ser informatizado, devido aos benefícios bastante visíveis pela automação das operações rotineiras. A melhoria do desempenho organizacional, decorrente de um processamento mais rápido, uma capacidade de armazenamento maior, padronização de dados, procedimentos relativos às transações, e a obtenção de resultados mais precisos, é evidenciado pelo uso da informática e das telecomunicações.
O software, segundo Sommerville (2003, p. 5), assume um duplo papel, ou seja, ele é um produto e, ao mesmo tempo, o veículo para entrega do produto. Este produz, gera, adquire, modifica, exibe ou transmite informação. Isto é, o software funciona como um veículo de entrega do produto mais importante da nossa época – a informação. Assim o software disponibiliza o potencial que a tecnologia nos traz tanto para ser utilizado em uma rede de computadores local, como para um canal amplo, como a internet. O software está se inserindo cada vez mais na rede de computadores, e esta se torna imprescindível às organizações. As atividades diárias ocorrem no espaço digital, novas tecnologias permitem que os softwares se tornem portáteis, e são disponibilizados para acesso via web.
As aplicações web, segundo Pressman (2006, p. 12), cobrem uma ampla gama de aplicações. Podem ser um conjunto de arquivos ligados por hipertexto e poucos gráficos. Mas estas aplicações, em sua evolução, podem fornecer características de grandes softwares, como, funções de computação avançada e conteúdo para o usuário final, que podem ser integradas ao banco de dados da organização e se adequarem às aplicações do negócio.
Sendo assim, as organizações obtêm receitas, desenvolvem serviços e ampliam seus negócios utilizando-se de um ou mais sistemas de informação, alguns voltados para a web. Estas organizações buscam a qualidade, eficácia e querem ter resultados positivos. Para isso precisam se automatizar e terem o controle de suas rotinas administrativas. 
Objetivo
O presente trabalho apresenta um sistema voltado ao ambiente web para controle e gestão de uma frota de veículos, demonstrando desde a documentação em diagramas, a criação do Banco de Dados, passando pela implementação dos códigos em C# e o desenvolvimento da página web em PHP, relacionando o estudo com o caso apresentado.
Conforme levantamento realizado foi possível identificar que a empresa necessitará dos seguintes controles: Controle de Veículos, Controle de Funcionários, Controle de Disponibilidade e Controle de Locação. 
 O objetivo é cadastrar a frota de veículos, os funcionários devidamente autorizados, os formulários de reserva, fazer a comunicação entre o setor de frotas que recebe o formulário e os pedidos de locação. Além disto, o sistema provê módulos para consultas diversas, para uma melhor visualização das informações. As telas do sistema são de fácil operação visando uma melhor interação com o usuário. Para o desenvolvimento do mesmo serão seguidas algumas etapas, visando diminuir a quantidade de erros, facilitar a manutenção futura do sistema e gerar novas funcionalidades. Os objetivos específicos deste trabalho são: 
Estudar os conceitos relacionados a Desenvolvimento de Sistemas e Banco de Dados II;
Identificar as atividades que são executadas na empresa em questão;
Modelar o sistema de acordo com os requisitos levantados;
Implementar e testar um sistema que atenda as necessidades previamente identificadas. 
De maneira geral são basicamente três as etapas mais importantes: análise e especificação de requisitos; projeto; implementação e testes. 
DESENVOLVIMENTO
análise orientada a objetos
A partir da leitura e entendimento do caso de uso “controle de frota”, devemos desenvolver os diagramas mais importantes do sistema, como referência primária dos possíveis relacionamentos, para uma boa base de toda análise que virá pela frente.
Diagrama de Caso de Uso
Diagrama de Classe
Diagrama de Sequência
Diagrama de Estado
Diagrama de Implementação
banco de dados
Conforme estudo de caso apresentadocriamos uma DER (Diagrama Entidade Relacionamento) devidamente aplicado ao MRN (Modelo Relacional Normalizado) utilizando a ferramenta BrModelo. 
Modelo lógico.
Modelo conceitual.
programação orientada a objetos
Os arquivos criados e usados para armazenar as informações são:
Carros.crs
Clientes.crc
Empregados.cre
PedidoLocacao.cro
As informações são gravadas nos arquivos através dos objetos criados conforme mostra o código abaixo:
 
// Cria um carro
Carro veiculo = new Carro();
veiculo.Fabricante = txtFabricante.Text;
veiculo.Modelo = txtModelo.Text;
veiculo.Ano = int.Parse(txtAno.Text);
veiculo.Categoria = cbxCategorias.Text;
veiculo.TemCDPlayer = chkCDPlayer.Checked;
veiculo.TemDVDPlayer = chkDVDPlayer.Checked;
veiculo.EstaDisponivel = chkDisponivel.Checked;
// Chama o método Add da coleção para adicionar o carro listaCarros.Add (txtTagNumber.Text, veiculo);
// salva a lista 
stnCarros = new FileStream(strNomeArquivo, FileMode.Create, FileAccess.Write, FileShare.Write);
 
Quando do registro de pedido de locação, ao informar o número da carteira de motorista (CNH) na caixa de texto, é feita uma busca nos arquivos e a informação é recuperada e exibida nos controles de formulário conforme mostra o código abaixo:
 
 
	 private void txtNumeroRegistroCNH_Leave(object sender, EventArgs e)
 {
 Cliente locador = null;
 string strNumeroCNH = txtNumeroRegistroCNH.Text;
 if (strNumeroCNH.Length == 0)
 {
 MessageBox.Show("Informe o número de registro da carteira de habilitação do Cliente.");
 txtNumeroRegistroCNH.Focus();
 return;
 }
 Dictionary<string, Cliente> listaClientes = new Dictionary<string, Usuarios>();
 BinaryFormatter bfmClientes = new BinaryFormatter();
 string strNomeArquivo = @"C:\JcmSoft_Carros\Usuarios.crc";
 if (File.Exists(strNomeArquivo))
 {
 FileStream stmClientes = new FileStream(strNomeArquivo,
 FileMode.Open,
 FileAccess.Read,
 FileShare.Read);
 try
 {
 // retorna uma lista de clientes
 listaClientes = (Dictionary<string, Cliente>)
 bfmClientes.Deserialize(stmClientes);
 if (listaClientes.ContainsKey(strNumeroCNH) == true)
 {
 foreach (KeyValuePair<string, Cliente> cli in listaClientes)
 {
 if (cli.Key == strNumeroCNH)
 {
 locador = cli.Value;
 txtNomeUsuario.Text = locador.Nome;
 txtEnderecoUsuario.Text = locador.Endereco;
 txtCidadeUsuario.Text = locador.Cidade;
 cboUsuarioEstados.Text = locador.Estado;
 txtCepUsuarioText = locador.CodigoPostal;
 }
 }
 }
 else
 {
 txtNomeUsuario.Text = "";
 txtEnderecoUsuario.Text = "";
 txtCidadeUsuario.Text = "";
 cboClientesEstados.Text = "";
 txtCepCliente.Text = "";
 MessageBox.Show("Não existe Usuario com o registro de " +
 " CNH informado no banco de dados");
 return;
 }
 }
 finally
 {
 stmUsuarios.Close();
 }
 }
 }
	
programação web 
Com o aumento do uso da Internet para fins comerciais, tornou-se imprescindível a criação de meios, em total segurança, que possibilitem a comunicação entre duas pessoas através da rede. Dentre os diversos protocolos de segurança existente, existe um muito importante, o SSL (Secure Socket Layer).
 Originalmente desenvolvido pela NETSCAP, ele permite que aplicativos cliente/servidor possam trocar informações sigilosas em total segurança, protegendo a integridade e a veracidade do conteúdo que trafega na Internet. Tal segurança só é possível através da autenticação das partes envolvidas na troca de informações. 
Um servidor protegido pelo protocolo SSL possui uma URL que começa em: “https: //” onde o “s” após “ http”, significa secured (seguro, protegido), garantindo uma conexão privada e segura. Outra maneira de saber se está usando um protocolo de segurança é observar se aparece um pequeno cadeado na barra de status na parte de baixo da janela do navegador. 
O símbolo do cadeado avisa que você está utilizando criptografia.
A criptografia é uma forma de codificar uma informação para que pessoas não autorizadas tenham acesso as informações cifradas, garantido a integridade da informação. Existem algumas versões gratuitas e pagas que podemos utilizar para criptografar e descriptografar dados como: Super Ecryptor, Abi Coder, Ashampoo Magic Security, TrueCrypt, entre outros que são utilizados para proteger transações comerciais, documentos secretos, ou transmitir informações confidenciais pela internet ou por uma rede local (intranet).
PHP
PHP ou Hypertext Preprocessor é uma das linguagens de script mais populares para a criação de páginas Web dinâmicas no lado do servidor. É uma tecnologia de código aberto, que independe de plataforma, havendo implementações para todos os principais sistemas operacionais como UNIX, Linux, Mac e Windows e também aceita muitos bancos de dados como MySQL. Segundo Deitel (2009, p. 462-495), o poder da Web está não apenas em servir conteúdo aos usuários, mas também em responder às solicitações destes e gerar páginas com conteúdo dinâmico. 
	
RESERVA DE VEÍCULO
Primeiro devemos criar o cadastro dos funcionários que utilizarão o sistema, devemos utilizar um servidor para hospedar a página web e gravar as informações no banco de dados. No caso estamos utilizando a ferramenta Xampp, um pacote que incluí os principais servidores de código aberto existentes, incluindo FTP, MySQL, Apache com PHP e Perl.  
 
 
 O funcionário deve preencher o formulário de solicitação de reserva do veículo, que será encaminhado ao setor de frotas.
O setor de frota recebe o formulário e verifica a disponibilidade do veículo para ser utilizado naquela data e hora especificado. Havendo disponibilidade o funcionário recebe uma resposta, com o número do veículo, para retirada na data e hora marcada. 
Se houver disponibilidade faça a reserva, alocando um veículo para esse formulário e retorna ao solicitante o número do veículo reservado. Em caso negativo, retorna a indisponibilidade ao solicitante encerrando essa solicitação.
CÓDIGOS PHP
CADASTRO DE FUNCIONÁRIOS
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><META http-equiv="Content-Type" content="text/html; charset=utf-8"> </head>
<body>
<div> <form name="0.1_cadastro" method="post" action="cadastro_func_gravar.php"><table width="625" border="0">
 <tr>
 <td width="69">Nome:</td>
 <td width="546"><input name="nome" type="text" size="70" maxlength="60">
 </td>
 </tr>
	
 <tr>
 <td>Sexo:</td>
 <td><input name="sexo" type="radio" value="Masculino" checked>
 Masculino 
 <input name="sexo" type="radio" value="Feminino">
 Feminino</td>
 </tr>
	
 <tr>
 <td>Endereço:</td>
 <td><input name="endereco" type="text" size="70" maxlength="70">
 </td>
 </tr>
	 
 <tr>
 <td>País:</td>
 <td><input name="pais"type="text" maxlength="20">
 </td>
 </tr>
	
 <tr>
 <td>Estado:</td>
 <td><select name="estado">
 <option>Selecione...</option>
 <option value="AC">AC</option>
 <option value="AL">AL</option>
 <option value="AP">AP</option>
 <option value="AM">AM</option>
 <option value="BA">BA</option>
 <option value="CE">CE</option>
 <option value="ES">ES</option>
 <option value="DF">DF</option>
 <option value="MA">MA</option>
 <option value="MT">MT</option>
 <option value="MS">MS</option>
 <option value="MG">MG</option>
 <option value="PA">PA</option>
 <option value="PB">PB</option>
 <option value="PR">PR</option>
 <option value="PE">PE</option>
 <option value="PI">PI</option>
 <option value="RJ">RJ</option>
 <option value="RN">RN</option>
 <option value="RS">RS</option>
 <option value="RO">RO</option>
 <option value="RR">RR</option>
 <option value="SC">SC</option>
 <option value="SP">SP</option>
 <option value="SE">SE</option>
 <option value="TO">TO</option>
 </select>
 </td>
 </tr>
	
	<tr>
 <td>Cidade:</td>
 <td><input name="cidade" type="text" maxlength="20">
 </td>
 </tr>
		
 <tr>
 <td>Bairro:</td>
 <td>
	 <input name="bairro" type="text" maxlength="20">
 </td>
 </tr>
	 	
	<tr>
 <td>Setor:</td>
 <td>
	<select name="setor"> 
	 <option value="adm">Administração</option> 
	 <option value="ven">Vendas</option> 
	 <option value="alm">Almoxarifado</option> 
	</select> 
	 </td>
 </tr>
	
 
 <tr>
 <td>Login:</td>
 <td>
	 <input name="login" type="text" maxlength="12">
 </td>
 
</tr>
 <tr>
 <td>Senha:</td>
 <td>
 	<input name="senha" type="password" maxlength="12">
 </tr>
 <tr>
 <td colspan="2">
 <input name="cadastrar" type="submit" value="Concluir Cadastro!"> 
 <input name="limpar" type="reset" value="Limpar Campos!"> 
 </td>
 </tr>
 </table>
 </form>
 </body>
</html>
GRAVANDO O CADASTRO NO BANCO DE DADOS
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Cadastro realizado com sucesso!</title>
</head>
<body>
<?php 
// ------------- RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO -----------
$nome= $_POST ["nome"];
$sexo= $_POST ["sexo"];
$endereco= $_POST ["endereco"];
$pais= $_POST ["pais"];
$estado= $_POST ["estado"];
$cidade= $_POST ["cidade"];
$bairro = $_POST ["bairro"];
$setor= $_POST ["setor"];
$login= $_POST ["login"];
$senha= $_POST ["senha"];
//--------- Gravando no banco de dados ! conectando com o localhost - mysql -----------
$conexao = mysql_connect("localhost","root","");
if (!$conexao)
 die ("Erro de conexão com localhost, o seguinte erro ocorreu -> ".mysql_error());
// ------------- conectando com a tabela do banco de dados ----------------
$banco = mysql_select_db("bdFuncionario",$conexao); 
if (!$banco)
die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());
// --Query que realiza a inserção dos dados no banco de dados na tabela acima ------
$query = "INSERT INTO `usuarios_v1` ( nome , sexo , endereco , pais , estado , cidade , bairro , setor , login , senha ) 
VALUES ('$nome','$sexo', '$endereco', '$pais', '$estado' , '$cidade', '$bairro' , '$setor' , '$login', '$senha')";
$resultado = mysql_query($query,$conexao) or die(mysql_error());
echo "<BR>";
echo "<center><h1>Seu cadastro foi realizado com sucesso!</h1></center>";
echo "<BR>";
echo "<a class=\"button\" href=\"cadastro_func_tabela.html\">Novo cadastro</a>\n";
?> 
</body>
</html>
CONCLUSÃO
As vezes quem está começando pode se sentir confuso na hora de escolher qual linguagem investir para aprender e entrar no mercado de trabalho. Mas se você não sabe nada de programação e quer aprender para entrar nesse mercado de trabalho, sugiro que antes de se preocupar com a linguagem, aprenda lógica de programação. 
Viu-se no trabalho conceitos básicos para iniciar sua vida na programação de sistemas e programação web, descrevendo funcionalidades e tecnologias aplicadas para projetar e desenvolver softwares. O portfólio traz um arcabouço que dará sustentação para o meu conhecimento.
REFERÊNCIA 
BEZERRA, Eduardo. Princípios de análise e projeto de sistemas com UML. 3. ed. São Paulo: Elsevier, 2015.
DELIBERADOR, Paulo de Tarso. Algoritmos e estrutura de dados. São Paulo: Pearson, 2009.
FABRIS, Polyana Pacheco Gomes; PERINI, Luis Cláudio. Processos de software. Londrina: Educacional, 2014.
LOPER, Adriane Aparecida. Organização de computadores. Londrina: Unopar, 2014..
NISHIMURA, Roberto Yukio. Banco de dados l. São Paulo: Pearson, 2009.
NISHIMURA, Roberto Yukio. Banco de dados II. São Paulo: Pearson Prentice Hall, 2009.
SILVA, N. P. Projeto e Desenvolvimento de Sistemas. São Paulo: Érica, 1994. 143 p.
SILVA, Flavio de Almeida. Desenvolvimento orientado a objetos I. São Paulo: Pearson Prentice Hall, 2009.
SOLER, Luciano; MORAES, Everson Matias de. Desenvolvimento de aplicação web. São Paulo: Pearson Education do Brasil, 2010.
TANAKA, Simone Sawasaki. Análise de Sistemas I. São Paulo: Pearson, 2009.
TANAKA, Simone Sawasaki. Análise de sistemas III. São Paulo: Pearson Prentice Hall, 2009.
Algoritmos e estrutura de dados I. Disponível em:< http://www.catolicavirtual.br/conteudos/graduacao/cursos/tec_informacao/html/1o_semestre/algoritmos_programacao/leituras/aula01_algoritmos.pdf > Acesso em: mar. 2015.
Banco de Dados. Disponível em: <http://www.infoescola.com/informatica/banco-de-dados/> Acesso em: 14 maio 2015.
Como montar uma rede de computadores. Disponível em:
< http://www.infodicas.com.br/dicas_tuto/como-montar-uma-rede-de-computadores > Acesso em: 25 abr. 2015.
Como tudo funciona. Disponível em: <http://tecnologia.hsw.uol.com.br /criptografia4.htm> Acesso em: 30 out. 2015.
Diferenças entre Hub, Switch e Roteador. Disponível em: 
<http://www.infowester.com/hubswitchrouter.php> Acesso em: 25 abr. 2015.
Estrutura de Dados e Algoritimos. Disponível em: <http://www.cos.ufrj.br/~rfarias/cos121/aula_11.html > Acesso em: 13 maio 2015.
Gerenciamento de usuários e controle de acessos do MySql. Disponível em: <http://www.devmedia.com.br/gerenciamento-de-usuarios-e-controle-de-acessos-do-mysql/1898 > Acesso em: 14 maio 2015.
O que é SSL. Disponível em:< http://www.tecmundo.com.br/seguranca/1896-o-que-e-ssl-.htm > Acesso em: 30 out. 2015.

Outros materiais