POO, BD, AOO, WEB

Embed Size (px)

DESCRIPTION

Trabalho acadêmico sobre Programação Orientada a Objetos, Banco de Dados, Análise Orientada a Objetos e web.

Citation preview

  • 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

  • 5

    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.

  • 6

    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.

  • 7

    3. DESENVOLVIMENTO

    3.1 Anlise Orientada a Objetos

    Diagrama de Casos de Uso

  • 8

    Diagrama de Classes

  • 9

    Diagrama de Sequncia

  • 10

    Diagrama de Estado

  • 11

    3.2. Banco de Dados II

  • 12

    3.3 Programao Orientada a Objetos Implementao em C# do Cadastro de Funcionrios e de Veculos

    using System; using System.Collections.Generic; using System.Linq; using 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;

  • 13

    private string cidade; private string estado; private string cep; private string sexo; private string cpf; private string rg; private string dataNascimento; private string telefone; private string nPai; private string nMae; private string 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; }

  • 14

    } 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();

  • 15

    } 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(); }

  • 16

    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(); }

  • 17

    } }

  • 18

    3.3 Programao para Web

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

    reserva e devoluo do veiculo.

    CADASTRO DE FUNCIONARIO COM BANCO DE DADOS E PHP

  • 19

    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; }

  • 20

    $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. ?> Nome: * Cep: *

  • 21

    Estado: Selecione... AC AL AP AM BA CE ES DF MA MT MS MG PA PB PR PE PI RJ RN RS RO RR SC SP SE TO * Rua: * Cidade: * Bairro:

  • 22

    * Pas: * DDD: Telefone: Apenas nmeros Email: * Sexo: Masculino Feminino * Desejo solicitar uma reserva de veiculo ao setor de frota * Campos com * so obrigatrios!

  • 23

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

  • 24

  • 25

    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.

  • 26

    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.