Você está na página 1de 25

SISTEMA DE ENSINO PRESENCIAL CONECTADO SUPERIOR EM ANLISE E DESENVOLVIMENTO DE SISTEMAS

HOLDERLAN DE SOUZA MOURO

PORTIFLIO

Parintins 2012

HOLDERLAN DE SOUZA

PORTIFOLIO

Trabalho apresentado s disciplinas do Curso Superior em Tecnologia em Anlise de Sistemas e Desenvolvimento de Sistemas,da Universidade Norte do Paran - UNOPAR.

Parintins 2012

SUMRIO

Introduo

Este trabalho aborda os temas relativos s diversas disciplinas cursadas no quarto semestre do curso de Tecnlogo em Analise de Sistemas e Desenvolvimento de Softwares. Neste trabalho vimos a criao de Diagramas de Uso de Caso com ferramentas CASE, como o ASTAH, diagramas de implantao, diagramas de estado, que nos mostram como entender melhor um sistema, seus requisitos, seiu ambiente operacional e de desenvolvimento, vimos o uso das chamadas, Stored Procedure, o Procedimento armazenado ou Stored Procedure uma coleo de comandos em SQL para dispensamento de Banco de dados. Encapsula tarefas repetitivas, aceita parmetros de entrada e retorna um valor de status (para indicar aceitao ou falha na execuo). O procedimento armazenado pode reduzir o trfego na rede, melhorar a performance, criar mecanismos de segurana, etc.Alm disto analisaremos o uso de Ferramentas de banco de dados Orientado a Objetos atravs do uso de ORM (Object Relational Mapping).

Desenvolvimento 4.1.1 AS vantagens do diagrama de estado decorrem do fato de que este diagrama denota de forma bem clara, as aes e os Estados dos Objetos, permitindo entender de que forma estes interagem , ou de que forma se do os seus comoportamentos e Seu estado.Podemos ver o diagrama de estados como um complemento para o diagrama de classes. Neste diagrama podemos mostrar qual o estado em que o nosso objeto esta naquele momento. O diagrama de estado deve ser construdo para os objetos que tem seus estados definidos e onde o comportamento do objeto muda por causa de um determinado estado. Podemos representar aqui o ciclo de vida dos objetos e como so afetados pelos eventos (erros, mensagens, condies).Os diagramas de estado comeam com um estado inicial (um circulo preto todo preenchido) e podem ter vrias sadas (um circulo com um X) ou fins (Um circulo com outro circulo menor preenchido).

Caractersticas Principais

Demonstrar os estados possveis de um objeto; Demonstrar a transio de um objeto para outro; Ajudam a visualizar a complexidade do sistema de forma simples;

Como fazer

Defina o objeto que ir representar;

Aqui podemos usar os diagramas de interao para nos ajudar Defina os eventos e estados que o objeto vai ter; ZEstabelea o incio e fim do seu objeto; Estabelea os estados de seu objeto, se possvel na ordem em que acontecem;
o

4.1.2 LEVAMENTO DE REQUISITOS

Qual o Tamanho do Espao fsico do empreendimento? Quantos computadores a empresa possui? Quantos setores existem na empresa? Quantos Funcionrios O sistema ser implantado em todos os computadores? Qual a configurao dos computadores?

180 m2

8 computadores

A empresa tem 4 setores, Administrao, Direo, Suporte e atendimento

Temos 12 Funcionrios

No ser

Computadores padro mini torre, Processador AMD Athlon II 2.4ghz, 2Gb Memoria DDR2 800mhz, Disco Rigido Sata II 250 Gb.

Qual SGBD o sistema utiliza Tem um computador que servidor de internet? Qual o sistema operacional utilizado no servidor?

Utiliza o ORACLE 11

sim

Linux UbuntuServer Qual o Sistema Operacional Usado nos Clientes: Linux Ubuntu 11.04LTS

4.2 QUESTES DE TICA E RESPONSABILIDADE SOCIAL

Uma empresa sria aquela plenamente comprometida com seus clientes e com a comunidade, sabendo destas responsabilidades e suas implicaes, temos como uma de nossas metas a segurana, a integridade e o sigilo dos dados de nossos clientes, como nosso sistema de biblioteca funciona diretamente integrado a rede, por ser um sistema web, os dados de nossos clientes sero armazenados em um servidor cloud computing, a chamada tecnologia de Nuvem, que uma das novas tendncias tecnolgicas da atualidade, estes dados manter-se-o apenas para acesso exclusivo de seus proprietrios, em contas particulares com criptografia. Utilizaremos o sistema de Cloud Storage (armazenagem na Nuvem) DropBox, O sistema da Dropbox oferece um free cloud Storage de 5GB de dados totalmente gratuitos que podem crescer para os 18GB de dados na nuvem, se recomendar aos seus amigos o servio. Para poderem manter as portas abertas, a empresa Dropbox vende planos de cloud Storage com capacidades que vo de 50GB a 500GB.Os ficheiros so guardados e mantidos atualizados dentro da pasta Dropbox num computador Mac ou Windows, e podem ser acedidos a partir de aplicativos para os smartphones e tablets ou ainda utilizando um qualquer browser Web moderno (ex. Internet Explorer, Safari, Firefox, Google Chrome, etc.). Segundo Carl Claunch (2008) Cloud Computing um estilo de computao onde os recursos de TI so enormemente escalveis e os recursos so fornecidos aos clientes como servios, atravs da Internet. Em outras palavras, a computao em nuvem uma soluo all-inclusive em que todos os recursos de informtica (hardware, software, redes, armazenamento, e assim por diante) so fornecidos aos usurios rapidamente e por demanda. Esses recursos ou servios so gerenciados para garantir alta disponibilidade, segurana e qualidade de servio. Para que isso ocorra de forma correta, eles devem possuir a habilidade de serem escalados, tanto o hardware como o software, de modo que os usurios recebam os recursos de que precisam.Em resumo, solues de computao em nuvem permitem a TI ser entregue como servio, ou seja, cloud computing pode ser definido como um modelo no qual a computao (processamento, armazenamento e softwares) est em algum lugar da rede e acessada remotamente via Internet. Por que devemos utilizar a computao em nuvem?

Existem muitas razes pelas quais mais e mais empresas esto mudando para solues de TI que incluem computao em nuvem. Primeiro de tudo, Cloud Computing pode reduzir os custos associados entrega de servios de TI. Segundo Clifton Ashley (diretor do Google na Amrica Latina), empresas perdiam por volta de 80% do tempo gasto com manuteno de sistemas e, por isso, as empresas perdiam oportunidades de negcios e seus focos passavam a ser reparos do sistema ao invs de se preocuparem com os servios que deveriam prestar. Nosso levantamento de requisitos para a criao do sistema de biblioteca loca fcil ser realizado em 2 meses, atravs de entrevistas com funcionrios, alunos de escolas da comunidades e a populao, para que entendamos quais as principais necessidades dos usurios da biblioteca.A equipe ser composta de 4 menbros da empresa e mais 2 da prpria biblioteca que nos auxiliaro fornecendo informaes a cerca da biblioteca. Sendo a responsabilidade social um elemento importante na construo de uma imagem slida e responsvel de uma grande empresa, temos como metas sociais, apartir da criao do software da nossa biblioteca, manter algumas bolsas de apoio a jovens estudantes , preferencialmente aqueles de baixa renda que queiram ingressar no curso de lgica de programao para que estes tenham um primeiro contato com o ramo de nossa empresa, escolhendo os alunos destaque para que estes atuem como estagirios na nossa empresa, alm disto vamos distribuir algumas cpias gratuitas do programa na comunidade , e tambm realizar a doao de alguns livros para a comunidade. Quanto a responsabilidade ambiental, nossa empresa utiliza-se de papel 100% reciclado, nossos funcionrios fizeram suas visitas para levantamento de requisitos locomovendo-se de bicicleta, em virtude de nossa cidade no possuir grandes distancias, em cidades maiores ao invs de cada um sair em seu carro usado um veiculo a lcool e outro movido a GNV, gas natural veicular que so muito menos poluentes que veculos movidos a gasolina ou diesel. 4.3 Livros digitais 1. Comunicao de Dados e Redes de Computadores Autor: Forouzan, Behrouz A.

Editora: Mcgraw-hill Interamericana 2. Comunicao de Dados para Microcomputadores Autor:Biondi, Rogerio Editora: BRASPORT 3. Redes de Computadores e Comunicao de Dados Autor:White, Curt M. Editora:Cengage Learning 4. Comunicao de Dados e Teleprocessamento Autor:Paulo Kiyoshi Nishitani Editora: Pearson Educational do Brasil. 5. Redes de Computadores/comunicao de Dados Tcp/ip - Conceitos, Protocolos e Uso Autor:Starlin, Gorki Editora: Alta Books 6. Tecnologias de Rede & Comunicao de Dados Autor:Lima Jr, Almir Wirth Editora: ALTA BOOKS 7. Comunicao de Dados e Sistema de Teleprocessamento. Autor: J. L. da Silveira, Editora Makron Books. 8. Comunicao de Dados Teleprocessamento e Redes Locais Autor: Antonio Alves de Oliveira Editora:Atlas 9. Comunicao De Dados - Vol. 22 Autor:Juergen Rochol 9

Editora:BookMan 10. Comunicao De Dados Autor:Luis Alves Editora Makron Books 1.1 11. REDES E SISTEMAS DE COMUNICAAO DE DADOS

Autor:William STALLINGS Editora:Campus 4.4 Tutorial Imaginemos a seguinte situao: precisamos desenvolver um cadastro de clientes utilizando, para isso, orientao a objetos com a linguagem C# e o banco de dados MS SQL Server. Para muitos bastaria ligar um GridView e alguns TextBoxes a um DataSet ligado diretamente ao banco e pronto. Porm, vamos pensar na forma mais correta de fazer isso e vamos separar a interface com o usurio do acesso ao banco. Nesse ponto, alguns programadores escreveriam classes com mtodos que executassem as instrues SQL para realizar o CRUD (INSERT, UPDATE, DELETE, SELECT). nesse ponto que vamos introduzir um conceito diferente, uma outra forma de fazer isso, transferindo parte do processamento para o banco de dados e facilitando a manuteno. Para isso, utilizaremos quatro Stored Procedures para realizar tais operaes: INSERIR_CLIENTES, ALTERAR_CLIENTES, EXCLUIR_CLIENTES e CONSULTAR_CLIENTES. A estrutura da tabela de clientes simples, o script para cri-la encontra-se na Listagem 1. Listagem 1: script de criao da tabela de clientes 1CREATE TABLE CLIENTES 2( CODIGO INT IDENTITY PRIMARY KEY, 3 NOME VARCHAR(100) NOT NULL, 4 TELEFONE VARCHAR(20), EMAIL VARCHAR(50) 5 ) 6 10

7GO 8 Agora vejamos o cdigo dos stored procedures: Listagem 2: procedimento de insero 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2

CREATE PROCEDURE INSERIR_CLIENTES @CODIGO INT OUTPUT, @NOME VARCHAR(100), @TELEFONE VARCHAR(20), @EMAIL VARCHAR(50) AS BEGIN INSERT INTO CLIENTES (NOME, TELEFONE, EMAIL) VALUES(@NOME, @TELEFONE, @EMAIL) SELECT @CODIGO = MAX(CODIGO) FROM CLIENTES END

A varivel @CODIGO foi definida como output para que, ao ser inserido um novo registro no banco, o valor do cdigo que identity serja retornado para o objeto que chamou o mtodo de insero via C#. Isso ser melhor entendido mais adiante. Listagem 3: procedimento de edio 1 2 3 4 5 6 7 8 9 1 0 1 1

CREATE PROCEDURE ALTERAR_CLIENTES @CODIGO INT, @NOME VARCHAR(100), @TELEFONE VARCHAR(20), @EMAIL VARCHAR(50) AS BEGIN UPDATE CLIENTES SET NOME = @NOME, TELEFONE = @TELEFONE, EMAIL = @EMAIL WHERE CODIGO = @CODIGO END

Listagem 4: procedimento de excluso 1CREATE PROCEDURE EXCLUIR_CLIENTES INT 2AS @CODIGO 3BEGIN 4 DELETE FROM CLIENTES WHERE CODIGO = @CODIGO 5 END 6 11

7 Listagem 5: procedimento de consulta 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8


CREATE PROCEDURE CONSULTAR_CLIENTES @TIPO INT, @VALOR VARCHAR(100) AS BEGIN IF @TIPO = 1 BEGIN IF ISNUMERIC(@VALOR) = 1 SELECT * FROM CLIENTES WHERE INTEGER) END ELSE IF @TIPO = 2 BEGIN SELECT * FROM CLIENTES WHERE NOME LIKE '%'+@VALOR+'%' END ELSE IF @TIPO = 3 BEGIN SELECT * FROM CLIENTES WHERE TELEFONE LIKE '%'+@VALOR+'%' END ELSE IF @TIPO = 4 BEGIN SELECT * FROM CLIENTES WHERE EMAIL LIKE '%'+@VALOR+'%' END END

CODIGO

CAST(@VALOR

AS

12

2 9 O procedimento mais complexo, porm no de difcil compreenso, este ltimo, feito para permitir a consulta na tabela a partir de dois parmetros: o tipo de consulta e o valor a ser consultado. O parmetro @TIPO define o campo pelo qual ser feita a busca. Agora, tendo definido os stored procedures que sero utilizados, criaremos uma classe Cliente em C# que conter os mtodos Inserir e Alterar, que devem ser chamados a partir de uma instncia e os mtodos Consultar e Excluir estticos. Para irmos direto ao ponto principal, consideremos que os atributos e propriedades, utilizados cuja definio no est explcita, j foram previamente declarados. Os principais so um SqlConnection chamado de conexo e um SqlCommand chamado de comando, ligado conexo e cujo CommandType StoredProcedure. Listagem 6: mtodo Inserir da classe Cliente 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7
public void Inserir() { comando.CommandText = "INSERIR_CLIENTES"; comando.Parameters.Clear(); SqlParameter parcodigo = new SqlParameter("CODIGO", SqlDbType.Int); parcodigo.Direction = ParameterDirection.Output; comando.Parameters.AddWithValue("NOME", this.nome); comando.Parameters.AddWithValue("TELEFONE", this.telefone); comando.Parameters.AddWithValue("EMAIL", this.email); try {

@CODIGO

conexao.Open(); comando.ExecuteNonQuery(); this.codigo = Convert.ToInt32(parcodigo.Value); //Aps executar o comando, recuperamos o valor do parmetro

conexao.Close(); } catch(SqlException ex) { MessageBox.Show(ex.Message); } }

13

1 8 1 9 2 0 2 1 2 2 2 3 2 4 Listagem 7: mtodo Alterar da classe Cliente 1 2 3 4 5 6 7 8 public void Alterar() 9 { comando.CommandText = "ALTERAR_CLIENTES"; 1 comando.Parameters.Clear(); 0 comando.Parameters.AddWithValue("CODIGO", this.codigo); 1 comando.Parameters.AddWithValue("NOME", this.nome); comando.Parameters.AddWithValue("TELEFONE", this.telefone); 1 comando.Parameters.AddWithValue("EMAIL", this.email); 1 2 try 1 { 3 conexao.Open(); 1 comando.ExecuteNonQuery(); conexao.Close(); 4 } 1 catch(SqlException ex) 5 { 1 MessageBox.Show(ex.Message); } 6 1 } 7 1 8 1 9 2 0 Listagem 8: mtodo Excluir da classe Cliente

14

1 2 3 4 5 6 public static void Excluir() { 7 comando.CommandText = "EXCLUIR_CLIENTES"; 8 comando.Parameters.Clear(); 9 comando.Parameters.AddWithValue("CODIGO", this.codigo); try 1 { 0 conexao.Open(); 1 comando.ExecuteNonQuery(); 1 conexao.Close(); } 1 catch(SqlException ex) 2 { 1 MessageBox.Show(ex.Message); 3 } 1 } 4 1 5 1 6 Listagem 9: mtodo Consultar da classe Cliente 1 public static List<Cliente> Consultar(int tipo, string valor) 2 { comando.CommandText = "CONSULTAR_CLIENTE"; 3 comando.Parameters.Clear(); 4 comando.Parameters.AddWithValue("TIPO", tipo); comando.Parameters.AddWithValue("VALOR", valor); 5 6 List<Cliente> resultado = new List<Cliente>(); 7 try 8 { 9 conexao.Open(); 1 SqlDataReader reader = comando.ExecuteReader(); if(reader.HasRows) 0 { 1 while(reader.Read()) 1 { 1 Cliente cli = new Cliente() { 2 Codigo = Convert.ToInt32(reader["CODIGO"]), 1 Nome = reader["NOME"].ToString(), 3 Telefone = reader["TELEFONE"].ToString(), 1 Email = reader["EMAIL"].ToString() 4 } 1 } 5 } 1 conexao.Close(); 6 } 1 return resultado; 7 } 15

1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 O mtodo Consultar recebe dois parmetros para definir a busca e retorna uma lista de objetos Cliente como resultado. Por exemplo, se quisssemos buscar os clientes que contm Joo no nome e exibir em um DataGridView, faramos: Listagem 10: exemplo de utilizao do mtodo Consultar 1dataGridView.DataSource = Cliente.Consultar(2, Joo); Bem, isso. O cdigo simples, basta fazer as devidas declaraes e importao dos namespaces necessrios para v-lo funcionar. Vou ficando por aqui. Ponho-me disposio para sanar qualquer dvida que possa surgir sobre este artigo. Um grande abrao e at a prxima.

JANELA DE CADASTRO DE LIVROS

16

No boto gravar d um clique duplo e inseri o cdigo abaixo: Usando procedimentos armazenados em vez de instrues SQL especficos muito til - um procedimento armazenado pode ser referenciada vrias vezes por vrias pginas diferentes, e as mudanas s precisa ser feito uma vez, por exemplo. Usando procedimentos armazenados apenas mais difcil de implementar do que usar instrues SQL no cdigo. Primeiro, precisamos da referncia de montagem seguinte: usingSystem.Data.SqlClient; using System.Data.SqlClient;

No nosso Web.config, declaramos a string de conexo: <appSettings><appSettings> <add key="ConnString" key="ConnString" value="Data value="Data Source=CLIENTSource=CLIENTTASK2\SQLEXPRESS;Initial Security=True"/><add Security=True"/> </appSettings></ AppSettings> 17 TASK2\SQLEXPRESS;Initial Catalog=BasicDataAccess;Integrated Catalog=BasicDataAccess;Integrated

O procedimento armazenado ser algo parecido com isto: ALTER spInsertData PROCEDIMENTO @namevarchar(50), @ Nome varchar (50), @cityvarchar (50) @ Cidade varchar (50) AS AS INSERT INTO [tblOne] INSERT INTO [tblOne] (theName, theCity) (Municpio varNome,) VALUES (@name, @city) VALUES (@ nome, @ cidade)

O cdigo por trs ser algo parecido com isto: using System; Usando o sistema; usingSystem.Data; using System.Data; usingSystem.Configuration; usandoSystem.Configuration; usingSystem.Web; usandoSystem.Web; usingSystem.Web.Security; usandoSystem.Web.Security; usingSystem.Web.UI; usandoSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.WebControls.WebParts; usingSystem.Web.UI.WebControls.WebParts; usingSystem.Web.UI.HtmlControls; usingSystem.Web.UI.HtmlControls; usingSystem.Data.SqlClient; usingSystem.Data.SqlClient; public partial class _Default : System.Web.UI.Page public partial classe _Default: System.Web.UI.Page {{ protected void Page_Load(object sender, EventArgs e) protected void Page_Load (object sender, EventArgs e)

18

{{ }} protected void Button1_Click(object sender, EventArgs e) protected void Button1_Click (object sender, EventArgs e) {{ SqlCommandcmd SqlCommandcmd = = new new SqlCommand("spInsertData", SqlCommand ("spInsertData", new new SqlConnection(ConfigurationManager.AppSettings["ConnString"])); SqlConnection (ConfigurationManager.AppSettings ["connString"])); cmd.CommandType = CommandType.StoredProcedure; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@name",txtName.Text); cmd.Parameters.AddWithValue ("@ nome", txtName.Text); cmd.Parameters.AddWithValue("@city",txtCity.Text); cmd.Parameters.AddWithValue ("cidade @", txtCity.Text); cmd.Connection.Open(); cmd.Connection.Open (); cmd.ExecuteNonQuery(); cmd.ExecuteNonQuery (); cmd.Connection.Close(); cmd.Connection.Close (); Label1.Text = "<b>" + txtName.Text + "</b> has been added to the database using a Stored Procedure."; Label1.Text = "<b>" + txtName.Text + "</ b> foi adicionado ao banco de dados usando um procedimento armazenado."; }} }}

4.5 ORM. De forma bem clara e a grosso modo, Um ORM, nada mais do que um

19

Framework ou um conjunto de classes que permite que voc faa este trabalho sem precisar escrever cdigos de conexo com o banco.ORM (Object Relational Mapper) uma tcnica de mapeamento de objeto relacional que permite fazer uma relao dos objetos com os dados que os mesmos representam. Ultimamente tem sido muito utilizada e vem crescendo bastante nos ltimos anos.

Tudo comea como mostrado na figura acima, existem 2 mundos: o relacional e o orinetado a objetos, no mundo relacional prevalecem princpios matemticos com a finalidade de armazenar e gerenciar corretamente os dados, de forma segura e se trabalha com a linguagem SQL que utilizada para dizer o banco de dados O QUE? fazer e no como fazer. J no mundo orientado a objetos, trabalhamos com classes, mtodos ou seja, trabalhamos fundamentados na engenharia de software e seus princpios que nos dizem COMO fazer. O ORM justamente, a ponte entre estes dois mundos, ou seja, ele quem vai permitir que voc armazene os seus objetos no banco de dados, para isto fazendo um mapeamento dos seus objetos para as tabelas do banco de dados.Resumindo, muito mais fcil usar uma interface amigvel e dizer ao banco de dados o que ele pretende fazer, do que escrever linha e linhas de cdigos SQL. Podemos citar vrias ferramentas para ORM, Ferramentas de ORM evitam retrabalho e melhoram a manutenibilidade das solues. Hoje temos vrias ferramentas, destacando como principais o NHibernate o Subsonic e o Entity Framework.O Entity Framework, criado pela Microsoft, permite fcil criao do modelo a partir de um database (Database-First Approach) ou do database a partir de um modelo (Model-First Approach). O Visual Studio 2010 d grande suporte designer, permitindo criar o modelo inteiramente em modo designer, evitando que voc tenha que ficar abrindo arquivos .xml para isso . Alm disso, h uma 20

extenso do LINQ(languaje integrated query), o LINQ To Entities, para trabalhar com o EF, permitindo que voc escreva queries com o LINQ, beneficiando-se da verificao em tempo de desenvolvimento/compilao. O LINQ transformado em uma consulta sql e o resultado da consulta j vem de forma estruturada. O SubSonic tem a grande vantagem de a configurao ser quase nula. Ele l o esquema do banco de dados e gera as classes de mapeamento quando voc d o primeiro build no projeto. O releases so muito rpidos permitindo que diversos bugs sejam corrigidos e as melhorias sejam implementadas num curto espao de tempo. Eu gostei muito de mexer nele, realmente muito simples. S precisa amadurecer um pouco mais.Bem documentado, fcil de usar e aprender e constantemente atualizado, uma excelente opo.

Vantagens de se usar um ORM - Voc escreve menos cdigo e programa com muito mais produtividade. - Seu cdigo fica mais elegante. - mais fcil de dar manuteno no projeto. - Melhora a padronizao da sua aplicao.

Exemplo de um cdigo em .NET usando ORM:

Usuario.AddNew(); Usuario.FirstName = this.txtFirstName.Text; Usuario.LastName = this.txtLastName.Text; Usuario.Save();

Exemplo de um cdigo em.NET usando classes nativas do .NET Framework:

21

strConn = "string de conexo aqui"; SqlConnection objCon = new SqlConnection(strConn); SqlCommand objComand = objCon.CreateCommand(); objComand.CommandText = "insert into Usuario (FirstName , LastName ) values (@FirstName , @LastName )"; objComand.CommandType = CommandType.Text; objComand.Parameters.Add("@FirstName ", txtFirstName.Text ); objComand.Parameters.Add("@LastName ", txtLastName.Text ); objComand.ExecuteNonQuery();

Estes so alguns critrios interessantes na escolha de um ORM para adoo dentro de uma empresa ou projeto.

Qualidade da documentao Tipo e qualidade do suporte Custo Curva de aprendizado Continuidade (Novos releases do projeto e periodicidade) Capacidade de execuo de stored procedures do legado Bancos de dados suportados Suporte a querys dinmicas Suporte a dados hierarquizados DataBind a .Net controls Capacidade de fazer transaes 22

Performance Facilidade de manuteno do cdigo (incluindo a a inteligibilidade do mesmo)

Concluso

Apartir das pesquisas bibliogrficas realizadas neste trabalho, pude entender melhor a importncia do uso de diagramas de estado no que concerne ao simples entendimento do sistema , olhando pelo lado do hardware do sistema, alm disto vimos 23

a questo do levantamento de requisitos , importante no entendimento a cerca do ambiente em que ser implantado o sistema.Fizemos tambm o comparativo entre algumas ferramentas para ORM, sua importncia e caractersticas. Uma questo importante que foi tratada quanto a questo da responsabilidade social, onde a nossa empresa mostrou ter total comprometimento social com a comunidade e comprometimento ambiental tambm ao adotar medidas que visem a preservao ambiental. Diante do exposto fica bem claro que a criao de um software vai muito alm de programar linhas de cdigo e compil-las, temos implicaes sociais, ambientais, responsabilidade com Clientes, funcionrios, comunidade, a necessidade de criar um software, portvel, estvel, de fcil manuteno de bom desempenho e que seja fcil de usar com uma boa documentao.

Referencias CALDEIRO, Denise Morselli Fernandes.tica e Responsabilidade Social.So Paulo.Pearson Prentice Hall 2009. KIYOSHI NISHITANI, Paulo. Comunicao de Dados e Teleprocessamento, So Paulo.Editora: Pearson Educational do Brasil. 24

PAGE-JONES, Meilir. Fundamentos do desenho orientado a objeto com UML.So Paulo: Pearson, 2001. 465 p. NISHIMURA, roberto yukio.Banco de Dados I.So Paulo:Pearson Prentice Hall, 2009. SOMMERVILLE, ian.Engenharia de Software.8ed.SoPaulo:Pearson, 2007. (Engenharia, Computao, Sistemas).552p. TANAKA, Simone Sawasaki. Anlise de sistemas I: curso superior de tecnologia em anlise e desenvolvimento de sistemas 2. So Paulo: Pearson Education do Brasil, 2009. 182 p.

25