Você está na página 1de 55

Rafael Lagos Miranda 0310065 8 Semestre

Desenvolvimento de Sistema de Comrcio de Veculos

Jaguarina 2007

Rafael Lagos Miranda

0310065 8 Semestre

Desenvolvimento de Sistema de Comrcio de Veculos

Monografia apresentada disciplina Trabalho de Concluso do curso de Cincia da

Computao da Faculdade de Jaguarina, sob orientao do Prof. Ms. Ademrio Araujo, como exigncia parcial para concluso do curso de graduao.

Jaguarina 2007
I

Miranda, Rafael Lagos. Desenvolvimento de sistema de venda de veculos. Monografia defendida e aprovada na FAJ em 20 de dezembro de 2007 pela banca examinadora constituda pelos professores:

Prof. Ademrio Arajo Jr.

Prof. Peter Jandir Jr.

Prof. Jos Arnaldo G. Nunes

II

Dedico este trabalho a todos aqueles que fazem de sua vida uma luta diria pela melhoria deste mundo.
III

AGRADECIMENTOS

Primeiramente a Deus, que me deu fora e oportunidade para vencer mais este desafio.

Aos meus pais, Vanderlei e Ftima, pelo empenho e dedicao que foi disponibilizada nesta longa e difcil caminhada.

Ao meu irmo, Gustavo, que apesar de ser mais novo e menos experiente sempre me incentivou a chegar onde estou.

minha noiva Loriane, pelo carinho e pacincia que demonstrou durante estes anos.

Particularmente agradeo ao coordenador do curso Prof. Peter, pelo seu apoio e compreenso das reais necessidades.

Aos professores/mestres do curso de cincia da computao que tanto contriburam para o meu crescimento intelectual.

E no poderia deixar de agradecer a todos os meus queridos e grandes amigos do curso de Cincia da Computao, que proporcionaram momentos de grande alegria.

IV

Transforme as pedras que voc tropea nas pedras de sua escada. (Scrates, filsofo ateniense)
V

Miranda, Rafael Lagos. Desenvolvimento de sistema de vendas de veculos. 2007. Monografia (Bacharelado em Cincia da Computao) Curso de Cincia da Computao da Faculdade de Jaguarina, Jaguarina.

RESUMO

Na computao, o desenvolvimento de software o ato de elaborar e implementar um sistema computacional, isto , transformar a necessidade de um utilizador ou de um mercado em um produto de software. O software apresentado neste trabalho especialista em vendas de veculo, foi desenvolvido utilizando a tcnica de desenvolvimento em cascata, ser demonstrado cada passo desta tcnica e principalmente chamar a ateno para a importncia na utilizao de tcnicas para desenvolvimento de software.

Palavras-chave: Desenvolvimento.

Desenvolvimento,

Software,

Sistema

Computacional,

Tcnicas

de

VI

Miranda, Rafael Lagos. Desenvolvimento de sistema de vendas de veculos. 2007. Monografia (Bacharelado em Cincia da Computao) Curso de Cincia da Computao da Faculdade de Jaguarina, Jaguarina.

ABSTRACT

In computing, the development of software is the act of drawing up and implementing a computer system, that is transforming the need for a user or a market in a software product. The software presented in this work is a specialist in sales of vehicle, has been developed using the technique of development cascade will be demonstrated each step of this technique and mainly draw attention to the importance in the use of techniques for software development.

Keywords:

Development,

Software,

Computer

System,

Technical

Development

VII

SUMRIO

INTRODUO....................................................................................................................... 2 Capitulo 1- Modelo de Desenvolvimento................................................................................ 4 Modelos de desenvolvimento em Cascata ....................................................................... 4 Captulo 2 Requerimento .................................................................................................... 5 2.1 Levantamento de Requisitos...................................................................................... 5 2.2 Planejamento do processo......................................................................................... 6 2.3 Definies da Anlise de Requisitos ......................................................................... 8 2.4 Levantamento do banco de dados ............................................................................. 8 2.5 Levantamento e Estudo da Ferramenta de Desenvolvimento .................................. 10 2.6 Estudo do Banco de Dados Escolhido ..................................................................... 11 2.7 Anlise de Requisitos............................................................................................... 12 Captulo 3 Projeto ............................................................................................................. 14 3.1 Projeto do Sistema................................................................................................... 14 3.2 Definio de Caso de Uso........................................................................................ 20 Captulo 4 Implementao ................................................................................................ 21 Implementao ou programao (Codificao) .............................................................. 21 Captulo 5 - Implantao...................................................................................................... 41 Implantao ................................................................................................................... 41 Captulo 6 - Verificao........................................................................................................ 42 6.1 Anlise dos Resultados........................................................................................... 42 6.2 Quanto ao Levantamento de Requisitos .................................................................. 43 6.3 Quanto Anlise de Requisitos ............................................................................... 43 6.4 Quanto ao Projeto .................................................................................................... 43 6.5 Quanto Implementao ......................................................................................... 43 6.6 Quanto Validao.................................................................................................. 44 7 - REFERNCIAS BIBLIOGRFICAS............................................................................... 44

LISTA DE FIGURAS
FIGURA 01 Modelo de desenvolvimento em cascata.............................................04 FIGURA 02 Fluxo de atividades..............................................................................06 FIGURA 03 Diagrama de contexto..........................................................................14 FIGURA 04 Fluxo do sistema..................................................................................15 FIGURA 05 Tabela de Clientes...............................................................................15 FIGURA 06 Tabela de Fornecedores......................................................................16 FIGURA 07 Tabela de Funcionrios.......................................................................16 FIGURA 08 Tabela de Veculos..............................................................................16 FIGURA 09 Tabela de Vendas................................................................................17 FIGURA 10 Tabela de Compras.............................................................................17 FIGURA 11 Tabela de Trocas.................................................................................17 FIGURA 12 Estudo de caso VENDAS....................................................................18 FIGURA 13 Estudo de caso SOLICITAO DE PEAS........................................19 FIGURA 14 Estudo de caso GERENCIAMENTO...................................................19 FIGURA 15 Componente para conectar ao banco de dados..................................21 FIGURA 16 Propriedade do SQL Connection.........................................................21 FIGURA 17 Cronograma de atividades/perodo......................................................22

LISTA DE TABELAS

Tabela 1 Plano de Trabalho....................................................................................11 Tabela 2 Plano para Levantamento de Requisitos..................................................11

LISTAGEM DE CDIGOS

Listagem 1 Importao do banco de dados............................................................08 Listagem 2 Gerar nmero seqencial.....................................................................23 Listagem 3 Gravao no banco de dados...............................................................24 Listagem 4 Garantir informaes gravadas no banco.............................................25 Listagem 5 Padro para Form de consulta.............................................................26 Listagem 6 Alterar as cores das linhas na consulta................................................29 Listagem 7 Utilizando Duplo Clique na Consulta....................................................30

INTRODUO
Este trabalho constitui basicamente no uso de processo de desenvolvimento, onde exemplificam com o desenvolvimento de um sistema de venda de veculos, as principais funes deste sistema so: Gerenciamento dos movimentos (compra, venda e troca); Marketing de relacionamento - pr-venda e ps-venda -; SAC (Sistema de atendimento ao cliente); Visualizao de ficha do cliente; Gesto de veculos novos e usados; Controle de peas; Controle das atividades dirias relacionadas assistncia tcnica; Resumo anual da empresa; Controle sobre as operaes financeiras; Livros fiscais, folha de pagamento, ativo fixo, administrao contbil; Gesto oramentria, possibilitando a realizao da viso consolidada do grupo ou por empresa, definio de metas e objetivos (receitas, custos e despesas). Acompanhamento dirio do projetado com o realizado de uma maneira rpida e prtica. Controlar os custos de um veculo, evitando assim prejuzos. A motivao deste trabalho sobre o desenvolvimento deste software foi o prvio conhecimento das atividades do ramo, e principalmente a necessidade de um software especialista com baixo custo e que realmente atenda as necessidades. Entretanto desenvolver um software no um trabalho trivial, pesquisa realizada pelo CHAOS Report de 2003 apresentou as seguintes estatsticas: Apenas 34% dos projetos de software so bem sucedidos; 15% dos projetos so cancelados; 43% o erro mdio em relao ao oramento do projeto dos 34% mencionados; 52% das caractersticas (requisitos no funcionais) e funcionalidades so entregues no produto.

Para desenvolver um software com qualidade dever ser adotado um processo de desenvolvimento de software. Um processo de software pode ser entendido como um conjunto estruturado de atividades exigidas para desenvolver um sistema de software. Esse conjunto de atividades ligado por padres de relacionamento entre si, as quais se as atividades trabalharem de forma correta e de acordo com os padres requeridos, o produto final desejado realizado. O produto final desejado um software de alta qualidade e baixo custo. Com estas definies podemos considerar que de forma global um processo de software padro pode ser considerado um conjunto de atividades, de mtodos, de ferramentas e prticas utilizadas a fim de construir um produto de software. Para definir um processo de software devem ser vistas as informaes de atividades a serem realizados, os recursos necessrios, artefatos requeridos e produzidos, tambm os procedimentos seguidos. Resumidamente o processo de software pode ser definido como um conjunto de atividades uniforme que sero aplicadas sistematicamente e estas so agrupados em fases, cada fase tem que intervir com suas responsabilidades, isto significa que define quem faz o qu, quando e como a fim de atingir certo objetivo. No capitulo 1 descrito a tcnica de desenvolvimento em cascata, os captulos seguintes demonstram a seqncia da tcnica, capitulo 2 levantamento de requisitos, captulo 3 projeto do sistema, captulo 4 implementao e captulo 5 anlise dos resultados. O objetivo deste trabalho desenvolver um software para o segmento de venda de automveis utilizando a tcnica de desenvolvimento em cascata, ao final do projeto, visualizar os produtos em diagramas padronizados.

CAPITULO 1- MODELO DE DESENVOLVIMENTO Modelos de desenvolvimento em Cascata


A principal caracterstica dessa tcnica que o processo de desenvolvimento fica estruturado, isso significa que as fases tm uma ordem seqencial, uma fase ser iniciada aps o termino da fase anterior. Devem-se seguir todas as fases bem como as atividades envolvidas em cada uma delas, o modelo exemplificado na Figura 1 Modelo de Desenvolvimento em cascata.

FIGURA 1 Modelo de Desenvolvimento em cascata

CAPTULO 2 REQUERIMENTO 2.1 Levantamento de Requisitos


Seguindo a seqncia conforme o modelo proposto, vem fase de levantamento de requisitos, necessrio reunies com os clientes e os usurios finais do sistema para descobrir o mximo de informaes sobre o domnio da aplicao, por exemplo: que tipo de servios o sistema tem que fornecer, desempenho necessrio pelo sistema, as restries/necessidades de hardware. Esta etapa envolveu diversas pessoas de diferentes reas da empresa contratante, isso para levantar a necessidade de abrangncia do sistema. Fazem parte da equipe de levantamento de requisitos o analista, o gerente, com a participao do administrador de banco de dados, que constitui na realizao de reunies e entrevistas com o cliente. Nesta fase so designados tcnicas de esclarecimento de requisitos, com o objetivo de maximizar o comprometimento do cliente e desenvolvedores com a soluo que se deseja construir. muito importante que os requisitos sejam aproveitados da maneira correta e objetiva. Com as revises dos requisitos feitas na fase de Concepo, deve ser feita uma reviso envolvendo as pessoas que iro manipular o sistema, cliente, alm das pessoas que participaram do projeto. A equipe que executa a reviso deve verificar cada requisito, verificar se h consistncia e se realmente atende as necessidades. Corresponde a etapa levantamento de requisitos: pesquisa inicial do material existente, descrio inicial dos requisitos, estruturao dos dados e composio do documento de requisitos. E, referente ao retorno de investimentos uma das etapas mais importantes a fase de levantamento de requisitos, ou seja, membros da equipe disponibilizaram tempo suficiente para concluir esta etapa do projeto, entender as necessidades dos clientes no que diz respeito ao sistema a ser desenvolvido, traduzir as necessidades ou requisitos operacionais para uma descrio de funcionalidades a ser executada.

2.2 Planejamento do processo


Os estudos realizados conforme instrues do levantamento de requisitos resultaram no planejamento do processo. O planejamento do processo pode ser visto conforme Figura 2:

FIGURA 2 Fluxo de Atividades


Os trabalhos realizados nesta etapa esto descritos abaixo: Reunies com gerentes e proprietrio de empresas interessadas no desenvolvimento do software. Negociao e contratao. Acesso ao material disponvel na organizao; Conhecer o ambiente e as principais necessidades, possibilitando ter o embasamento terico dos trabalhos a serem desenvolvidos; Conhecer as regras internas e documentos da organizao. Definio do foco e a abrangncia do trabalho.

Definio do planejamento de atividades, este planejamento aqui denominado de plano de trabalho pode ser visto nas tabelas 1 e 2: Plano de Trabalho: Atividade
Levantamento de banco de dados existente Levantamento ferramenta desenvolvimento Estudo da ferramenta escolhida (Delphi 6) Estudo do banco escolhido (Firebird) Anlise de requisitos Projeto do sistema Implementao Implantao Testes Anlise dos Resultados da de

Mar

Abr

Mai

Jun

Jul

Ago

Set

Out

Nov

TABELA 1 Plano de Trabalho


Atividade/Semana
Necessidades de armazenamento: cadastros Necessidade para funcionamento: controle Necessidades relatrios Necessidades para implementao: ferramenta de desenvolvimento Necessidades para implantao: Hardware e Softwares de demonstrar resultados e organizar: consultas e

Um Dois

Trs

Quatro Cinco Seis

Sete

Oito

TABELA 2 Plano para Levantamento de Requisitos

2.3 Definies da Anlise de Requisitos


Para melhor visualizao da Anlise de Requisitos, esta foi dividida em fases. Partes dos resultados desta fase sero demonstradas abaixo:

2.4 Levantamento do banco de dados


Nas empresas envolvidas havia banco de dados que eram utilizadas por outro sistema at a implantao do sistema em desenvolvimento, as informaes contidas neste banco de dados teriam que ser importado para o novo banco de dados do novo sistema. Para importar o banco de dados que estava sendo utilizado em Microsoft Excel (arquivo no formato XLS), primeiro o arquivo foi transformado no formato TXT separado por TAB. Com o auxilio da query descrita na Listagem 1 os dados foram importados para as novas tabelas.

"1 string" 100 "2 string" 102 "3 string" 104 "4 string" 106 testtable structure CREATE TABLE testtable (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, text varchar(45) NOT NULL, price integer not null); import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; import java.sql.ResultSet; import java.sql.SQLException; public class automateImport { public static void main(String[] args) { DBase db = new DBase(); Connection conn = db.connect("jdbc:mysql://localhost:3306/test","root","caspian"); db.importData(conn,args[0]); } } class DBase

public DBase() { } public Connection connect(String db_connect_str, String db_userid, String db_password) { Connection conn; try { Class.forName("com.mysql.jdbc.Driver").newInstance(); conn = DriverManager.getConnection(db_connect_str, db_userid, db_password); } catch(Exception e) { e.printStackTrace(); conn = null; } } return conn;

public void importData(Connection conn,String filename) { Statement stmt; String query; try { stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); query = "LOAD DATA INFILE '"+filename+ "' INTO TABLE testtable (text,price);"; stmt.executeUpdate(query); } catch(Exception e) { e.printStackTrace(); stmt = null; } Listagem 1 Importao do banco de dados

};

2.5 Levantamento e Estudo da Ferramenta de Desenvolvimento


Para desenvolver o sistema necessria a utilizao de uma ferramenta de desenvolvimento, esta ferramenta deve ser escolhida de acordo com as necessidades abordadas na Anlise de Requisitos. Portanto foi elegido a ferramenta DELPHI 6.

DELPHI 6 Uma ferramenta RAD (Rapid Application Development), sua linguagem nativa Object Pascal, uma excelente ferramenta de desenvolvimento tanto para aplicaes cliente/servidor quanto de uso genrico. As principais caractersticas so as seguintes: Possui o compilador rpido e otimizado; Gera executveis, sem a necessidade da utilizao de bibliotecas RunTime para a distribuio de aplicaes. A conseqncia disto um desempenho muito superior s outras ferramentas;

Possibilita a criao de componentes nativos, ou seja, permite a criao de extenses ao prprio Delphi;

uma ferramenta two-way, isto , cada componente visual implementado atravs de um conjunto de linhas de cdigo Object Pascal e esses dois elementos, componente visual e linhas de cdigo, esto intimamente relacionados, de tal forma que uma alterao em qualquer um deles se reflete no outro;

A linguagem possui mecanismos especiais para manipulao de exceo (exception handling), o que permite a criao de aplicaes mais robustas;

Excelente conectividade com bancos de dados, atravs do Borland Database Engine (BDE);

totalmente orientada a objetos.

10

2.6 Estudo do Banco de Dados Escolhido


essencial no desenvolvimento do sistema a escolha do banco de dados, este deve ser escolhido de acordo com as necessidades da Anlise de Requisitos e tambm levando em considerao a conectividade com a ferramenta de desenvolvimento.
Firebird Firebird um banco de dados Client/Servidor relacional que compatvel com SQLANSI-92, e foi desenvolvido para ser um banco de dados, independente de plataformas e de sistemas operacionais. Este banco de dados dispensa maiores estruturas dentro da empresa, (DBA / Preparao), onde basta instalar o software e usar-lo, sem a interferncia freqente de profissionais, especializados na manuteno do banco de dados de produo. Acompanhando, isso ele dispensa o uso de super-servidores, usando pouco espao em disco para sua instalao e utilizando pouca memria em situaes normais de uso. Por isso a plataforma necessria para a sua instalao e utilizao pode ser reduzida diminuindo consideravelmente os custos do projeto. Ao longo do desenvolvimento, foram introduzidas muitas caractersticas, dentre elas: Acesso nativo a driver JDBC Commit Automtico de Duas Fases, sombreamento do Banco de Dados, Replicao, tratamento de Blobs Sistema de Eventos, entre outros. O Firebird uma base de dados Open Source, construdo com base no cdigo do Interbase Open Source, sendo que as licenas de utilizao e distribuio agora so totalmente FREE!

11

IBCONSOLE O IBCONSOLE o gerenciador de Dados que acompanhava o Interbase, e que pode ser utilizado com o Firebird 1.5.1, a grande vantagem dele o fato, de no ser uma ferramenta de criao de Tabelas. No Ibconsole, toda e qualquer criao, relacionamento, manuteno, feito no ISQL, tudo via Linha de Comando

2.7 Anlise de Requisitos


Seguindo o Plano de Trabalho, a prxima fase do projeto a Anlise de Requisitos, os requisitos foram divididos em Requisitos de Cadastros e Requisitos de Controles, os requisitos so demonstrados abaixo:
Requisitos de Cadastros: Cadastro de clientes; Cadastro de fornecedores e vendedores; Cadastro de funcionrios; Cadastro de veculos; - Cadastro de ordens de servios (OS); Cadastro de emisso de oramentos; Cadastro de vendas; Cadastro de compras; Cadastro de trocas; Cadastro de oramentos de vendas; Cadastro de produtos; Cadastro de servios; Requisitos de Controles: Controle de estoque; Controle de cheques; Controle financeiro e administrativo;

12

Controle de aniversariantes; Contas a pagar e a receber; Controle de pagamento dos funcionrios por comisso; Controle de pagamento dos vendedores por comisso; Suporte a leitora de cdigo de barras; Fluxo de caixa; Emisso de recibos; Emisso de boletos bancrios (Banco do Brasil, Caixa Econmica Federal, Nossa Caixa Nosso Banco, Bradesco e Ita); Agendamento de revises; Consulta de registros personalizados a partir de filtros; Grficos e relatrios diversos; Todos os relatrios com cabealho personalizado (logotipo da Empresa e nome); Pesquisa com histrico do cliente; - Pesquisa com histrico do veculo; Permisses de acesso dos usurios por tela; Agendamento de compromissos por usurio; Gerao de solicitaes a outros usurios; Realizao e restaurao de backup; Banco de dados cliente servidor (Funciona em rede multiusurios);

13

CAPTULO 3 PROJETO 3.1 Projeto do Sistema


Na fase do Projeto do Sistema, os dados colhidos devem ser desenhados de forma estruturada. Na Figura 3 demonstrado o diagrama de contexto, onde a sigla SVA representa o controle do sistema, recebendo as informaes de movimentos, fluxo de caixa, peas, marketing e sistema de atendimento ao cliente.

FIGURA 3 - Diagrama de contexto


Na Figura 4 demonstrado o fluxo do sistema, inicialmente o usurio deve logar no sistema com o seu respectivo usurio, de acordo com a configurao previamente cadastrada para o usurio este ter acesso a todos os controles do sistema ou ter acesso restrito.

14

Passando para o controle de cadastros, configuraes do sistema, fundo fixo, depsitos bancrios ou movimentos que geram receitas.

FIGURA 4- Fluxo do sistema


Nesta fase tambm definido como o sistema funcionar internamente, traduo dos requisitos em uma descrio de todos os componentes para codificar o sistema garantindo que os requisitos do cliente sejam atendidos. Definio das principais tabelas do banco de dados, cliente, fornecedor, funcionrios, veculos, vendas, compras e trocas, estas tabelas so demonstradas atravs das Figuras 5, 6, 7, 8, 9, 10 e 11, respectivamente. Clientes

15

FIGURA 05 Tabela de Clientes

Fornecedores

FIGURA 06 Tabela de Fornecedores


Funcionrios

FIGURA 07 Tabela de Funcionrios


Veculos

16

FIGURA 8 Tabela de Veculos


Vendas

FIGURA 9 Tabela de Vendas

Compras

FIGURA 10 Tabela de Compras

Trocas

17

FIGURA 11 Tabela de Trocas

A Figura 12 demonstra o caso de uso para vendas, onde o cliente pode fazer o pedido, verificar o pedido ou cancelar o pedido, este cliente pode ter tratamento diferente de acordo com seu status.

FIGURA 12 Caso de uso Vendas

18

A Figura 13 demonstra o caso de uso para solicitao de peas, onde o cliente solicita peas, o administrador cadastra a tarefa, o operador realiza a tarefa e finalmente compras entrega as peas.

FIGURA 13 Caso de uso Solicitao de Peas


A Figura 14 demonstra o caso de uso para gerenciamento, onde o gerente tem acesso as funes do funcionrio e pode emitir relatrio de vendas.

19

FIGURA 14 Caso de uso Gerenciamento

3.2 Definio de Caso de Uso


Na Engenharia de Software, um caso de uso (ou use case) um tipo de classificador representando uma unidade funcional coerente provida pelo sistema, subsistema, ou classe manifestada por seqncias de mensagens intercambiveis entre os sistemas e um ou mais atores. Pode ser representado por uma elipse contendo, internamente, o nome do caso de uso. Um Caso de Uso representa uma unidade discreta da interao entre um usurio (humano ou mquina) e o sistema. Um Caso de Uso uma unidade de um trabalho significante. Por exemplo: o "login para o sistema", "registrar no sistema" e "criar pedidos" so todos Casos de Uso. Cada Caso de Uso tem uma descrio o qual descreve a funcionalidade que ir ser construda no sistema proposto. Um Caso de Uso pode "incluir" outra funcionalidade de Caso de Uso ou "estender" outro Caso de Uso com seu prprio comportamento.

20

CAPTULO 4 IMPLEMENTAO Implementao ou programao (Codificao)


Terminado a etapa do Projeto do Sistema a prxima etapa a Implementao, ou seja, a produo do cdigo que controla o sistema e realiza a computao lgica envolvida, onde se tornaram possveis compilao e gerao do cdigo-executvel para o software. A estrutura e componentes utilizados para comunicao com o banco de dados so demonstrados na Figura 15.

FIGURAS 15 - Componentes para conectar ao banco de dados 21

A Figura 16 mostra as propriedades do SQL Conector, fundamental que esteja perfeitamente configurado e apontando para o diretrio correto.

FIGURA 16 - Propriedade do SQL Connection


Na implementao foram definidos alguns padres, para garantir a integridade do sistema e facilitar caso seja necessrio manuteno e/ou customizao. Esses padres esto descritos abaixo bem como o cdigo utilizado. Padro para gerar cdigo seqencial em Forms de cadastro: Nos Forms de cadastro (TODOS CADASTROS) necessrio conter um cdigo que ser utilizado como chave primria para novos registros, esse cdigo ser um nmero seqencial gerado automaticamente pelo sistema, na Listagem 2 segue o padro para o cdigo que gera esse nmero.

22

procedure TFRM_Banco.ARQ_NovoClick(Sender: TObject); var codigo : integer; begin LiberaCampos(); LimpaCampos(); DM.CDS_Codigos.Active := True; DM.SQL_Codigos.Active := True; codigo := DM.CDS_Codigos.FieldByName('cod_banco').AsInteger; codigo := codigo + 1; lbl_codigo.caption := IntToStr(codigo); DM.CDS_Codigos.Edit; DM.CDS_Codigos.FieldByName('cod_banco').AsInteger := codigo; DM.CDS_Codigos.ApplyUpdates(0); DM.CDS_Codigos.Active := False; DM.SQL_Codigos.Active := False; DM.SQL_Banco.Active := True; DM.CDS_Banco.Active := True; DM.CDS_Banco.Append; end; Listagem 2 Gerar nmero seqencial O padro para gravao de novos registros no banco de dados e demonstrado na Listagem 3.

23

procedure TFRM_Banco.ARQ_GravarClick(Sender: TObject); begin DM.CDS_Banco.Edit; DM.CDS_Banco.FieldByName('codigo').AsString := lbl_codigo.Caption; DM.CDS_Banco.FieldByName('nome').AsString := edt_nome.Text; DM.CDS_Banco.FieldByName('conta_corrente').AsString := edt_nroconta.Text; DM.CDS_Banco.FieldByName('agencia').AsString := edt_agencia.Text; DM.CDS_Banco.FieldByName('saldo_atual').AsString := edt_saldo.Text; DM.CDS_Banco.ApplyUpdates(0); DM.CDS_Banco.Active := False; DM.SQL_Banco.Active := False; LimpaCampos; TravaCampos; end; Listagem 3 Gravao no banco de dados Na Listagem 4 ser demonstrado o padro para garantir que no ser gravado no banco de dados informaes erradas ou que falte informaes.

24

procedure TFRM_Banco.BitBtn1Click(Sender: TObject); begin if edt_nome.Text = '' Then begin ShowMessage ('Nome no pode ser nulo!'); edt_nome.SetFocus; end else if edt_nroconta.Text = '' Then begin ShowMessage ('Nmero da Conta Corrente no pode ser nulo!'); edt_nroconta.SetFocus; end else if edt_agencia.Text = '' Then begin ShowMessage ('Agncia no pode ser nulo!'); edt_agencia.SetFocus; end else if edt_saldo.Text = '' Then begin ShowMessage ('Saldo no pode ser nulo!'); edt_saldo.SetFocus; end

25

else ARQ_GRAVAR.CLICK; end; Listagem 4 Garantir informaes gravadas no banco Padro para consulta de dados em tela. Foi criado apenas um Form de consulta que dever fazer a consulta de quaisquer dados no sistema, o motivo para a criao de apenas um Form que todas as consultas estejam familiarizadas, aumentando o entendimento do usurio. ara realizar este procedimento uma das propriedades do Form, o caption, deve ser alterado em cada consulta, alterando o caption do Form possvel saber qual a consulta foi solicitado, este padro demonstrado na Listagem 5. procedure TFRM_Consultas.FormShow(Sender: TObject); begin frm_Consultas.CB_itens.Items := DM.CDS_Consulta.FieldList; end; procedure TFRM_Consultas.EDT_PesquisaKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); begin DM.CDS_Consulta.Active := False; DM.SQL_Consulta.Active := False;

If FRM_Consultas.Caption = 'Cadastro de Banco' then DM.SQL_Consulta.CommandText := 'select * from banco where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39

26

else if FRM_Consultas.Caption = 'Cadastro de Cliente' then DM.SQL_Consulta.CommandText := 'select * from cliente where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Contas a Pagar' then DM.SQL_Consulta.CommandText := 'select * from Contas_Pagar where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Contas a Receber' then DM.SQL_Consulta.CommandText := 'select * from contas_receber where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Financeira' then DM.SQL_Consulta.CommandText := 'select * from financeira where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Funcionarios' then DM.SQL_Consulta.CommandText := 'select * from funcionarios where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if

27

FRM_Consultas.Caption = 'Cadastro de Plano Pagamento' then DM.SQL_Consulta.CommandText := 'select * from plano_pagamento where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Veiculos' then DM.SQL_Consulta.CommandText := 'select * from veiculos where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Veiculo FILIAL - Pesquisa' then DM.SQL_Consulta.CommandText := 'select * from filial where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Funcionarios NIVEL ACESSO - Pesquisa' then DM.SQL_Consulta.CommandText := 'select * from nivel_acesso where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de Filial' then DM.SQL_Consulta.CommandText := 'select * from filial where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de contas pagar BANCO - Pesquisa' then

28

DM.SQL_Consulta.CommandText := 'select * from banco where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de contas pagar - Pesquisa' then DM.SQL_Consulta.CommandText := 'select * from veiculos where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39 else if FRM_Consultas.Caption = 'Cadastro de contas receber BANCO - Pesquisa' then DM.SQL_Consulta.CommandText := 'select * from banco where ' + CB_itens.Text + ' like ' + #39 + Edt_pesquisa.Text + '%' + #39; DM.SQL_Consulta.Active := True; DM.CDS_Consulta.Active := True; end; Listagem 5 Padro para Form de consulta Padro utilizado para facilitar a visualizao das informaes nas consultas, onde as linhas na consulta so demonstradas em cores diferentes, este padro esta descrito na Listagem 6. procedure TFRM_Consultas.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if not odd(DM.CDS_Consulta.RecNo) then if not (gdSelected in State) then begin

29

dbgrid1.Canvas.Brush.Color := $00FFEFDF; dbgrid1.Canvas.FillRect(rect); dbgrid1.DefaultDrawDataCell(rect,column.Field,state); end; end; Listagem 6 Alterar as cores das linhas na consulta Padro utilizao de duplo clique na consulta, com a utilizao do duplo clique sobre o registro que deseja alterar ou excluir, o registro ser inserido no seu respectivo Form de cadastro. A Listagem 7 mostra o cdigo deste padro. procedure TFRM_Consultas.DBGrid1DblClick(Sender: TObject); var codigo : integer; begin IF FRM_Consultas.Caption = 'Cadastro de Funcionarios' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_FUncionarios.Active := False; DM.SQL_Funcionarios.Active := False; DM.SQL_Funcionarios.CommandText := 'select * from funcionarios where codigo = '+ inttostr(codigo); DM.SQL_Funcionarios.Active := True; DM.CDS_FUncionarios.Active := True; FRM_Funcionarios.Enabled := True; FRM_Funcionarios.lbl_codigo.Caption := DM.CDS_Funcionarios.FieldByName('codigo').AsString;

30

FRM_Funcionarios.edt_nome.Text := DM.CDS_Funcionarios.FieldByName('nome').AsString; FRM_Funcionarios.edt_funcao.Text := DM.CDS_Funcionarios.FieldByName('funcao').AsString; FRM_Funcionarios.edt_salario.Text := DM.CDS_Funcionarios.FieldByName('salario').AsString; FRM_Funcionarios.edt_senha.Text := DM.CDS_FUncionarios.FieldByName('senha').AsString; FRM_Funcionarios.edt_confsenha.Text := DM.CDS_FUncionarios.FieldByName('confsenha').AsString; FRM_Funcionarios.edt_nivelacesso.Text := DM.CDS_FUncionarios.FieldByName('nivel_acesso').AsString; FRM_Funcionarios.edt_usuario.Text := DM.CDS_FUncionarios.FieldByName('usuario').AsString; FRM_Consultas.Close; FRM_Funcionarios.ARQ_Alterar.Enabled := True; FRM_Funcionarios.ARQ_Excluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Cadastro de Filial' then begin codigo := DM.CDS_Consulta.FieldByName('codigo').AsInteger; DM.CDS_Filial.Active := False; DM.SQL_Filial.Active := False; DM.SQL_Filial.CommandText := 'select * from filial where codigo = '+ inttostr(codigo); DM.SQL_Filial.Active := True; DM.CDS_Filial.Active := True; FRM_Filial.Enabled := True;

31

FRM_Filial.lbl_codigo.Caption := DM.CDS_Filial.fieldbyname('codigo').AsString; FRM_Filial.edt_nome.Text := DM.CDS_Filial.fieldbyname('nome').AsString; FRM_consultas.Close; FRM_Filial.btn_voltar.SetFocus; end else IF FRM_Consultas.Caption = 'Cadastro de Banco' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_Banco.Active := False; DM.SQL_Banco.Active := False; DM.SQL_Banco.CommandText := 'select * from banco where codigo = '+ inttostr(codigo); DM.SQL_Banco.Active := True; DM.CDS_Banco.Active := True; FRM_Banco.Enabled := True; FRM_Banco.lbl_codigo.Caption := DM.CDS_Banco.FieldByName('codigo').AsString; FRM_Banco.edt_nome.Text := DM.CDS_Banco.FieldByName('nome').AsString; FRM_Banco.edt_nroconta.Text := DM.CDS_Banco.FieldByName('conta_corrente').AsString; FRM_Banco.edt_agencia.Text := DM.CDS_Banco.FieldByName('agencia').AsString; FRM_Banco.edt_saldo.Text := DM.CDS_Banco.FieldByName('saldo_atual').AsString; FRM_Consultas.Close; FRM_Banco.ARQ_Alterar.Enabled := True; FRM_Banco.ARQ_Excluir.Enabled := True;

32

end else IF FRM_Consultas.Caption = 'Cadastro de Cliente' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_Cliente.Active := False; DM.SQL_Cliente.Active := False; DM.SQL_Cliente.CommandText := 'select * from cliente where codigo = '+ inttostr(codigo); DM.SQL_Cliente.Active := True; DM.CDS_Cliente.Active := True; FRM_Cliente.Enabled := True; FRM_Cliente.lbl_codigo.Caption := DM.CDS_Cliente.FieldByName('codigo').AsString; FRM_Cliente.edt_nome.Text := DM.CDS_Cliente.FieldByName('nome').AsString; FRM_Cliente.edt_endereco.Text := DM.CDS_Cliente.FieldByName('endereco').AsString; FRM_Cliente.edt_numero.Text := DM.CDS_Cliente.FieldByName('numero').AsString; FRM_Cliente.msk_cep.Text := DM.CDS_Cliente.FieldByName('cep').AsString; FRM_Cliente.edt_bairro.Text := DM.CDS_Cliente.FieldByName('bairro').AsString; FRM_Cliente.msk_tel.Text := DM.CDS_Cliente.FieldByName('telefone').AsString; FRM_Cliente.edt_rg.Text := DM.CDS_Cliente.FieldByName('rg').AsString; FRM_Cliente.edt_cpf.Text := DM.CDS_Cliente.FieldByName('cpf').AsString; FRM_Consultas.Close; FRM_Cliente.ARQ_Alterar.Enabled := True; FRM_Cliente.ARQ_Excluir.Enabled := True;

33

end else IF FRM_Consultas.Caption = 'Cadastro de Contas a Pagar' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_ContasPagar.Active := False; DM.SQL_ContasPagar.Active := False; DM.SQL_ContasPagar.CommandText := 'select * from Contas_Pagar where codigo = '+ inttostr(codigo); DM.SQL_ContasPagar.Active := True; DM.CDS_ContasPagar.Active := True; FRM_ContasPagar.Enabled := True; FRM_ContasPagar.lbl_codigo.Caption := DM.CDS_ContasPagar.FieldByName('codigo').AsString; FRM_ContasPagar.edt_fornecedor.Text := DM.CDS_ContasPagar.FieldByName('fornecedor').AsString; FRM_ContasPagar.cb_banco.Text := DM.CDS_ContasPagar.FieldByName('cod_banco').AsString; FRM_ContasPagar.msk_dataemissao.Text := DM.CDS_ContasPagar.FieldByName('data_emissao').AsString; FRM_ContasPagar.msk_datavencimento.Text := DM.CDS_ContasPagar.FieldByName('data_vencimento').AsString; FRM_ContasPagar.edt_valor.Text := DM.CDS_ContasPagar.FieldByName('valor').AsString; FRM_ContasPagar.edt_descricao.Text := DM.CDS_ContasPagar.FieldByName('descricao').AsString; FRM_ContasPagar.EDT_Veiculo.Text := DM.CDS_ContasPagar.fieldbyname('veiculo').AsString; FRM_Consultas.Close; FRM_ContasPagar.ARQ_Alterar.Enabled := True;

34

FRM_ContasPagar.ARQ_Excluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Cadastro de Contas a Receber' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_ContasReceber.Active := False; DM.SQL_ContasReceber.Active := False; DM.SQL_ContasReceber.CommandText := 'select * from contas_receber where codigo = '+ inttostr(codigo); DM.SQL_ContasReceber.Active := True; DM.CDS_ContasReceber.Active := True; FRM_ContasReceber.Enabled := True; FRM_ContasReceber.lbl_codigo.Caption := DM.CDS_ContasReceber.FieldByName('codigo').AsString; FRM_ContasReceber.edt_cliente.Text := DM.CDS_ContasReceber.FieldByName('cliente').AsString; FRM_ContasReceber.cb_banco.Text := DM.CDS_ContasReceber.FieldByName('cod_banco').AsString; FRM_ContasReceber.msk_dataemissao.Text := DM.CDS_ContasReceber.FieldByName('data_emissao').AsString; FRM_ContasReceber.msk_datavencimento.Text := DM.CDS_ContasReceber.FieldByName('data_vencimento').AsString; FRM_ContasReceber.edt_valor.Text := DM.CDS_ContasReceber.FieldByName('valor').AsString; FRM_ContasReceber.edt_descricao.Text := DM.CDS_ContasReceber.FieldByName('descricao').AsString; FRM_Consultas.Close; FRM_ContasReceber.ARQ_Alterar.Enabled := True;

35

FRM_ContasReceber.AQR_Exlcluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Cadastro de Financeira' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_Financeira.Active := False; DM.SQL_Financeira.Active := False; DM.SQL_Financeira.CommandText := 'select * from financeira where codigo = '+ inttostr(codigo); DM.SQL_Financeira.Active := True; DM.CDS_Financeira.Active := True; FRM_Financeira.Enabled := True; FRM_Financeira.lbl_codigo.Caption := DM.CDS_Financeira.FieldByName('codigo').AsString; FRM_Financeira.edt_nome.Text := DM.CDS_Financeira.FieldByName('nome').AsString; FRM_Consultas.Close; FRM_Financeira.ARQ_Alterar.Enabled := True; FRM_Financeira.ARQ_Excluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Cadastro de Plano Pagamento' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_PlanoPagamento.Active := False;

36

DM.SQL_PlanoPagamento.Active := False; DM.SQL_PlanoPagamento.CommandText := 'select * from plano_pagamento where codigo = '+ inttostr(codigo); DM.SQL_PlanoPagamento.Active := True; DM.CDS_PlanoPagamento.Active := True; FRM_PlanodePagamento.Enabled := True; FRM_PlanodePagamento.lbl_codigo.Caption := DM.CDS_PlanoPagamento.FieldByName('codigo').AsString; FRM_PlanodePagamento.edt_nome.Text := DM.CDS_PlanoPagamento.FieldByName('nome').AsString; FRM_PlanodePagamento.cb_entrada.Text := DM.CDS_PlanoPagamento.FieldByName('entrada').AsString; FRM_PlanodePagamento.cb_prestacoes.Text := DM.CDS_PlanoPagamento.FieldByName('numero_prestacoes').AsString; FRM_PlanodePagamento.cb_interEntrada.Text := DM.CDS_PlanoPagamento.FieldByName('intervalo_entrada').AsString; FRM_PlanodePagamento.cb_interParcelas.Text := DM.CDS_PlanoPagamento.FieldByName('intervalo_parcelas').AsString; FRM_Consultas.Close; FRM_PlanodePagamento.ARQ_Alterar.Enabled := True; FRM_PlanodePagamento.ARQ_Excluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Cadastro de Veiculos' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_Veiculo.Active := False; DM.SQL_Veiculo.Active := False;

37

DM.SQL_Veiculo.CommandText := 'select * from veiculos where codigo = '+ inttostr(codigo); DM.SQL_Veiculo.Active := True; DM.CDS_Veiculo.Active := True; FRM_Veiculo.Enabled := True; FRM_Veiculo.lbl_codigo.Caption := DM.CDS_Veiculo.FieldByName('codigo').AsString; FRM_Veiculo.edt_marca.Text := DM.CDS_Veiculo.FieldByName('marca').AsString; FRM_Veiculo.edt_modelo.Text := DM.CDS_Veiculo.FieldByName('modelo').AsString; FRM_Veiculo.edt_anofabricacao.Text := DM.CDS_Veiculo.FieldByName('ano_fabricacao').AsString; FRM_Veiculo.edt_anomodelo.Text := DM.CDS_Veiculo.FieldByName('ano_modelo').AsString; FRM_Veiculo.edt_cor.Text := DM.CDS_Veiculo.FieldByName('cor').AsString; FRM_Veiculo.edt_placa.Text := DM.CDS_Veiculo.FieldByName('placas').AsString; FRM_Veiculo.edt_renavam.Text := DM.CDS_Veiculo.FieldByName('cod_renavam').AsString; FRM_Veiculo.edt_chassi.Text := DM.CDS_Veiculo.FieldByName('chassi').AsString; FRM_Veiculo.edt_filial.Text := DM.CDS_Veiculo.FieldByName('filial').AsString; FRM_Consultas.Close; FRM_Veiculo.ARQ_Alterar.Enabled := True; FRM_Veiculo.ARQ_Excluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Movimento de Compra' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger;

38

DM.CDS_movcompra.Active := False; DM.SQL_movcompra.Active := False; DM.SQL_movcompra.CommandText := 'select * from movcompra where codigo = '+ inttostr(codigo); DM.SQL_movcompra.Active := True; DM.CDS_movcompra.Active := True; FRM_movcompra.Enabled := True; FRM_movcompra.lbl_codigo.Caption := DM.CDS_movcompra.FieldByName('codigo').AsString; FRM_movcompra.EDT_Valor.Text := DM.Cds_movcompra.FieldByName('valor').AsString; FRM_movcompra.MSK_DataCompra.Text := DM.CDS_movcompra.FieldByName('data_compra').AsString; FRM_MovCompra.CB_CodVeiculo.Text := DM.CDS_MovCompra.FieldByName('codigo_veiculo').AsString; FRM_MovCompra.CB_CodCliente.Text := DM.Cds_MovCompra.FieldByName('codigo_cliente').AsString; FRM_MovCompra.CB_CodBanco.Text := DM.CDS_MovCompra.FieldByName('codigo_banco').AsString; FRM_Consultas.Close; FRM_MovCompra.ARQ_Alterar.Enabled := True; FRM_MovCompra.ARQ_Excluir.Enabled := True; end else IF FRM_Consultas.Caption = 'Movimento de Venda' then begin codigo := DM.CDS_Consulta.fieldbyname('codigo').AsInteger; DM.CDS_movvenda.Active := False;

39

DM.SQL_movvenda.Active := False; DM.SQL_movvenda.CommandText := 'select * from movvenda where codigo = '+ inttostr(codigo); DM.SQL_movvenda.Active := True; DM.CDS_movvenda.Active := True; FRM_movvenda.Enabled := True; FRM_movvenda.lbl_codigo.Caption := DM.CDS_movvenda.FieldByName('codigo').AsString; FRM_movvenda.EDT_Valor.Text := DM.Cds_movvenda.FieldByName('valor').AsString; FRM_movvenda.MSK_Datavenda.Text := DM.CDS_movvenda.FieldByName('data_venda').AsString; FRM_Movvenda.CB_CodVeiculo.Text := DM.CDS_Movvenda.FieldByName('codigo_veiculo').AsString; FRM_Movvenda.CB_CodCliente.Text := DM.Cds_Movvenda.FieldByName('codigo_cliente').AsString; FRM_Movvenda.CB_CodBanco.Text := DM.CDS_Movvenda.FieldByName('codigo_banco').AsString; FRM_Movvenda.CB_PlanoPagamento.Text := DM.CDS_MovVenda.FieldByName('cod_planopagamento').AsString; FRM_Consultas.Close; FRM_Movvenda.ARQ_Alterar.Enabled := True; FRM_Movvenda.ARQ_Excluir.Enabled := True; end end; Listagem 7 Utilizando Duplo Clique na Consulta

40

CAPTULO 5 - IMPLANTAO Implantao


Aps o termino da implementao vem fase de implantao, ou seja, instalar o software disponibilizando para o usurio final. Nesta fase o sistema foi implantado na empresa contratante. Na implantao foi feita a importao da antiga base de dados para as novas tabelas, e instalado o software no servidor e o client nas estaes de trabalho de cada usurio. Os usurios receberam treinamentos e instrues de como utilizar o sistema.

41

CAPTULO 6 - VERIFICAO 6.1 Anlise dos Resultados


Nesta fase devem ser verificados os resultados, e se esto de acordo com o esperado. Na Figura 17 apresentado o resultado do cronograma de atividades. Atividade Levantamento ferramentas de desenvolvimentos e banco de dados existentes Estudo da ferramenta escolhida (Delphi 6) Estudo do banco de dados escolhido (Firebird) Anlise de requisitos Projeto do sistema Implementao Implantao Testes Anlise dos Resultados OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK Mar OK Abr OK Mai Jun Jul Ago Set Out Nov

FIGURA 17 - Cronograma de atividades/perodo

42

6.2 Quanto ao Levantamento de Requisitos


Compreendi mento das necessidades, levando a viso de um projeto estruturado aos usurios, a mesma viso do que deve ser construdo para resoluo do problema. Desenvolvedor e clientes, em conjunto, buscando levantar e priorizar as necessidades dos futuros usurios do software.

6.3 Quanto Anlise de Requisitos


Estudo detalhado dos dados levantados, onde modelos foram construdos a fim de representar o sistema de software a ser desenvolvida, estratgia de soluo das necessidades, e definio do sistema em geral.

6.4 Quanto ao Projeto


Escolha da ferramenta de softwares utilizada para o desenvolvimento do sistema, definio da arquitetura do sistema, definio do sistema gerenciador de banco de dados (SGBD).

6.5 Quanto Implementao


A implentao do sistema ocorreu de acordo com o proposto, dentro do cronograma e sem erros.

43

66 Quanto Validao
O sistema de software est atendendo s necessidades do cliente.

7 - REFERNCIAS BIBLIOGRFICAS

Algarves, Universidade. Modelo Cascata ou Clssico. [Internet: http://w3.ualg.pt/~pventura/ep/aulas_tp/t1_g13.pdf]

CELEPAR, Companhia de Informtica do Paran. Modelo aplicado de descrio, qualificao, anlise e validao. [Internet: http://www.pr.gov.br/batebyte/edicoes/1999/bb93/requisito.htm] Delphi + Mais. Modelo Cascata ou Clssico. [Internet: http://www.delphimais.com/modules/wfsection/article.php?articleid=1] HAERTEL, ANDERSON RODRIGUES Introduo ao Firebird So Paulo, 2002. 45p. MONTEIRO SILVIO TAVARES Como Fazer e Gerenciar Usando a Informtica Florianpolis, 2004. 267p. PATTON, ROBERT Projetando e Administrando Banco de Dados SQL Server 2000 Rio de Janeiro, Alta Books, 2002. 792p.

SILVA, IVAN JOS DE MECENAS Desenvolvendo com Borland Delphi 6 & InterBase 6 Rio de Janeiro, Book Express, 2001. 179p.

44