portfolio unopar

32
1 SISTEMA DE ENSINO PRESENCIAL CONECTADO ANAISE E DESENVOLVIMENTO DE SISTEMAS MARCOS AUGUSTO MOURA JORGE FILHO PRODUÇÃO TEXTUAL INDIVIDUAL INTERDISCIPLINAR

Upload: thiago-rocha

Post on 03-Aug-2015

1.165 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Portfolio Unopar

1

SISTEMA DE ENSINO PRESENCIAL CONECTADOANAISE E DESENVOLVIMENTO DE SISTEMAS

MARCOS AUGUSTO MOURA JORGE FILHO

PRODUÇÃO TEXTUAL INDIVIDUAL INTERDISCIPLINAR

Seabra - BA2012

Page 2: Portfolio Unopar

2

MARCOS AUGUSTO MOURA JORGE FILHO

PRODUÇÃO TEXTUAL INDIVIDUAL INTERDISCIPLINAR

Trabalho apresentado ao Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistema da UNOPAR - Universidade Norte do Paraná, para as disciplinas - Análise de Sitemas III, Desenvolvimento Orientado a Objeto II, Ética e Responsabilidade Social, Comunicação de Dados e Teleprocessamentos, Linguagem e Técnicas de Programação III e Seminário IV.

Professores. Polyanna Pacheco, Paulo Kiyoshi, Sérgio de Goes, Anderson Emidio e Marcio Roberto Chiaveli.

Seabra - BA

2012

Page 3: Portfolio Unopar

3

SUMÁRIO

1. Introdução --------------------------------------------------------------------- 04

2. Objetivo ------------------------------------------------------------------------- 05

3. Desenvolvimento ------------------------------------------------------------ 06

3.1 Diagrama de Classe ---------------------------------------------------- 06

3.2 Ética ------------------------------------------------------------------------- 08

3.3 Fibra Óptica --------------------------------------------------------------- 10

3.4 Aplicações Desktop Visual C# -------------------------------------- 12

3.5 ORM (Object Relacional Mapping) --------------------------------- 21

4. Conclusão ---------------------------------------------------------------------- 23

5. Referencias --------------------------------------------------------------------- 24

Page 4: Portfolio Unopar

4

INTRODUÇÃO

Com base no cenário proposto “Nossa Locadora de Livros”, uma

empresa privada com fins lucrativos, apresenta a necessidade de contratar uma

empresa de TI (Tecnologia da Informação) para informatizar as primeiras rotinas de

escritório. Com a criação desse software a empresa possibilitará controlar os

empréstimos e devoluções dos livros com mais precisão e controle sobre os

mesmos.

Sendo assim, essa produção de texto interdisciplinar busca realizar

alguns passos de como se implementar tecnologia da informação em uma empresa.

Foi criado um Diagrama de Classe onde serão colocadas em prática as

funcionalidades no projeto do software, apresentando sua importância, mas sem

esquecer como é trabalhar na prática as questões éticas e as características de uma

empresa responsável socialmente.

Outro ponto analisado é sobre as fibras ópticas, uma tecnologia

muito usada nos dias de hoje para a comunicação de dados, identificando as

vantagens na sua utilização. Será apresentado como é um processo de construção

de uma aplicação desktop utilizando o Visual Studio com C# para uma conexão com

o banco de dados e um breve tutorial para descrever esse processo que estará

presente no software da empresa “Nossa Locadora de Livros”.

Para fortalecer ainda mais essas informações foi levantado um

estudo sobre ORM (Object Relational Mapping) mapeamento objeto relacional,

citando as ferramentas usadas para auxiliar neste processo, onde será proposto as

vantagens e desvantagens na utilização dessa técnica.

Page 5: Portfolio Unopar

5

OBJETIVO

A referida produção textual proposta neste quarto semestre de

análise e desenvolvimento de sistemas tem por objetivo aplicar os conceitos de

todas as disciplinas apresentadas nesse semestre de forma interdisciplinar, com o

proposito comum de fazer a interação de todos os assuntos para um melhor

entendimento dos alunos do mesmo.

Page 6: Portfolio Unopar

6

DIAGRAMA DE CLASSE

Na linguagem de programação, o diagrama de classe é uma

importante ferramenta para a documentação de um sistema de software, sendo ele o

mais importante diagrama da UML. Segundo FOWLER (2000, p. 57), “Um diagrama

de classe descreve os tipos de objetos no sistema e os vários tipos de

relacionamentos estáticos que existem entre eles”.

O modelo de classe resulta de um processo de abstração onde são

identificados os objetos relevantes do sistema em estudo. Um objeto é uma

ocorrência que tem interesse para o sistema em estudo e que se pretende descrever

no seu ambiente, contendo identidade e comportamento.

Partindo desse cenário temos os conceitos de diagrama de classe:

Classe: A classe é um elemento abstrato que representa um conjunto de

objetos, contendo as especificações do objeto e suas características: atributos

e métodos (ações / comportamentos).

Atributo: Características da classe:

Visibilidade: Pública, onde outras classes tem acesso aos

atributos; Privada, o atributo só pode ser acessado diretamente

pela própria classe e Protegida, que é acessado pelo

relacionamento da classe como a classe externa.

Nome: Identificação do atributo.

Tipo de dados: Tipo de dados do atributo.

Multiplicidade: Os relacionamentos.

Valor inicial: Depende muito da linguagem de programação.

Propriedade: Características do elemento.

Operação: Função requerida a um objeto.

Nome.

Visibilidade.

Parâmetros.

Associação: Relacionamento entre as classes.

Nome: Nome da associação.

Multiplicidade.

Navegação: De onde vêm as informações da classe e para onde

vai.

Page 7: Portfolio Unopar

7

Com base nas informações sobre o diagrama de classe será

desenvolvido a modelagem do cenário proposto “Nossa Locadora de Livros”, para

um melhor entendimento sobre o assunto:

Page 8: Portfolio Unopar

8

ÉTICA

A gestão socialmente responsável abrange temas que vão desde

códigos de ética, práticas de boa governança corporativa, compromissos públicos

assumidos pela empresa, gestão e prevenção de riscos, até mecanismos

anticorrupção, diversidade, bem como a extensão desses compromissos por toda a

cadeia produtora envolvida na relação com os fornecedores.

Segundo Rodrigues e Souza (1994, p. 13), “a Ética é um conjunto de

princípios e valores que guiam e orientam as relações humanas”. Ser ético,

portanto, é buscar sempre estar de bem consigo mesmo, combater vícios e

fraquezas, cultivar virtudes, proteger e preservar a vida e a natureza é buscar ser

feliz. O mesmo requer nas empresas, onde a prática da ética nas organizações

exige convicção, vontade política e competência adequada para tornar as ações

empresariais concretas e objetivas, minimizando as resistências e as

incompreensões.

A organização pautada na gestão da responsabilidade social

necessita assumir determinados tipos de compromisso, direcionados a garantir o

bem-estar dos seus colaboradores ou dos grupos sociais impactados direta ou

indiretamente com suas atividades. A responsabilidade social corporativa reflete a

necessidade de as empresas devolverem benefícios às comunidades nas quais

estão instaladas e podemos citar como exemplo: campanhas de arrecadação de

alimentos e agasalhos, ou doações materiais ou financeiros.

LIMA, (2002) afirma que a cidadania empresarial corresponde ao

exercício pleno da responsabilidade social pela empresa. O exercício da cidadania

empresarial é resultante das ações internas e externas de responsabilidade social

desenvolvida pelas empresas. Com isso, a empresa torna-se cidadã quando retribui

para o desenvolvimento da sociedade por meio de ações sociais direcionadas para

suprir ou atenuar as principais carências dela em termos de serviços e infraestrutura

de caráter social, não que isso seja uma obrigação, mas que seja de forma

involuntária, tendo apenas o sentimento de ajudar ao próximo.

O atendimento ao cliente é sem dúvida um dos grandes diferenciais,

referindo à competitividade no mercado. A principal causa é a crescente exigência

do público consumidor, e a concorrência acirrada entre as empresas do mesmo

Page 9: Portfolio Unopar

9

ramo onde o menor preço nem sempre é o principal diferencial. Nesse contexto

englobam aspectos que determinam os direitos e deveres de ambas as partes, mas

o mais importante é manter o bom relacionamento com o cliente, reconhecendo as

eventuais falhas ou erros da empresa no processo e agir sempre de forma ética.

Como dizia Santos (1999, apud Ourives, 2006. p6), nos dias de hoje é preciso

pensar e pensar rápido, com coragem e ousadia, numa nova ética, para o

desenvolvimento.

Como produto deste programa, são coletadas as sugestões de todos

os empregados e seus dependentes com relações às ações sociais prioritárias a

serem implementadas pela empresa, firmando um compromisso entre empresa e

funcionário, confirmado por Nash (1993, p.6): “a ética dos negócios é o estudo da

forma pela quais normas morais pessoais se aplicam às atividades e aos objetivos

da empresa comercial”, ou seja, a ética empresarial estabelece as normas de

conduta humana dentro das organizações e também determina o bom

relacionamento entre empresa, funcionário e cliente.

Portanto, os profissionais envolvidos no sistema devem sempre

manter preocupação e atenção com a ética, concentrando-se em dois grandes

pontos: estar cumprindo suas obrigações legais, dentro das normas

preestabelecidas; e que mesmo que os clientes não tenham seus desejos atendidos,

ter a preocupação para com os próximos, para não acontecer os eventuais erros.

Dessa forma, o empresário poderá fornecer programas para o desenvolvimento

administrativo que incorpore a ética nos treinamentos internos da empresa, pode

assim, alcançar todos os níveis hierárquicos, fazendo com que a ética seja praticada

amplamente por todos, sem distinção, prevalecendo o respeito mútuo.

Page 10: Portfolio Unopar

10

FIBRA ÓPTICA

A fibra óptica é um tipo de meio de transmissão, geralmente

composto por silício amorfo, capaz de conduzir a luz. O princípio de funcionamento é

bem simples e de fácil entendimento. Trata-se de um guia de onda de luz formado

por um núcleo e uma casca com índices de refração diferentes.

Sendo assim, para que ocorra o efeito da reflexão interna total, é

obrigatório que o índice de refração do núcleo seja maior que o índice de refração da

casca, fazendo com que a onda luminosa curve-se para o interior da casca e

prolongue ao longo da fibra óptica, assim, através de reflexões sucessivas, a luz

trafega de um equipamento para o outro em fibras monomodo e multimodo.

As fibras ópticas são divididas em dois tipos: A fibra óptica

multimodo está diretamente relacionada ao diâmetro no núcleo, já as fibras ópticas

do tipo monomodo possuem diâmetros de núcleo muito menores de ordem de 10

micrômetros que as fibras ópticas multimodo, sendo de 50 micrômetros.

Um bom exemplo a ser citado é das grandes redes de operadoras

de telecomunicações, onde são construídas a partir de cabos com fibra óptica do

tipo monomodo. Isso se dá pelo fato que as fibras ópticas monomodo apresentam

melhor desempenho na característica de atenuação do sinal, pois permite que a

rede seja mais abrangente, melhor dizendo, que o sinal possa ser levado a

distâncias bem maiores.

É de grande importância ressaltar que a contratação de dados gera

um certo custo, e o valor cobrado pelas operadoras de telecomunicações não segue

uma regra especifica, pois não existe uma tabela de preços de acordo com a taxa de

dados requerida, o valor de um circuito será determinado pelo mercado. Por

exemplo: Possui uma região onde várias operadoras de telecomunicações atuem, o

valor dos circuitos serão mais baixos por uma questão óbvia de concorrência direta,

mas se em uma determinada localidade apenas uma operadora atue, o custo do

mesmo circuito (mesma taxa) será maior.

Levando em conta essas informações acima e ainda a facilidade de

acesso a fibra óptica ao cliente final, pode ter variações de até uns 900% no preço

final de um circuito. Sendo assim, considerando link óptico e equipamentos inclusos

os preços podem variar:

Page 11: Portfolio Unopar

11

Circuito de 2048 Kbps -> de R$ 700,00 à R$ 1.500,00.

Circuito de 64 Kbps -> de R$ 100,00 à R$ 1.000,00

No geral, possuem várias taxas possíveis entre as citadas acima,

bem como taxas superiores a 2048 Kbps, porém estas são as mais comuns. De fato

essa solução pode não ser a mais barata, mais se apresenta extremamente viável

em situações que exigem confiabilidade aliada à garantia de banda de transmissão,

onde o circuito do cliente nunca irá ficar inoperante, mesmo sabendo que qualquer

sistema está sujeito a falhar, mais com essas condições as falhas se tornam quase

nulas.

Exemplo de fibra óptica:

Page 12: Portfolio Unopar

12

APLICAÇÃO DESKTOP VISUAL C#

Por meio de pesquisa será desenvolvida passo-a-passo uma

aplicação de cadastro simples de Cliente em Windows Forms usando a linguagem

C# e a conexão SQL com o banco de dados. Esse pequeno tutorial apresentará,

com exceção da criação do banco de dados e das tabelas, todo o resto será via

código, desde a criação dos métodos de acesso aos dados, até os métodos de

inclusão, exclusão, consulta e atualização dos dados.

Será dado inicio com a criação de um novo projeto do tipo Windows

Forms. O nome dado será CadastrodeClientes e clique em “OK”.

O Próximo passo é abrir o Server Explorer (CTRL + W + L), clique

com o botão direito em cima Data Connections e clique em Create New SQL

Server Database:

Page 13: Portfolio Unopar

13

Em Server Name, escolha o nome do seu servidor SQL, em Log on

the Server, deixe como Use Windows Authentication, dê o nome de Clientes ao

seu DataBase e clique em “OK”. Em seguida, dará pra ver que o database foi

criado. Expandindo-o, clique com o botão direito em Table e clique em Add New

Table.

A tabela cliente foi criada como exemplo, onde IDCliente será a

Primary Key clicando em Set Primary Key no menu acima:

Salve a tabela com o nome tbCliente. Lembre-se de especificar que

a coluna IDCliente é Identity, terá um número próprio, assim não precisará

especificá-lo na hora da inserção dos dados. Só alterar a opção, Is Identity, como

mostra a imagem abaixo:

De inicio será ciada 3 botões no formulário:

Inserir, Excluir e Atualizar e fazer as instruções SQL via código. Mais a frente

Page 14: Portfolio Unopar

14

faremos a consulta aos dados inseridos por meio do controle DataGridView, do

Visual Studio.

Nas propriedades dê os nomes de btnInseris, btnExcluir e btn

Atualizar. A Partir de agora entrará a linha de comando do código do botão Inserir,

será necessário também passar a string de conexão do banco de dados.

Segue abaixo todo o código comentado do botão Inserir:

private void btnInserir_Click(object sender, EvantArgs e)

{

try

}

//Instancio o SqlConnection, passando como parâmetro a string de conexão ao banco

SqlConnection conn = new SqlConnection (@”Data Source=FULANO-505050\SQLEXPRESS;

Initial Catalog=Clientes; Integrated Security=True; Polling=False”);

// Instancio o SqlConnection, responsável pelas instruções SQL e

//Passo ao SqlCommand que a conexão que ele usará é o SqlConnection

SqlCommand comm = new SqlCommand();

comm.Connection = conn;

//No CommandText do SqlCommand, passo a instrução SQ referente à inserção dos dados

comm.CommandText = “INSERT INTO tbCLIENTES (NOMECLIENTE,

ENDERECOCLIENTE, “ + BAIRRO, ESTADO, TELEFONECLIENTE, CELULARCLIENTE,

EMAILCLIENTE) “ +

//Nos Values, passo os valores parametrizados usando @ para garantir a segurança dos

dados

“VALUE (@NOMECLIENTE, @ENDERECOCLIENTE, @BAIRRO, @ESTADO, “ +

“ @TELEFONECLIENTE, @CELULARCLIENTE, @EMAILCLIENTE) “+

//Agora passo os valores parametrizados por meio do método AddWithValue

comm.Parameters.AddWithValue (“@NOMECLIENTE”, Marcos”);

comm.Parameters.AddWithValue (“@ENDERECOCLIENTE”, Rua A, 00”);

comm.Parameters.AddWithValue (“@BAIRRO”, Centro”);

comm.Parameters.AddWithValue (“@ESTADO”, Bahia”);

comm.Parameters.AddWithValue (“@TELEFONECLIENTE”, 0000-0000”);

Page 15: Portfolio Unopar

15

comm.Parameters.AddWithValue (“@CELULARCLIENTE”, 0000-0000”);

comm.Parameters.AddWithValue (“@EMAILCLIENTE”, [email protected]”);

//Abro a concexão e uso o método ExecuteNonQuery, após fecho a conexão

conn.Open();

comm.ExecuteNonQuery();

conn.Close();

//Exibo uma mensagem no usuário de inserção realizada com sucesso

MessageBox.Show(“Dados inseridos com sucesso!”, “Mensagem”,

MessagerBoxButtons.OK, MessagerBoxIcon. Information);

}

Se tudo foi feito como no exemplo, aparecerá a mensagem dizendo

que a inclusão foi realizada com sucesso quando você for executar o programa.

Agora vamos codificar o botão Excluir.

private void btnExcluir_Click(object sender, EvantArgs e)

{

try

}

SqlConnection conn = New SqlConnection (@Data Source FULANO-505050\

SQLEXPRESS; Initial Catalog=Cliente;Integrated Security=True;Pooling=False”);

SqlCommand comm = new Sql Command();

comm.Connection = conn;

comm.CommandText = “DELETE FROM tbCLIENTE WHERE IDCLIENTE =

@IDCLIENTE”;

comm.Parameters.AddWithValue (“@IDCLIENTE”, 1);

conn.Open();

comm.ExecuteNonquery();

conn.Close();

MessageBox.Show(“Dados atualizados com sucesso!”, “Mensagem”,

MenssageBoxButtons.OK, MenssagerBoxIcon.Information);

}

catch (Exception)

{

throw;

}

}

Neste exemplo alteramos somente o Endereço, Telefone e Email,

mais você pode alterar todos os campos se assim achar necessário. Salve, compile

e veja o resultado na sua tabela.

Page 16: Portfolio Unopar

16

Antes do Update:

Depois do Update:

A partir de agora iremos customizar o formulário de Cadastro de

Clientes, adicionaremos texbox e usaremos o controle dataGridview, do C#. Ficará

assim:

Como se pode perceber, foram colocados os campos referentes às

colunas da tabela, com exceção da coluna ID, que é Identity (tem uma contagem

pré-definida) e não precisa ser informada. Os nomes dos controles usados na

propriedade (NOME) ficarão assim:

Labels: lblMensagem, lblNome, lblEndereco, lblBairro, lblEstado, lblTelefone,

lblCelular e lblEmail.

TextBoxes: txtMensagem, txtNome, txtEndereco, txtBairro, txtTelefone,

txtCelular e txtEmail.

ComboBox (também chamado de DropDownlist): ddlEstado.

Button: btnGravar, btnNovo e btnVerCadastros.

Voltando ao formulário, pode-se perceber que foi alterado também

os 3 botões que antes eram Inserir, Excluir e Atualizar e que agora passam a se

Page 17: Portfolio Unopar

17

chamar Gravar Cadastro, Novo Cadastro e Ver Cadastro. Como os campos tem

um limite de caracteres, temos que fazer o mesmo nos texboxes que receberão os

dados. Por exemplo, na coluna Nome, foi atribuído o valor máximo de 50 caracteres.

Para que façamos

o mesmo no txtNome, devemos alterar a propriedade MaxLength (que está com o

valor padrão, que é 32767) para 50. Faça isso com os demais controles, com

exceção do ComboBox de Estado que já terá os valores atribuídos a ele e o usuário

só precisará escolher um valor. Finalmente adicionaremos os códigos do botão de

gravar:

try

{

//Instancio o SqlConnection, passando como parâmetro a string de conexão ao banco

SqlConnection conn = new SqlConnection (@Data Source=FULANO-505050\SQLEXPRESS;

Inicial Catalog=Clientes;Integrated Security=True;Pooling=False”);

//Instancio o SqlCommand, responsável pelas instruções SQL e

//Passo ao SqlCommand que a conexão que ele usará é o SqlConnection

SqlCommand comm = new SqlCommand();

comm.Connection = conn;

//No CommandText do SqlCommad, passo a instrução SQL referente a inserção dos dados

comm.CommandText = “INSERT INTO tbCLIENTE (NOMECLIENTE, ENDERECOCLIENTE,”

+ “BAIRRO, ESTADO, TELEFONECLIENTE, CELULARCLIENTE, EMAILCLIENTE) “ +

//Nos Values, passo os valores referentes aos controles digitados pelo usuário

“ VALUE (@NOMECLIENTE, @ENDERECOCLIENTE, @BAIRRO, @ESTADO, “ +

“ @TELEFONECLIENTE, @CELULARCLIENTE, @EMAILCLIENTE) “ ;

comm.Parameter.AddWithValue (“@NOMECLIENTE”, txtNome.Text);

comm.Parameter.AddWithValue (“@ENDERECOCLIENTE”, txtEndereco.Text);

comm.Parameter.AddWithValue (“@BAIRRO”, txtBairro.Text);

comm.Parameter.AddWithValue (“@ESTADO”, ddlEstado.SelectedItem.Tostrig());

comm.Parameter.AddWithValue (“@TELEFONECLIENTE”, txtTelefone.Text);

comm.Parameter.AddWithValue (“@CELULARCLIENTE”, txtCelular.Text);

Page 18: Portfolio Unopar

18

comm.Parameter.AddWithValue (“@EMAILCLIENTE”, txtEmail.Text);

//Abro a conexão, uso o método ExecuteNonQuery e fecho a conexão

conn.Open( );

comm.ExecuteNonQuery( );

conn,Close( );

//Exibo ao usuário a mensagem de inserção efetuada com sucesso

MessagerBox.Show (“Dados atualizados com sucesso!”, “Mensagem”,

MessageBoxButtons.OK, MessageBoxIcon.Information);

}

Logo acima de nosso código, dentro do Try/Catch, coloque este If,

que verifica se os controles estão diferentes de string.Empty (que significa que não

há valores inseridos). Se estão, o processamento normal de gravação continua.

Senão, eles entram no Else abaixo, que exibe uma mensagem de erro ao usuário:

Será criado o método do botão Novo, que irá limpar os dados dos

campos para o usuário fazer um novo cadastro. Insira o seguinte código:

private void btnNovo_Click(object sender, EventArgs e)

{

try

{

if (MessagerBox.Show(“Deseja cancelar o cadastro e fazer um novo?”, “Mensagem do

Sistema”,

MessagerBoxButtons.YesNo, MessegeBoxIcon.Question) == DialogResult.Yes)

{

txtNome.Text = “ ”;

txtEndereco.Text =” ”;

txtBairro.Text = “ ”;

txtEstado.SelectedIndex = -1;

txtTelefone.Text = “ “;

txtCelular.Text = “ “;

txtEmail.Text = “ “;

}

}

catch (Expextion)

{

Page 19: Portfolio Unopar

19

throw;

}

Agora vamos ao método do botão Ver Cadastros, que nos vai

mostrar um DataGridView com todos os cadastros criados. Antes disso, temos que

criar um novo form. Para isso, abra a Solution Explorer (CTRL + W + S), clique com

o botão direito no projeto, clique emAdd > Windows Form e dê o nome

de VerCadastros. Agora abra a ToolBox (CTRL + W + X), vá ao submenu Data e

arraste ao seu form o controle DataGridView. Precisamos adicionar

um DataSource ao nosso Grid. Para isso, clique na seta ao lado do Grid e clique

em Choose Data Source > Add Project Data Source, como mostra a imagem:

Na tela que aparece, escolha Database como fonte de dados e

clique em Next. Na próxima tela, selecione o Database referente a sua tabela de

Clientes, clique para ver a string de conexão e clique em Next.

Page 20: Portfolio Unopar

20

Na próxima tela, deixe selecionada a opção para salvar sua string de

conexão, troque o nome dela se desejar e clique em Next. Na próxima tela escolha

os objetos do banco que você deseja importar para seu Grid, dê um nome a seu

DataSet e clique em Finish:

O

Grid agora está com as informações provenientes da nossa tabela

de Clientes. Salve seu form e volte ao for de Cadastro. Dê dois cliques no botão Ver

Cadastro e apenas insira o código abaixo para ver o form criado com o grid:

private void btnVerCadastros_Click(object sender, EventArgs e)

{

try

{

VerCadastros frmVercadastros = new VerCadastros();

frmVerCadastros.Show();

}

catch (Exception

{

throw;

}

}

Agora compile o projeto, clique no botão Cadastro e veja o grid

preenchido, como mostra a imagem:

Page 21: Portfolio Unopar

21

ORM (Object Relacional Mapping)

Um ORM (Mapeamento Objeto Relacional) é um método poderoso

para concepção e consulta de modelos de dados no nível conceitual, onde a

aplicação é descrita em termos facilmente compreendidos pelos usuários não

técnicos. Podendo ser descrito também como um Framework ou um conjunto de

classes que permite fazer esse trabalho sem precisar escrever códigos de conexão

com o banco de dados, querys de SQL a todo o momento, preservando as

características de orientação a objetos da linguagem face à natureza relacional dos

bancos de dados atuais.

Na prática, os modelos de dados ORM normalmente captam mais

regras de negócio, e são mais fáceis de validar e evoluir do que os modelos de

dados em outras abordagens. Sendo assim, o mapeamento objeto-relacional é uma

técnica que visa diminuir a chamada impedância entre o modelo de objetos e o

modelo relacional em Banco de Dados.

As ferramentas ORM, fornecem funcionalidades através do

mapeamento entre o modelo de negócio lógico e o modelo físico de

armazenamento, facilitando a implementação do modelo de domínio padrão.

Contudo, as ferramentas fornecem uma série de serviços, assim, permitindo que os

desenvolvedores se concentrem na lógica de negócio do aplicativo ao invés de

CRUD repetitivo (Ler, Criar, Atualizar e Deletar) lógico.

Vantagem de se usar um ORM

Escreve-se menos código e programa com muito mais produtividade;

Melhora a padronização da sua aplicação;

Gerenciamento de transações e isolamento. Todas as mudanças ocorrem

de objetos com escopo de uma transação. Toda a transação pode ser

confirmada ou revertida. Operações múltiplas podem ser ativas na

memória ao mesmo tempo;

É mais fácil de dar manutenção no projeto;

Navegação. Pode se navegar relações de objeto transparente. Objetos

relacionados são carregados automaticamente quando necessário.

Page 22: Portfolio Unopar

22

Desvantagem de se usar um ORM

Dados e comportamento não são separados;

Cada tecnologia ORM / produto tem um conjunto diferente de APIs e

portar códigos entre eles não é fácil.

Exemplo de um código em .Net usando ORM:

Usuario.AddNew();  

Usuario.FirstName = this.txtFirstName.Text;  

Usuario.LastName = this.txtLastName.Text;  

Usuario.Save();

Ferramentas que auxiliam no processo do ORM:

Gentle.NET – Características: Persistência, Querys, Cache e

Relacionamento;

Subsonic – Características: Persistência, Coleções, Suporte a alguns

bancos, Querys, Configuração rápida, Releases Rápidos;

NHibernate – Características: Persistência, Herança, Relacionamento,

Querys, Suporte a vários bancos, Transações e muito mais;

CODUS – Características: Persistência, Herança, Relacionamento,

Suporte a vários bancos, Querys, NUnit, WebServices, Coleções, Suporte

a Nhibernate/Ibatis,Gentle;

ObjectMapper – Características: IDE UML que mapeia para o ORM

(Npersist e Nhibernate);

DataObjects.NET – Características: Persistência, Herança,

Relacionamento, Querys, Suporte a vários bancos, Transações,

Segurança, Remoting.

Page 23: Portfolio Unopar

23

CONCLUSÃO

Em virtude dos fatos mencionados, este trabalho interdisciplinar

buscou enfatizar de forma clara a necessidade que muitas empresas têm em

desenvolver software para informatizar seus serviços, com o objetivo de atender a

demanda que cresce a cada dia mais. Foi proposto ainda, a criação de um diagrama

de classe e suas características, mostrando como seriam implementadas as

funcionalidades no projeto, identificando no contexto a noção de uma empresa

responsável socialmente. Sendo assim, o texto buscou familiarizar o leitor, das

práticas de como se desenvolver passo-a-passo um software.

Page 24: Portfolio Unopar

24

REFERENCIAS

CALDEIRÃO, Denise Morselli Fernandes – Ética e responsabilidade social :

sistemas IV / Denise Morselli Fernandes Caldeirão, Thiago Nunes Bazoi, Nádia

Brunetta. – São Paulo : Person Prentice Hall, 2009.

Disponível em: http://www.devmedia.com.br/

Disponível em: http://pt.wikipedia.org/wiki/Fibra_%C3%B3ptica

Disponível em: http://gilmarborba.com.br/?p=184

Disponível em: http://www.youtube.com/watch?v=bqU0JSWOHbU

DENNY, Ercílio A. Ética e sociedade. Capivari: Opinião E., 2001

FLORES, Emerson Ricardo – Linguagens e técnicas de programação III :

sistemas / Emerson Ricardo Flores. – São Paulo : Person Prentice Hall, 2009.

NASH, Laura, Ética nas Empresas: boas intenções a parte. São Paulo: Makron

Books, 2001.

TANAKA, Simone Sawaski – Análise de sistemas III : sistemas / Simone Sawaki

Tanaka. – São Paulo ; Person Prentice Hall, 2009.