You are on page 1of 26

SISTEMA DE ENSINO PRESENCIAL CONECTADO

ANLISE E DESENVOLVIMENTO DE SISTEMAS


ARMANDO JOS DA SILVA
EDSON FERREIRA DA SILVA
JOS RODRIGO BARBOSA MENDONA

PRODUO TEXTUAL INTERDISCIPLINAR:


EM GRUPO

Carpina
2015

ARMANDO JOS DA SILVA


EDSON FERREIRA DA SILVA
JOS RODRIGO BARBOSA MENDONA

PRODUO TEXTUAL INTERDISCIPLINAR:


EM GRUPO

Trabalho
apresentado
ao
Curso
Anlise
e
Desenvolvimento de Sistamas
da UNOPAR Universidade Norte do Paran, para a disciplina Anlise
Orientad a Objetos II, Banco de Dados II, Programao
Orientada a Objetos e Programao Web.
Prof. Luis Cludio Perini;
Roberto Y. Nishimura;
Mrcio Roberto Chiaveli;
Veronice de Freitas;

Carpina PE
2015

SUMRIO

1. Introduo ............................................................................................................5

2. Objetivo .................................................................................................................6

3. Desenvolvimento .................................................................................................7
3.1 Anlise Orientada a Objetos II ..............................................................................7
3.2 Banco de Dados II ...............................................................................................11
3.3 Programao Orientada a Objetos .....................................................................12
3.4 Programao Web ..............................................................................................18
4. Concluso ...........................................................................................................25

5. Referncias Bibliogrficas ................................................................................26

1. INTRODUO

Para que uma empresa utilize, da melhor forma possvel, de uma frota
de veculos prpria, faz-se necessrio um gerenciamento muito bem sucessdio de seus
carros. Isso para que no haja problemas como o choque de reserva de um veculo por
mais de um funcionrio.
Para tanto, a criao de um sistema que gerencie todo este processo
imprescindvel.
Veremos toda a sequncia de passos que vai desde a anlise orientada
a objetos, com documentao das atividades do usurio com o sistema, o
comportamento dos dados no banco de dados, a importncia do conhecimento do
comportamento dos objetos dentro do sistema e as diverdas tecnologia utilizadas na
web.

2. OBJETIVO

Descrever os diagramas da UML, que iro mostrar como cada objeto


trabalha e interage com outros objetos dentro do sistema.
Mostrar o Modelo de Entidade e Relacionamento do sistema
devidamente normalizado.
Fazer a implementao de um cadastro de funcionrio e veculos em
C# e um sistema web de reserva e devoluo de veculo.

3.

DESENVOLVIMENTO

3.1 Anlise Orientada a Objetos

Diagrama de Casos de Uso

Diagrama de Classes

Diagrama de Sequncia

Diagrama de Estado

10

3.2. Banco de Dados II

11

3.3 Programao Orientada a Objetos


Implementao em C# do Cadastro de Funcionrios e de Veculos
using
using
using
using

System;
System.Collections.Generic;
System.Linq;
System.Text;

namespace frota
{
class pessoa
{
//METODO
public pessoa()
{
this.IdPessoa = 0;
this.Nome = "";
this.Rua = "";
this.Cidade = "";
this.Estado = "";
this.Cep = "";
this.Sexo = "";
this.Cpf = "";
this.Rg = "";
this.DataNascimento = "";
this.Telefone = "";
this.NPai = "";
this.NMae = "";
this.email = "";
}
//INCREMENTAO DE METODO
public pessoa(int idPessoa, string nome, string rua, string cidade, string estado,
string cep, string sexo, string cpf, string rg,
string dataNascimento, string telefone, string nPai, string nMae,
string email)
{
this.IdPessoa = 0;
this.Nome = nome;
this.Rua = rua;
this.Cidade = cidade;
this.Estado = estado;
this.Cep = cep;
this.Sexo = sexo;
this.Cpf = cpf;
this.Rg = rg;
this.DataNascimento = dataNascimento;
this.Telefone = telefone;
this.NPai = nPai;
this.NMae = nMae;
}
//VARIAVEIS
private int idPessoa;
private string nome;
private string rua;

12

private
private
private
private
private
private
private
private
private
private
private

string
string
string
string
string
string
string
string
string
string
string

cidade;
estado;
cep;
sexo;
cpf;
rg;
dataNascimento;
telefone;
nPai;
nMae;
email;

//ENCAPSULAMENTO
public int IdPessoa
{
get { return this.idPessoa; }
set { this.idPessoa = value; }
}
public string Nome
{
get { return this.nome; }
set { this.nome = value; }
}
public string Rua
{
get { return this.rua; }
set { this.rua = value; }
}
public string Cidade
{
get { return this.cidade; }
set { this.cidade = value; }
}
public string Estado
{
get { return this.estado; }
set { this.estado = value; }
}
public string Cep
{
get { return this.cep; }
set { this.cep = value; }
}
public string Sexo
{
get { return this.sexo; }
set { this.sexo = value; }
}
public string Cpf
{
get { return this.cpf; }
set { this.cpf = value; }
}
public string Rg
{
get { return this.rg; }
set { this.rg = value; }

13

}
public string DataNascimento
{
get { return this.dataNascimento; }
set { this.dataNascimento = value; }
}
public string Telefone
{
get { return this.telefone; }
set { this.telefone = value; }
}
public string NPai
{
get { return this.nPai; }
set { this.nPai = value; }
}
public string NMae
{
get { return this.nMae; }
set { this.nMae = value; }
}
public string Email
{
get { return this.email; }
set { this.email = value; }
}

class funcionario : pessoa


{
private int idFuncionario;
private string setor;
private string cargo;
public int IdFuncionario
{
set { IdFuncionario = value; }
get { return IdFuncionario; }
}
public string Setor
{
set { Setor = value; }
get { return Setor; }
}
public string Cargo
{
set { Cargo = value; }
get { return Cargo; }
}

public partial class tinicial : Form


{
public tinicial()
{
InitializeComponent();

14

}
private void timer1_Tick(object sender, EventArgs e)
{
if (progressBar1.Value < 100)
{
progressBar1.Value = progressBar1.Value + 5;
}
else
{
timer1.Enabled = false;
tcadastro fcd = new tcadastro();
fcd.Show();
this.Visible = false;
}
}
}

public partial class cadastrov : Form


{
public cadastrov()
{
InitializeComponent();
}
public void limparcampo()
{
txtFabricante.Clear();
txtModelo.Clear();
txtAno.Clear();
txtCor.Clear();
txtPlaca.Clear();
}
private void cancelar_Click(object sender, EventArgs e)
{
tcadastro tcd = new tcadastro();
tcd.Show();
this.Visible = false;
}
private void editar_Click(object sender, EventArgs e)
{
this.limparcampo();
}
private void salvar_Click(object sender, EventArgs e)
{
this.limparcampo();
MessageBox.Show("Veiculo cadastrado com sucesso");
this.Close();
}

15

public partial class cadastrof : Form


{
public cadastrof()
{
InitializeComponent();
}
public void limparcampo()
{
txtIdfuncionario.Clear();
txtNome.Clear();
txtCep.Clear();
txtEstado.Clear();
txtRua.Clear();
txtCidade.Clear();
txtRg.Clear();
txtCpf.Clear();
txtDnascimento.Clear();
txtNpai.Clear();
txtNmae.Clear();
txtTelefone.Clear();
txtEmail.Clear();
txtSetor.Clear();
txtCargo.Clear();
}
private void foto_click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pictureBox1.ImageLocation = openFileDialog1.FileName;
pictureBox1.Load();
}
}
private void cancelar_Click(object sender, EventArgs e)
{
tcadastro tcd = new tcadastro();
tcd.Show();
this.Visible = false;
}
private void editar_Click(object sender, EventArgs e)
{
this.limparcampo();
}
private void salvar_Click(object sender, EventArgs e)
{
this.limparcampo();
MessageBox.Show( "Cadastro realizado com sucesso");
this.Close();
}

16

}
}

17

3.3 Programao para Web

Segue o cdigo da implementao em php da reserva, verificao da


reserva e devoluo do veiculo.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>CADASTRO DE FUNCIONARIO COM BANCO DE DADOS E PHP</title>
<style type="text/css">
<!-.style1 {
color: #FF0000;
font-size: x-small;
}
.style3 {color: #0000FF; font-size: x-small; }
</style>
<script type="text/javascript">
function validaCampo()
{
if(document.cadastro.nome.value=="")
{
alert("O Campo nome obrigatrio!");
return false;
}
else
if(document.cadastro.email.value=="")
{
alert("O Campo email obrigatrio!");
return false;
}
else
if(document.cadastro.endereco.value=="")
{
alert("O Campo endereo obrigatrio!");
return false;
}
else
if(document.cadastro.cidade.value=="")
{
alert("O Campo Cidade obrigatrio!");
return false;
}
else
18

if(document.cadastro.estado.value=="")
{
alert("O Campo Estado obrigatrio!");
return false;
}
else
if(document.cadastro.bairro.value=="")
{
alert("O Campo Bairro obrigatrio!");
return false;
}
else
if(document.cadastro.pais.value=="")
{
alert("O Campo pas obrigatrio!");
return false;
}
else
if(document.cadastro.login.value=="")
{
alert("O Campo Login obrigatrio!");
return false;
}
else
if(document.cadastro.senha.value=="")
{
alert("Digite uma senha!");
return false;
}
else
return true;
}
<!-- Fim do JavaScript que validar os campos obrigatrios! -->
</script>
</head>
<body>
<?php
// RECEBENDO OS DADOS PREENCHIDOS DO FORMULRIO !
$nome= $_POST ["nome"];
$email= $_POST ["email"];
$ddd= $_POST ["ddd"];
$tel= $_POST ["telefone"];
$endereco= $_POST ["rua"];
$cidade= $_POST ["cidade"];
19

$estado= $_POST ["estado"];


$bairro = $_POST ["bairro"];
$pais= $_POST ["pais"];
$senha= $_POST ["cep"];
$news= $_POST ["news"];
$sexo= $_POST ["sexo"];
//Gravando no banco de dados ! conectando com o localhost - mysql
$conexao = mysql_connect("localhost","root"); //localhost onde esta o banco de
dados.
if (!$conexao)
die ("Erro de conexo com localhost, o seguinte erro ocorreu -> ".mysql_error());
//conectando com a tabela do banco de dados
$banco = mysql_select_db("funcionario",$conexao); //nome da tabela que deseja que
seja inserida os dados cadastrais
if (!$banco)
die ("Erro de conexo com banco de dados, o seguinte erro ocorreu -> ".mysql_error());

//Query que realiza a insero dos dados no banco de dados na tabela indicada acima
$query = "INSERT INTO `funcionario` ( `nome` , `email` , `sexo` , `ddd` , `telefone` ,
`rua` , `cidade` , `estado` , `bairro` , `pas` ,'cep' `news` , `id` )
VALUES ('$nome', '$email', '$sexo', '$ddd', '$telefone', '$rua', '$cidade', '$estado',
'$bairro', '$pais', '$login', '$cep', '')";
mysql_query($query,$conexao);
echo "Seu cadastro foi realizado com sucesso!Agradecemos a ateno.";
//mensagem que escrita quando os dados so inseridos normalmente.
?>
<form
id="cadastro"
name="cadastro"
method="post"
action="cadastro.php"
onsubmit="return validaCampo(); return false;">
<table width="625" border="0">
<tr>
<td width="69">Nome:</td>
<td
width="546"><input
name="nome"
type="text"
id="nome"
size="70"
maxlength="60" />
<span class="style1">*</span></td>
</tr>
<tr>
<td>Cep:</td>
<td><input name="cep" type="text" id="cep" size="70" maxlength="60" />
<span class="style1">*</span></td>
</tr>
<tr>
20

<td>Estado:</td>
<td><select name="estado" id="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>
<span class="style1">*
</span></td>
</tr>
<tr>
<td>Rua:</td>
<td><input name="rua" type="text" id="rua" size="70" maxlength="70" />
<span class="style1">*</span></td>
</tr>
<tr>
<td>Cidade:</td>
<td><input name="cidade" type="text" id="cidade" maxlength="20" />
<span class="style1">*</span></td>
</tr>
<tr>
<td>Bairro:</td>
<td><input name="bairro" type="text" id="bairro" maxlength="20" />
21

<span class="style1">*</span></td>
</tr>
<tr>
<td>Pas:</td>
<td><input name="pais" type="text" id="pais" maxlength="20" />
<span class="style1">*</span></td>
</tr>
<tr>
<td>DDD:</td>
<td><input name="ddd" type="text" id="ddd" size="4" maxlength="2" />
Telefone:
<input name="telefone" type="text" id="telefone" />
<span class="style3">Apenas nmeros</span> </td>
</tr>
<tr>
<td>Email:</td>
<td><input name="email" type="text" id="email" size="70" maxlength="60" />
<span class="style1">*</span></td>
</tr>
<tr>
<td>Sexo:</td>
<td><input name="sexo" type="radio" value="Masculino" checked="checked" />
Masculino
<input name="sexo" type="radio" value="Feminino" />
Feminino <span class="style1">*</span> </td>
</tr>
<tr>
<td colspan="2"><input name="news" type="checkbox" id="news" value="ATIVO"
checked="checked" />
Desejo solicitar uma reserva de veiculo ao setor de frota </td>
</tr>
<tr>
<td colspan="2"><p>
<input name="cadastrar" type="submit" id="cadastrar" value="Concluir meu
Cadastro!" />

<input name="limpar"
preenchidos!" />

type="reset"

id="limpar"

<span class="style1">* Campos com * so obrigatrios!


<p> </p></td>
</tr>
</table>
</form>

value="Limpar

Campos

</span></p>

22

</body>
</html>

Temos em seguida tela do cadastro de funcionrios e de veiculos.

23

24

4. CONCLUSO

Para que um imvel construdo, seja ele simples ou complexo, no se pode apenas
confiar no tato do construtor, ainda que este seja muito experiente.
necessrio que se faa um planejamento. Que se apure as reais necessidades da
construo, ao que ou a quem ela atender. O tipo de terreno em que ela se encontra,
consequentemente que tipo de material ser utilizado, entre outras coias.
Em resumo, preciso que se tenha um projeto para que tudo saia como o planejado.
No que tange aos sistemas de informao no diferente.
Embora o usurio no tenha este conhecimento, os sistemas no so simplesmente as
telas apresentadas em seu monitor. So muito mais que isso.
So o resultado de todo um processo de pesquisa de levantamento de requisitos,
colocando em detalhes o papel de cada objeto dentro do sistema, e como estes objetos
iro interagir entre si.
Alm disso, como este tipo de sistema gera informao, a construo de um banco de
dados normalizado tambm importante.
E aprovitar das tecnologias mais modernas, como a internet, para que os processos
realizados sejam mais geis e seguros uma outra maneira de tornar o sistema mais
acessvel.
Desta forma, realizar todas as etapas do projeto para a construo de um sistema de
infomao to importante na rea da tecnologia quanto na rea da construo civil.

25

5. Referncias Bibliogrficas

NISHIMURA, Roberto Yukio. Banco de Dados II. So Paulo: Pearson Prentice Hall,
2009.
Mozer, Marris. Sistemas Web. Londrina: Editora e Distribuidora Educacional S.A. 2014.
Soler, Luciano. Desenvolvimento de Aplicao Web. So Paulo: Pearson Education
do Brasil. 2010.
Freitas, Veronice de. Tcnicas de Programao. Londrina: Editora e Distribuidora
Educacional S.A. 2014.

26