SlideShare uma empresa Scribd logo
1 de 125
Baixar para ler offline
FUNDAÇÃO CULTURAL CAMPANHA DA PRINCESA
FACULDADES INTEGRADAS PAIVA DE VILHENA
    CURSO DE SISTEMAS DE INFORMAÇÃO




        CARLOS HENRIQUE PEREIRA




 Desenvolvimento de um Software para Atendimento
                  Bancário




               Campanha – MG
                    2011
FUNDAÇÃO CULTURAL CAMPANHA DA PRINCESA
FACULDADES INTEGRADAS PAIVA DE VILHENA
    CURSO DE SISTEMAS DE INFORMAÇÃO




        CARLOS HENRIQUE PEREIRA




 Desenvolvimento de um Software para Atendimento
                  Bancário




                     Monografia apresentada à disciplina Trabalho
                     Final de Curso, como parte dos requisitos para
                     obtenção do titulo de Bacharel em Sistemas de
                     Informação,     pela    Fundação      Cultural
                     Campanha da Princesa.

                     Orientador: Prof. Paulo Guilherme Pereira




               Campanha – MG
                    2011
CARLOS HENRIQUE PEREIRA


   SOFTWARE PARA ATENDIMENTO BÁNCARIO


  Monografia aprovada como requisito para a obtenção do
      título de Bacharel em Sistemas de Informação, das
           Faculdades Integradas Paiva de Vilhena.

                        Data da aprovação
                       ______/______/______


                 BANCA EXAMINADORA

Nome:__________________________________________________________
Instituição:______________________________________________________
Assinatura:______________________________________________________


Nome:__________________________________________________________
Instituição:______________________________________________________
Assinatura:______________________________________________________


Nome:__________________________________________________________
Instituição:______________________________________________________
Assinatura:______________________________________________________
Dedicatória


Dedico este trabalho a Deus, primeiramente,
que me deu muita força para conclusão, a
toda minha família que sempre incentivou e
esteve comigo todo esse tempo.
Agradecimentos


Agradeço ao professor Paulo Guilherme
Pereira que me orientou durante esta jornada
de trabalho, incentivando e apoiando o seu
desenvolvimento; ao coordenador do curso
Alessandro Mateus Salomé, pela confiança e
apoio, e a todos os meus amigos que
acreditaram em mim.
“[...] E nunca considerem seu estudo como uma obrigação, mas
sim como uma oportunidade invejável de aprender, sobre a
influência libertadora da beleza no domínio do espírito, para
seu prazer pessoal e para o proveito da comunidade à qual
pertencerá o seu trabalho futuro”.
                                              Albert Einstein
RESUMO


        Com o crescimento dos serviços bancários, surgem situações desagradáveis, na
maioria das vezes, na hora dos atendimentos. Frequentemente, dentre desse crescimento
gera-se a possibilidade de se criar sistemas informatizados para que seja possível um melhor
atendimento não só nos serviços bancários, mas dentre outros estabelecimentos. E a
principal reclamação que é enfrentada nesse cenário é ter que ficar tempo demais em uma
fila de espera e ainda por falta de comodidade para ser atendido. Se parar e pensar logo vem
à ideia; e quanto às pessoas idosas, portadoras de alguma deficiência física? Essas pessoas
sofrem muito mais, dessa forma faz com que gere irritabilidade por partes dos clientes. Com
o desenvolvimento de um software que gerencie filas por senhas, poderíamos reduzir
consideravelmente diversos aborrecimentos.
        Diante do exposto, esta pesquisa irá demostrar como o desenvolvimento de um
software capaz de gerenciar filas por senhas contendo informações relevantes para o
ambiente implantado concorreria para uma melhora acerca dos problemas supracitados. Os
benefícios gerados em caso de implantação do software é oferecer maiores benefícios não só
para a empresa como também para seus clientes.


PALAVRAS CHAVE: Serviços bancários, senhas por filas, estabelecimentos, atendimento
e software.
ABSTRACT


        With the growth of banking services, arise unpleasant situations, most often, in hours
of care. Often, of this growth creates the possibility of creating computer systems so that you
can better care not only in banking, but among other establishments. And the main
complaint that is addressed in this scenario is to have to stay too long in a queue, and yet for
lack of convenience to be served. If you stop and think immediately comes to mind, and as
the elderly, suffering from any physical disabilities? These people suffer much more, thus
generating cause’s irritability by customers. With the development of a software that
manages queues for passwords, could greatly reduce many hassles.
        Given the above, this research will demonstrate how the development of a software
able to manage passwords for queues containing information relevant to the deployed
environment would further improvement of the problems mentioned above. The benefits in
the event of deployment of the software is not only provide greater benefits to the company
but also for their customers.


KEY WORDS: Banking, passwords by lines, facilities, service and software.
LISTA DAS FIGURAS


Figura 01 – DFD Login dos Usuários                             30
Figura 02 – DFD Cadastro de Usuários                           31
Figura 03 – DFD Cadastro de Mesas                              32
Figura 04 – DFD Alteração de Senha                             33
Figura 05 – DFD Cadastro de Atendente                          34
Figura 06 – DFD Cadastro de Mensagens                          35
Figura 07 – DFD Acesso ao Guichê                               36
Figura 08 – DFD Cadastro de Mensagens Manualmente              37
Figura 09 – Caso de Uso de Clínica Médica                      38
Figura 10 – UML Funções dos Usuários 1                         39
Figura 11 – UML Funções dos Usuários 2                         39
Figura 12 – UML Funções dos Usuários 3                         40
Figura 13 – UML Funções do Administrador 1                     40
Figura 14 – UML Funções do Administrador 2                     41
Figura 15 – Diagrama de ER                                     42
Figura 16 – Consulta SQL                                       42
Figura 17 – Diagrama de Classe                                 43
Figura 18 – Gráfico de Gantt (Informações do Software)         55
Figura 19 – Gráfico de Gantt (Tempo de Realização)             55
Figura 20 – Gráfico de Gantt (Tarefas)                         56
Figura 21 – Gráfico de Gantt (Pessoas Envolvidas)              56
Figura 22 – Tela Splash                                        58
Figura 23 – Tela de Login                                      59
Figura 24 – Tela Menu Principal                                59
Figura 25 – Amostra da Tela de Senhas Comuns e Preferenciais   60
Figura 26 – Tela de Atendente                                  60
Figura 27 – Tela de Manutenção de Atendimentos                 61
Figura 28 – Tela de Manutenção de Mesas                        61
Figura 29 – Tela de Manutenção de Senha                        62
Figura 30 – Tela de Manutenção de Mensagens                    62
Figura 31 – Tela do Painel de Atendimento                      63
Figura 32 – Tela de Lista de Usuários                          63
Figura 33 – Tela do Gráfico Demonstrativo dos Atendimentos   64
Figura 34 – Tela de Cadastro de usuários                     64
Figura 35 – Tela de Sobre o Sistema                          65
Figura 36 – Tela de Relatório dos Atendimentos               65
LISTA DOS QUADROS


Quadro 01 – Tabela Usuários                         28
Quadro 02 – Tabela Letreiro Digital                 28
Quadro 03 – Tabela Atendimento                      29
Quadro 04 – Tabela Atendente                        29
Quadro 05 – Tabela Senha                            29
Quadro 06 – Tabela Mesas                            30
Quadro 07 – Necessidades do Software                46
LISTA DAS TABELAS


Tabela 01 – Investimento                                24
Tabela 02 – Despesas Fixas Mensais                      25
Tabela 03 – Licenciamentos do Software                  25
Tabela 04 – Custo Total do Período de Desenvolvimento   26
Tabela 05 – Custo Após o Período de Desenvolvimento     26
Tabela 06 – Custo Total                                 26
SUMÁRIO


1. Tema                                                           14
      1.1 Introdução                                              14
      1.2 Problema                                                15
      1.3 Hipóteses                                               15
      1.4 Justificativa                                           15
      1.5 Objetivos                                               15
             1.5.1 Objetivo Geral                                 15
             1.5.2 Objetivos Específicos                          15
      1.6 Metodologia                                             16


2. Marco Teórico                                                  17
      2.1 Histórico da Linguagem de Programação                   17
             2.1.1 Sintaxe                                        17
             2.1.1 Semântica                                      17
      2.2 Microsoft Corporation e a Linguagem Visual Basic .NET   18
      2.3 Conceitos Sobre Banco de Dados                          19
             2.3.1 Banco de Dados SQL                             19
             2.3.2 Banco de Dados em Access                       20
             2.3.3 SGBD                                           20


3. Desenvolvimento                                                21
      3.1 Definição do Problema                                   21
      3.2 Estudo de Viabilidade                                   21
             3.2.1 Custos Envolvidos                              22
             3.2.2 Investimentos                                  22
             3.2.3 Período de Desenvolvimento                     23
             3.2.4 Custo Total do Período de Desenvolvimento      23
             3.2.5 Custos Após o Período de Desenvolvimento       24
             3.2.6 Custo Total                                    24
             3.2.7 Benefícios                                     25
             3.2.8 Conclusão                                      25
      3.3 Solução Proposta                                        25
3.4 Dicionário de Dados                                               26
      3.5 Diagramas de Fluxos de Dados                                      28
      3.6 Diagramas de Casos de Uso                                         37
      3.7 Entidade Relacionamento                                           40
      3.8 Diagrama de Classes                                               42


4. Software para Atendimento Bancário                                       43
      4.1 Do que se Trata o Sistema                                         43
      4.2 Qual a sua Finalidade                                             43
      4.3 Funcionamento do Software                                         43
      4.4 Aplicação do Software de Atendimento                              44
      4.5 Ciclo de Vida do Software de Atendimento                          44
      4.6 Elicitação de requisitos                                          44
             4.6.1 Motivação                                                44
             4.6.2 Visão da Solução                                         45
             4.6.3 Escopo da Solução                                        45
             4.6.4 Limites e Restrições da Solução                          46
             4.6.5 Análise e Negociação de Requisitos                       46
                     4.6.5.1 Critérios de Aceitação do Produto do Projeto   46
                     4.6.5.2 Requisitos de Aprovação                        46
                     4.6.5.3 Entrega do Projeto                             46
                     4.6.5.4 Riscos Iniciais Identificados                  47
                     4.6.5.5 Premissas                                      47
      4.7 Especificações de Requisitos de Software                          47
             4.7.1 Propósito                                                47
             4.7.2 Escopo                                                   47
      4.8 Identificação e Localização do Documento                          48
             4.8.1 Organização do Documento                                 48
             4.8.2 Descrição Geral do Software                              48
             4.8.3 Requisitos Funcionais                                    48
             4.8.4 Requisitos Não-Funcionais                                49
      4.9 Visões Gerais do Software                                         49
             4.9.1 Características dos Usuários                             49
             4.9.2 Restrições                                               49
4.10 Chamadas                                   49
             4.10.1 Requisitos Funcionais             49
             4.10.2 Requisitos Não-Funcionais         50
                    4.10.2.1 Usabilidade              51
                    4.10.2.2 Confiabilidade           51
                    4.10.2.3 Desempenho               51
                    4.10.2.4 Reusabilidade            51
                    4.10.2.5 Segurança                51
                    4.10.2.6 Acessibilidade           52
      4.11 Requisitos de Interface                    52
             4.11.1 Interfaces com Usuários           52
             4.11.2 Interfaces Hardware e Software    52
             4.11.3 Interfaces de Comunicação         52
      4.12 Requisitos de Documentação                 52
             4.12.1 Manual dos Usuários               53
             4.12.2 Duvidas On-Line                   53
      4.13 Requisitos de Licença                      53
      4.14 Informações para Suporte                   53
      4.15 Gerenciamentos de Mudanças de Requisitos   53
      4.16 Análise de Risco                           54


5. Relatório de Atividades                            55
      5.1 Gráfico de Gantt                            55


6. Relação dos Componentes                            57


7. Apresentação das Interfaces do Usuário             68


Conclusão                                             76


Referências Bibliográficas                            77


Anexo I                                               79
Anexo II                                              113
16



1. Tema


       Desenvolvimento de um Software para Atendimento Bancário.


1.1 Introdução


       Com o avanço da tecnologia da informação, observa-se a necessidade de pensar e
analisar o mercado de trabalho, buscando a geração de oportunidades para a inovadora
geração da qual que fazemos parte, de modo que seja possível desenvolver métodos mais
rápidos para o auxilio da vida quotidiana, uma vez que a tecnologia da informação avança,
nesse cenário globalizado, criam novas estruturas para serem analisadas e estudadas com a
finalidade de reformulação e entendimento. Pensando dessa forma para melhor atender o
mercado de trabalho e não deixar de ressaltar a necessidade da realidade da qual fazemos
parte, dessa forma observa-se um recorte ou delimitação em realizar um projeto que pudesse
gerenciar filas por senha para que assim através da informática e o avanço tecnológico
gerasse melhor satisfação para as futuras pessoas que utilizarão.
        O SOFTWARE PARA ATENDIMENTO BANCÁRIO é parte integrante da
estratégia que visa garantir a qualidade na realização dos atendimentos, a agilidade nos
serviços prestados e o alto nível de satisfação do cidadão. No mundo atual podemos provar
que nesse cenário globalizado não podemos ficar parado diante da realidade.
       Assim a presente pesquisa busca, por meios de processos informatizados através das
tecnologias presentes o desenvolvimento do software. O sistema permite organizar as filas
de atendimento, gerir as demandas com o correto dimensionamento e alocação dos recursos
materiais e humanos para o atendimento e prestação dos serviços, propiciando a rapidez e
eficiência nos serviços públicos prestados e garantindo a satisfação do cidadão.
       Ademais, se parar para analisar e refletir sobre o tema poderá facilmente entender as
razões pela qual pretendemos realizar a pesquisa. As expectativas quanto ao
desenvolvimento é grande e é fundamental ter uma visão global das estruturas o dos índices
que serão alcançados. Pensando mais em longo prazo e com objetivo organizacional é viável
a expansão e a necessidade de renovação no mercado, assim estabelecendo níveis de fluxos
de informação podemos atingir grande parte das necessidades podendo chegar a excelência
nos atendimentos.
17



1.2 Problema


       O problema principal é conseguir facilitar o atendimento e garantir um melhor
atendimento aos clientes.


1.3 Hipóteses


       Com a nova configuração de mundo globalizado, o tempo passou a ser um elemento
imprescindível para a vida das pessoas. Dessa forma, seria possível projetar um software que
desse conta de poupar tempo e dar maior tranquilidade e conforto para o público desse
segmento.


1.4 Justificativa


       Com o avanço da tecnologia da informação surgem cada vez mais necessidades e
com elas novas perturbações. Dentro desse crescimento em tempo real o melhor a fazer é
tentar realizar com a melhor qualidade e empenho a busca da satisfação dos cidadãos,
demonstrando através da programação de computadores e olhando com mais cuidado o que
se passa diante de nossos olhos diante desse cenário globalizado o meu tema justifica-se pela
falta frequente de comprometimento com os clientes que não podem ficar mais de 15
minutos para o atendimento bancário.


1.5 Objetivos


1.5.1 Objetivo Geral


       Desenvolver um software capaz de controlar filas através de senhas, com o intuito de
gerar melhor atendimento nos setores públicos e privados.


1.5.1 Objetivos Específicos
18



    Criar um ambiente de fácil utilização para o usuário final, a ponto que realiza tarefas
       de modo mais rápido e eficaz;
    Combinar diversos meios de comunicação com os clientes, tais como painel
       eletrônico com informações atualizadas do que está acontecendo no mundo todo;
    Reduzir gastos, a fim de possibilitar maiores possibilidades a adquirir o sistema pelo
       baixo custo;
    Permitir que o sistema de banco de dados armazene e gere relatórios sobre os dados
       cadastrados em sua base;
    Verificar novas possibilidades de atendimento e;
    Transmitir maior segurança.


1.6 Metodologia


       Para o que o projeto fosse desenvolvido foram feitas pesquisas em diversos sites e
livros para obter um maior embasamento na área tendo em base; análise de sistemas,
linguagem de programação e algoritmo.
       O sistema será desenvolvido em linguagem VB .NET utilizando o banco de dados
em SQL, modelos de diagramas utilizados são: diagramas de fluxo de dados, diagramas de
caso de uso, dicionário de dados e diagramas de classes.
       Com respeito ao material utilizado foi um microcomputador.
19



2. Marco Teórico

       Nesta sessão do capítulo será visto os conceitos relevantes ao desenvolvimento do
software.


2.1 Histórico Da Linguagem De Programação


       De acordo com JÚNIOR (2009), Desde o aparecimento dos primeiros computadores
que ficou claro que seria necessário encontrar um método padronizado para melhor
expressar as instruções que deveriam ser dadas à máquina. Um conjunto de regras sintáticas
e semânticas que permitissem definir um programa, passível de ser interpretado pela
máquina da forma mais eficiente.
       A linguagem de programação se deu inicio na década de 50, com isso ficou claro que
de alguma forma poderia criar linhas de códigos através dos comandos a fim de controlar
máquinas. Vale ressaltar que antes do desenvolvimento das linguagens de programação de
alto nível as máquinas (computadores) eram controladas por uma linguagem de baixo nível
que se caracteriza linguagem de máquina ou como preferir (Assembly), nenhuma outra
linguagem se equipara a Assembly porque é a única mais próxima da máquina, inclusive
muitos programas desenvolvidos ainda utilizam a linguagem de máquina, por ter como
característica a rapidez de compilação das rotinas criadas.
       No momento em que o homem sentiu maiores necessidades de controlar as
máquinas, observou-se o desenvolvimento de linguagens de alto nível, como foi mencionada
logo acima que para tal forma gerasse um melhor aproveitamento, produtividade, rapidez,
dentre outros fatores.   Temos que ter em mente que a linguagem de programação se
configura a partir de códigos (instruções) passados para o computador que assim pudesse
armazenar e gerar determinada informação para o usuário final.
       Quando falamos de linguagem de programação, temos dois conceitos muitos
importantes a respeito, a saber: a sintaxe e a semântica, sob os quais deteremos a seguir.


2.1.1 Sintaxe


       A sintaxe forma um conjunto de regras para construir os sistemas que serão
instalados nas máquinas (computadores). Ela está ligada diretamente com a escrita das
linhas de códigos e como esses irão se comportar quando executados diante de determinadas
20



rotinas criadas, e quando falamos de sintaxe estamos referindo-nos ao que foi digitado
como: letras, números, caracteres especiais entre outros. Desta forma, podemos constatar
que a sintaxe é o que chamamos de alfabeto da linguagem de programação em si.


2.1.2 Semântica
        Tratamos a semântica como a parte mais importante na elaboração de um sistema de
computador, porque é ela quem define, caracteriza a linguagem de programação. Podemos
expressar a semântica da seguinte forma: tal como uma rotina para gerar números
aleatoriamente pode ser criada de diferentes formas e é isso que caracteriza, ou seja, ter um
valor lógico e coerente não importando a linguagem utilizada para o desenvolvimento.
        Dessa forma, ao se entender a sintaxe e semântica será mais confiável a escrita e a
forma de interpretação da máquina na hora de compilar as linhas de códigos seja mais
eficiente.
        Com o passar dos anos, o incentivo aos avanços tecnológicos, assim como os
desenvolvimentos dos cenários econômicos, obrigaram a fazer diversas padronizações e
comunicação com um todo, assim as linguagens de programação evoluíram em termos
bastante significativos para o progresso, transmitindo maior produtividade, eficiência,
confiabilidade e principalmente rapidez, para que pudesse gerar uma interação entre o
homem e o computador.


2.2 Microsoft Corporation e a Linguagem Visual Basic .NET


        De acordo com FRANKLIN (2002), a Microsoft sempre esteve na dianteira quando
se trata de ambientes avançados de desenvolvimento, e os desenvolvedores do Visual Basic
geralmente são os primeiros a experimentar suas inovações.
        A empresa Microsoft iniciou-se como uma nova empresa na década de 70 com a
criação da linguagem de programação BASIC, onde gerou um grande sucesso e se tornou
muito popular para os desenvolvedores de softwares.
        Segundo MACKENZIE & SHARKEY (2002), na verdade, o Visual Basic .Net
possui um numero real de versões, 7,.7 – só que ele não é muito usado. Da mesma maneira
como o Windows 2000 é na realidade a versão 5.0 do Windows NT, quando mais simples
ou assimilável é o nome, mas ele é usado. No entanto, não espere ouvir falar do Visual Basic
21



7.0 com frequência; havia até uma penalidade em dinheiro dentro da Microsoft para quem se
referisse ao Windows 2000 como NT 5.0.
       Visual Basic .NET é uma linguagem de programação desenvolvida pela Microsoft e,
no que diz a respeito à linguagem, ela é totalmente orientada a eventos e não como dizem
por aí que é totalmente orientada a objetos mas, vale ressaltar que o VB.NET também tem
suas características e trabalha com orientação a objetos. Nesse sentido, podemos classificar
os métodos da linguagem VB.NET, que tem impactos relacionados com a ideia de
classificar, organizar e abstrair coisas, a fim de se criar estruturas ou o que chamamos de
conjuntos de operações. Esse empenho em analisar diversos modos funcionais de dados
torna-se de fácil manuseio.


2.3 Conceitos Sobre Banco de Dados


       Segue, logo abaixo, todas as especificações com relação aos conceitos sobre banco
de dados.


2.3.1 Banco de Dados SQL


       Segundo MACHADO (2004), SQL significa Structured Query Language –
Linguagem Estruturada de Pesquisa, de grande utilização, teve seus fundamentos no modelo
relacional de Codd (1970). Sua primeira versão recebeu o nome de SEQUEL (Structured
English Query Language), definida por D.D. Chamberlim, entre outros, em 1974, nos
laboratórios de pesquisa da IBM (Califórnia).
   A evolução contínua e rápida sempre teve a necessidade de se desenvolver e construir
sistemas capazes de gerar informações fáceis e seguras. Pensando assim, evoluímos com o
intuído de armazenar informações onde fosse possível a manipulação através de comandos
enviados para o computador e assim deu-se ao nascimento do banco de dados onde,
podemos realizar diversas consultas e gerencia-los da maneira que for mais conveniente para
a utilização. Dentre esses conceitos podemos encontrar algumas características principais
com relação ao banco de dados, tais como:


    Incluir Registros;
    Alterar Registros;
22



    Excluir Registros;
    Consultar Registros existentes nas tabelas.
                     Bancos de dados imensos exigem uma estrutura bastante sólida. Os
                     programadores podem usar aplicações Visual Database Tools que vem com SQL
                     Server para criar um esquema de aplicação apropriado, que leve em consideração o
                     tipo de dados, o local do servidor e os padrões de utilização. Os programadores
                     também precisam entender como normalizar e “desnormalizar” a estrutura visando
                     ao desempenha. (OHATA; HAYNIE; NIELSEN, 1999, p.15).

       Contudo, o bando de dados trata-se de um conjunto de informações organizadas e
guardadas de forma segura e de fácil manipulação, onde podem ser realizados acessos nos
dados contidos no mesmo.


2.3.2 Banco de Dados em Access


       De acordo com o livro TREINAMENTO RÁPIDO EM MICROSOFT ACCESS 97
(1988), um banco de dados é uma coleção de dados estruturados. Como a distribuição dos
dados é previsível, podemos manipular os itens para extrair informações úteis. O
componente mais básico de um banco de dados Access é uma tabela na qual estão as
informações ordenadas em linhas e colunas.
       O banco de dados Access é um banco de dados gratuito, ou seja, não é necessário
pagar nada para usá-lo em aplicações (Softwares) para armazenamento de dados.



2.3.3 SGBD


       SGBD ou Sistemas Gerenciadores de Banco de Dados são programas com objetivos
de criar base de dados um exemplo de programa é o SQL como mencionado na seção 2.3.1.
23



3. Desenvolvimento


3.1 Definições do Problema


   O Sistema Atual apresenta vários problemas, tais como:
    Alto custo de contrato de manutenção;
    Alto custo de aquisição para novas licenças;
    Alto custo de implantação e treinamento;
    Dependência do fornecedor para qualquer pequena alteração, tal como a inclusão de
       uma nova fila;
    Descentralização de informações, acarretando na impossibilidade de consulta à
       informação de forma centralizada e na necessidade de servidores de aplicação;
    Falta de dados estatísticos de atendimentos;
    Dificuldade de utilização, devido à necessidade dos atendentes em decorar códigos
       para o registro de serviços, afetando a produtividade do atendimento e causando
       erros nas codificações.
   Diante do exposto, analisamos e criamos um novo projeto a ser implantado. No item a
seguir veremos a idéia do projeto.


3.2. Estudo de viabilidade


       Segundo DAVES (1994), estudo de viabilidade tem como finalidade determinar se
há uma solução viável; caso não haja, qualquer tempo, esforço ou dinheiro gasto no projeto
é um desperdício. Nessa ordem de ideias, expõe-se que:
                        Uma vez identificado o escopo (com a concordância do cliente), é razoável
                        perguntar: “Podemos construir um software para satisfazer esse escopo? O projeto é
                        exequível?” Frequentemente, os engenheiros passam por cima dessas questões (ou
                        são pressionados para desconsiderá-las por gerentes ou clientes pacientes), para ficar
                        envolvidos apenas num projeto que está condenado desde o início. (PRESSMAN,
                        2002, p. 111)

       Há diversas maneiras de determinar a viabilidade econômica de um projeto, dentre as
quais destacamos a análise de custo-benefício. O principal benefício que temos que ter em
mente é a garantia de melhora dos serviços prestados à população. Além disso, um melhor
aproveitamento dos recursos também deve ser levado em conta.
24



        Nesta seção iremos expor qual é o benefício real obtido com a alternativa e também
analisaremos em quanto tempo o custo atual associado poderá ser recuperado.


3.2.1 Custos envolvidos


     Custo com desenvolvimento:
                Salário dos desenvolvedores;
                Treinamento em novas tecnologias;
                Aquisição de ferramentas de software, para auxiliar no desenvolvimento;
                Computadores;
                Energia elétrica;
                Material de escritório.


     Custo com implantação e instalações;
                Treinamento de pessoal;
                Compra de servidores e equipamentos de rede;
                Salário dos técnicos para instalação do servidor e da rede.


     Custos operacionais:
                Manutenção;
                Pessoal;


3.2.2 Investimentos


        O investimento necessário para operacionalização deste projeto consiste na aquisição
de um servidor capaz de atender a demanda de transações via rede.
Tabela 01 - Investimento
 Item                       Quantidade            Valor Unitário (R$)     Valor Atual (R$)
 TV LCD 40 FULL HD          1                     2.000,00                2.000,00
 Servidor                   1                     2.000,00                2.000,00
 Computador                 2                     1.000,00                2.000,00
 Impressora                 1                     450,00                  450,00
 TOTAL                      -                     -                       6.450,00
Fonte: Próprio autor
25



3.2.3 Período de desenvolvimento


        As despesas listadas logo abaixo referem-se ao período de desenvolvimento do
software, com base em despesas fixas mensais.
Tabela 02 – Despesas Fixas Mensais
 Item                                Quantidade          Valor Unitário (R$)    Valor Atual (R$)
 Salário Programadores               4                   1.500,00               6.000,00
 Salário Designer                    1                   1.000,00               1.000,00
 Salário Analista de Sistemas        1                   1.800,00               1.800,00
 Energia                             -                   200,00                 200,00
 Telefone                            -                   100,00                 100,00
 Material de Escritório              -                   50,00                  50,00
 Banda Larga                         -                   100,00                 100,00
 TOTAL                               -                   -                      9.250,00
Fonte: Próprio Autor



        No cálculo a seguir, incluiremos no preço do computador os custos de obtenção e
licenciamento dos softwares a serem usados no projeto.
Tabela 03 – Licenciamentos do Software

 Item                                    Quantidade Valor Unitário (R$) Valor Atual (R$)
 Equipamentos                            -           -                         9.250,00
 Sistema Operacional        1                        400,00                    400,00
 Ferramenta              de
                            1                        500,00                    500,00
 desenvolvimento
 Ferramenta de modelagem    1                        1.000,00                  1.000,00
 TOTAL                                   -           -                         11.150,00
Fonte: Próprio Autor



3.2.4 Custo total do período de desenvolvimento


        Após analises realizadas com o período de desenvolvimento chegamos à seguinte
conclusão: o sistema pode ser concluído no período de três (3) meses, assim a lista logo
abaixo mostra a tabela dos meses e o total gerado para o desenvolvimento.
26


         Tabela 04 – Custo Total do Período de Desenvolvimento
           Mês                                     Valor Total (R$)
           Primeiro Mês                            9.250,00
           Segundo Mês                             9.250,00
           Terceiro Mês                            9.250,00
           TOTAL                                   27.750,00
          Fonte: Próprio Autor



3.2.5 Custos após o período de desenvolvimento


       Os custos relativos a este período compreendem as despesas com treinamento de
funcionários e a manutenção do sistema.
         Tabela 05 – Custo Após o Período de Desenvolvimento
           Item                                    Valor (R$)
           Treinamento (um mês)                    400,00
           Manutenção                              300,00
          Fonte: Próprio Autor



3.2.6 Custo Total


       Abaixo, especificamos o custo total do sistema para um período de quatro anos.
Estimamos que um mês de treinamento, realizado no primeiro ano, será necessário para que
os funcionários se adaptem ao uso do programa. Consideramos, também, que no primeiro
ano a manutenção é coberta pela garantia, e que, a partir do segundo ano, seu custo é de
R$300,00 por mês.
       Como especificado, confira na tabela abaixo:
         Tabela 06 – Custo Total
           Período                                 Valor (R$)
           1° ano                                  27.750,00
           2° ano                                  3.600,00
           3° ano                                  3.600,00
           4° ano                                  3.600,00
           TOTAL                                   38.550,00
          Fonte: Próprio Autor
27



3.2.6 Benefício


       Como benefício intangível podemos citar: a melhora no atendimento dos clientes, a
diminuição do congestionamento das filas, a eficiência no fornecimento das informações e
organização das solicitações de serviços.


2.2.7 Conclusão


       Um grande gerenciamento e economia de custo à empresa, além da possibilidade de
novos negócios, visto que poderá ser utilizado por qualquer Órgão no atendimento à
população. Visto dessa forma que o estudo de viabilidade está relacionado com o custo do
desenvolvimento e a manutenção de uma forma geral do software fica claro que de uma
forma ou outra para se manter no mercado atual é essencial investir para ter um retorno.
Carvalho (2001) define da seguinte forma:
                      A quantidade de tempo que se deve gastar com o estudo de viabilidade depende do
                      projeto. Por exemplo, é bastante razoável gastar um dia para avaliar as alternativas
                      para modificar o formato do relatório. Já para desenvolver um ovo sistema de
                      contabilidade, será necessário gastar semanas. O desenvolvimento de um novo
                      pacote que custará milhões de dólares com certeza pede um estudo mais apurado das
                      possíveis soluções e, portanto, pode levar messes ou até anos.



3.3 Soluções Proposta


     Como solução proposta viso desenvolver um software capaz de controlar filas por
senhas, com o intuito de realizar chamadas através de senhas e, ainda, o software conterá
informações contidas em uma tela (Painel) de plasma ou LCD com informativos eletrônicos.


3.4 Dicionários de Dados


       Dicionário de dados é uma lista que contém as características, definições lógicas para
os dados inseridos nas tabelas. Durante o desenvolvimento e a análise de fluxo é através do
dicionário de dados que nos proporciona melhores análises durante o planejamento e criação
de um sistema de computador. GANE & SARSON (2002) definem da seguinte forma:
                      O nome dicionário de dados adquire um significado mais amplo quando começamos
                      a incluir detalhes sobre processos que, estritamente falando, se referem a lógica e
                      não a dados. Talvez devesse ser realmente chamado de diretório de projeto. (p. 52)
28



       Logo abaixo estão inseridas as tabelas do dicionário de dados conforme suas
respectivas características.

Quadro 01 – Tabela de Usuário
                                       TABELA USUARIO
   Nome da             Descrição da coluna  Data type Nulabilidade          Constraint
    coluna
   Usuário              Nome do usuário     Varchar       Not null
                                              (10)
     Senha              Senha do usuário    Varchar       Not null
                                              (10)
      Tipo              Tipo do usuário     Char (1)      Not null
Fonte: Próprio Autor
        A tabela usuário tem como objetivo dentro do sistema registar todos os usuários que
possivelmente irão utilizar o sistema.


Quadro 02 – Tabela Letreiro Digital
                                TABELA LETREIRO DIGITAL
  Nome da              Descrição da coluna Data type Nulabilidade           Constraint
   coluna
Id_mensagem               Código da             Int        Not null      Chave primária e
                          mensagem                                       alto incremento
  Nome da              Nome da mensagem      Varchar       Not null
  mensagem                                    (255)
Fonte: Próprio Autor
        A tabela letreiro digital tem como objetivo dentro do sistema armazenar todas as
informações apresentadas para os clientes no painel.


Quadro 03 – Tabela Atendimento
                                  TABELA ATENDIMENTO
   Nome da               Descrição da    Data type Nulabilidad              Constraint
    coluna                  coluna                     e
    Código                Código do         Int     Not null            Chave primária e
 atendimento             atendimento                                     alto incremento
    Código                Código do         Int     Not null            Chave estrangeira
  atendente               atendente                                       referenciando a
                                                                         tabela atendente
Número_Senh            Número da Senha     Varchar (20)    Not null
     a
   Data                    Data do          Datetime       Not null
                         atendimento
Fonte: Próprio Autor
        A tabela atendimento tem como objetivo dentro do sistema registrar todos os
atendimentos gerados durante todo o dia, como: data, hora, senhas, qual atendente realizou
determinada chamada.
29


Quadro 04 – Tabela Atendente
                                     TABELA ATENDENTE
   Nome da             Descrição da coluna Data type Nulabilidade            Constraint
     coluna
    Código             Código do atendente     Int         Not null       Chave primária de
   atendente                                                               alto incremento
     Nome              Nome do atendente     Varchar       Not null
                                              (60)
Fonte: Próprio Autor
        A tabela atendente tem como objetivo dentro do sistema registrar todos os atendentes
que utilizarão o sistema.


Quadro 05 – Tabela Senha
                                        TABELA SENHA
 Nome da coluna             Descrição da     Data type  Nulabilidade     Constraint
                               coluna
     Número                Número da senha      Int      Not null    Chave primária de
                                                                      alto incremento
  Tipo_comum                Tipo de senha   Varchar (1)  Not null
                               comum
Tipo_preferencial           Tipo de senha    Varchar de  Not null
                             preferencial       (1)
Fonte: Próprio Autor
        A tabela senha tem como objetivo dentro do sistema de gerar novas senhas para
retirada de uma nova chamda e armazenar qual senha foi gerada pelo sistema.


Quadro 06 – Tabela Mesa
                                       TABELA MESA
 Nome da coluna              Descrição da   Data type      Nulabilidade       Constraint
                                coluna
   Código mesa              código da mesa     Int           Not null     Chave primária e
                                                                              estrangeira
                                                                                fazendo
                                                                           referencia coma
                                                                          tabela atendente e
                                                                               com alto
                                                                              incremento
Numero_atendente               Número do             int     Not null
                               Atendente
Fonte: Próprio Autor
        A tabela mesa tem como objetivo dentro do sistema gerenciar as quantidades mesas
que o sistema irá conter para o seu funcionamento.
30



3.5 Diagramas de Fluxos de Dados


       Basicamente o diagrama de fluxo de dados serve para elaborar como será feito os
processos realizados dentro do sistema, sendo o mesmo não uma estrutura lógica e
independente, pois:
                      O diagrama de fluxo de dados é um modelo lógico do sistema. O modelo não
                      depende do hardware, do software, da estrutura de dados, ou da organização do
                      arquivo; não há nenhuma implicação física no diagrama de fluxo de dados. (DAVIS,
                      1994, p. 256).


       De acordo com Gane & Sarson (2002), o fluxo de dados é simbolizado por meio de
uma seta, de preferência horizontal e/ou vertical, com a ponta indicando a direção do fluxo.




                               Figura 01 – DFD Login dos Usuários
                                       Fonte: Próprio Autor
31



       Quando o usuário tentar acessar ao software será pedido para o mesmo que entre
com o nome e senha para ser validado, caso o usuário informar nome e senha incorretos será
mostrado na tela uma mensagem de erro informando que não conferem o registro e por fim
se o usuário informar nome e senha corretos o mesmo será direcionado para o menu
principal do software contendo acesso a quase todas as funções do software.




                              Figura 02 – DFD Cadastro de Usuários
                                      Fonte: Próprio Autor



       Quando houver a necessidade de cadastrar novos usuários para a utilização do
software somente o administrador terá essa prioridade, sendo que o para realizar o cadastro o
administrador terá que informar nome e senha de usuário para realizar uma validação para
verificar se está corretamente preenchidos os campos, caso os dados estiverem corretos os
32



dados do usuário será armazenado na TB_Usuarios e caso não estiverem corretos será
enviada uma mensagem de erro para o administrador informando qual erro que aconteceu.




                              Figura 03 – DFD Cadastro de Mesas
                                     Fonte: Próprio Autor



       Quando houver a necessidade de cadastrar mais mesas (Guichê) para obter melhores
atendimentos o somente o administrador terá prioridade no software sendo que para realizar
o cadastro da mesa o mesmo deve informar os dados da mesa e em caso de informações
invalidas será enviada uma mensagem de erro senão será armazenada na tabela TB_Mesas.
33




                            Figura 04 – DFD Alteração de Senha
                                   Fonte: Próprio Autor



      De tempo em tempo haverá a necessidade de alteração de senhas dos usuários e para
isso o mesmo deve informar o nome e senha para que sejam validados conforme feito isso
deverá informar a nova senha e repetir novamente a nova senha para que haja maior
segurança e em caso de informações invalidas dos usuários será enviada uma mensagem de
erro para o mesmo senão será armazenada a nova senha na TB_Usuarios.
34




                            Figura 05 – DFD Cadastro de Atendente
                                    Fonte: Próprio Autor


       Ao cadastrar um novo atendente do software o mesmo, somente o administrador terá
prioridade sendo que o mesmo deve se atentar quanto ao cadastro dos usuários pelo fato que
os atendentes serão os usuários do software e em caso de dados inválidos será enviada uma
mensagem de erro senão será armazenado na TB_Atendente.
35




                           Figura 06 – DFD Cadastro de Mensagens
                                    Fonte: Próprio Autor



      Quando os usuários do software perceber que a necessidade de cadastrar novas
mensagens para que seja exibida para os clientes o mesmo terá que informar os dados
corretamente para que possa ser validados e em caso de dados inválidos será enviada uma
mensagem de erro para o usuário senão armazena na TB_Mensagem.
36




                              Figura 07 – DFD Acesso ao Guichê
                                    Fonte: Próprio Autor



       Quando um atendente for iniciar o atendimento do dia o mesmo terá que informar
seus dados cadastrais para que seja validado e em caso de dados inválidos será enviada uma
mensagem de erro senão o mesmo terá acesso ao guichê.
37




                       Figura 08 – DFD Cadastro de Mensagens Manualmente
                                      Fonte: Próprio Autor


       Quando houver a necessidade de cadastrar um atendimento manualmente, somente o
administrador terá prioridade de realizar esse tipo de tarefa no software, sendo o mesmo terá
que informar os dados para armazenamento para ser validados e em caso de erro nas
informações dos dados será enviada uma mensagem de erro para o administrador senão os
dados informados serão armazenados na TB_Atendimento.
                             Todo e qualquer processo, tanto administrativo quanto operacional, tem um
                             fluxo das operações de entrada, processamento e saída. Esse fluxo envolve,
                             além dessas operações, as áreas da organização envolvidas, os recursos
                             humanos e matérias, os custos relativos a esses recursos, o volume de
                             trabalho, os tempos de execução, a documentação que tramita pelo mesmo
                             e a tecnologia de informação utilizada. (D’ASCENÇÃO, 2001, p. 109)
38



3.6 Diagramas de Casos de Uso

        Diagramas de caso de uso têm objetivo de conciliar as funções que cada usuário terá
no software, ou seja, designar as funções por privilégios. Dessa forma fica fácil para o
analista e para o cliente que está solicitando o desenvolvimento do mesmo.
        Observe logo abaixo um exemplo de como seria um diagrama de classe.




                               Figura 09 – Caso de Uso de Clínica Médica
                                         Fonte: Disponível em:
http://www.dsc.ufcg.edu.br/~sampaio/cursos/2007.1/Graduacao/SIII/Uml/diagramas/usecases/usecases.htm .

Acesso em: 20/09/2011


        Como vimos no exemplo acima o diagrama de caso de uso é essencial entre o cliente
e o analista, para que assim posso se obter melhores entendimentos na hora do
desenvolvimento. Agora confira nas ilustrações abaixo como ficou o diagrama de caso de
uso do software de Atendimento Bancário.
39




Figura 10 - UML Funções dos Usuários 1
         Fonte: Próprio Autor




Figura 11 - UML Funções dos Usuários 2
         Fonte: Próprio Autor
40




  Figura 12 - UML Funções dos Usuários 3
           Fonte: Próprio Autor




Figura 13 - UML Funções do Administrador 1
           Fonte: Próprio Autor
41




                         Figura 14 - UML Funções do Administrador 2
                                    Fonte: Próprio Autor



3.7 Entidade Relacionamento


      De acordo com Machado (2004), o modelo Entidade-Relacionamento (ER) foi
definido por Peter Pin-Shan Chen, em 1976, e baseia-se na percepção do mundo real como
constituído por um conjunto de objetos básicos chamados entidades e relacionamentos e
define uma técnica de diagramação para modelos de dados, o diagrama de entidade e
relacionamento. (CHEN, 1976 apud MACHADO, 2004, p. 67).
42




Figura 15 – Diagrama de ER
   Fonte: Próprio Autor




Figura 16 – Consultas SQL
   Fonte: Próprio Autor
43



3.8 Diagrama de Classes


       Basicamente diagrama de classes está relacionado à estrutura do sistema de uma
forma geral, onde por sua vez podemos identificar todos os objetos que existem no
desenvolvimento do software a fim de obter melhores formas de análise.




                               Figura 17 – Diagrama de Classe
                                    Fonte: Próprio Autor
44



4. Software para Atendimento Bancário


4.1 Do que se Trata o Software


         É um software que controla filas por senhas, consiste de um conjunto de informações
que quando operadas funcionam de modo que facilite a organização do atendimento, com
capacidade de medir o desempenho dos atendimentos e a capacidade de medir o nível de
satisfação de determinadas situações.
         O software ainda pode informatizar o atendente para que ele possa saber quantas
vezes um determinado cliente foi atendimento, saber o tempo médio de espera do
atendimento, cadastrar os clientes, informatizar os serviços e imprimir fichas sequenciais de
chegada para determinados clientes tais como clientes preferenciais e clientes não
preferenciais.
         O software que controla painel virtual tem como finalidade representar o estado
atual das filas, pode apresentar mensagens, últimas fichas atendidas, publicidade da empresa
e etc.


4.2 Qual a sua Finalidade


         Este software de atendimento de senhas por fila visa informatizar o controle para
diversas filas, sendo o sistema de atendimento um controle estatístico baseado em
atendimento eletrônico.
         Obviamente utilizam um painel eletrônico e um dispensador controlado por um
atendente que ao disparar o comando emite um ticket com senha, data, horário, nome da
empresa e o nome da fila selecionada ao cliente. Assim favorecendo a organização dos
atendimentos onde se encontra várias filas de espera.


4.3 Funcionamento do Software


         Basicamente, o cliente ao chegar ao estabelecimento que contém um desse Software
de Atendimento será fornecido a ele uma senha no dispensador, onde por sua vez é o que
corresponde ao emissor de senhas. Após o recebimento de sua senha o cliente aguarda o seu
chamado no painel eletrônico.
45



        O software utilizado é operado pelos atendentes da empresa dispõe-se de um
software que permite realizar a chamada do próximo cliente em espera. O software ainda
exibe para o atendente qual a senha a ser atendida e permite que ele registre se o
atendimento foi prestando ou se houve desistência. No caso de priorização ou re-chamada do
atendimento para os clientes preferenciais será sempre possível à intervenção do operador
para emitir senhas específicas para determinadas circunstâncias.
        Por fim a cada realização feita pelo software será feita uma alteração no painel que
por sua vez emitirá um sinal sonoro ou tendo a opção de chamada por um sinal de voz.


4.4 Aplicação do Software de Atendimento


        Claramente, esse tipo de sistemas pode ser aplicado em todas as empresas que
desejam adquirir e segmentar esse tipo de atendimento na recepção dos seus clientes, no
atendimento preferencial e cumprir as leis de espera (Lei da Fila), ou pode simplesmente
optar em agilizar a prestação de serviços com guichê exclusivo para o atendimento dos seus
clientes.


4.5 Ciclos de Vida e o Software de Atendimento


        O software será desenvolvido seguindo o modelo cascata, ou seja, o software será
desenvolvido por completo e ao final será entregue e implantado na empresa solicitadora do
serviço. Segue, logo abaixo, alguns ciclos de vida onde por sua vez são utilizados no
desenvolvimento de softwares.
        Modelo Constrói e Conserta (Caótico): O modelo constrói e conserta é utilizado
geralmente para pequenas empresas, onde não é necessário muito planejamento para o
desenvolvimento. Dessa forma quando se inicia o projeto utilizando este modelo, todos os
processos são construídos e apresentados para o cliente quantas vezes forem necessários até
a aceitação do mesmo.
        Modelo Cascata: O modelo cascata é uma sequência que onde por sua vez o projeto é
todo desenvolvido e entrega para o cliente final. Este modelo não é muito utilizado
atualmente no processo de desenvolvimento, mas, em certos projetos não há como utilizar
outro tipo de ciclo de vida como, por exemplo, o modelo espiral onde, por sua vez é o mais
utilizado e recomendado para o desenvolvimento de projetos.
46



       Modelo Espiral: O modelo espiral segue uma sequência onde o projeto de software é
divido em módulos que por sua vez é desenvolvido em partes. Assim a cada módulo que é
feito o analista entra em contato com o cliente para apresentar o mesmo feito.
       No desenvolvimento do software em espiral segue algumas características que são de
suma importância a se seguir, como são mostrados logo abaixo:


    Comunicação com o cliente;
    Planejamento;
    Análise de risco;
    Engenharia;
    Construção e liberação;
    Avaliação do cliente.


4.6 Elicitação de requisitos


       Segue logo abaixo todas as especificações com relação à Elicitação de Requisitos.


4.6.1 Motivação


       O principal motivo para o desenvolvimento do software se deu após observarmos o
quanto é ruim ficar em filas de espera para ser atendimento e esperamos que através da
tecnologia existente em nosso cenário globalizado possamos realizar nosso objetivo.


4.6.2 Visão da Solução


       Gerenciar e Organizar as empresas mantenedoras do software visando à satisfação
dos clientes e tudo isso voltado para uma melhor aparência no mercado competitivo.


4.6.3 Escopo da Solução


       Nessa seção serão descritas as principais necessidades para o software a ser
desenvolvido.
47



Quadro 07 – Necessidades do Software
                            Necessidades                                    Categoria
1. O software deve apresentar interface intuitiva.                            Essencial

2. O software deve ter área para login.                                       Essencial

3. O software deve apresentar disponibilidade de ajuda off-line.             Desejável

4. O software deve apresentar restrição de usuário.                           Essencial

5. O software deve gerenciar um painel para informações.                      Essencial

6. O software deve apresentar suporte padrão de solução.                     Importante

7. O software deve conter o registro do mesmo.                               Importante

8. O software deve apresentar relatórios diários.                             Essencial

9. O software deve apresentar tela de inicialização.                         Desejável

10. O software deve apresentar o que ramo a empresa atua.                     Essencial
Fonte: Próprio Autor
        Essencial: Características essenciais. Falha em sua implementação significa não
satisfazer o usuário. Têm que ser implementadas.

        Importante: Esta característica tem que ser implementadas. No entanto, a entrega não
será atrasada pela falta de uma característica importante.

       Desejável: São úteis em aplicações pouco típicas, ou de uso pouco frequente. Não se
espera um impacto muito grande na satisfação do cliente pela sua implementação.


4.6.4 Limites e Restrições da Solução


        O software tem como limites que não terá como usar um uma página Web e usuários
terão restrições com relação a algumas funções dentro do sistema sendo reservados somente
para o administrador.


4.6.5 Análise e Negociação de Requisitos


        Declaração do Escopo.


4.6.5.1 Critérios de Aceitação do Produto do Projeto
48




       O software não será desenvolvido de forma prototipada, ou seja, não será entregue
em partes, sendo assim o desenvolvimento do mesmo será realizada em um todo e entregue
completo.


4.6.5.2 Requisitos de Aprovação


       Levantamento de Requisitos;
       Ata de reunião com aceite;
       Documento de Aprovação conforme reuniões quinzenais com o cliente.


4.6.5.3 Entrega do Projeto


       Termo de aceite;
       Documentação;
       Manual de Usuário.


4.6.5.4 Riscos Iniciais Identificados


   Os riscos identificados no início do projeto são:
        Não cumprimento do prazo para entrega dos módulos e/ou projeto;
        Ultrapassar custo definido para concepção do projeto;
        Alterações no escopo do projeto no decorrer de sua concepção por mudanças na
            Reitoria ou Pró-Reitoria.


4.6.5.5 Premissas


       A entrega será ocorrida em seis meses juntamente com sua documentação. Caso não
seja entregue no prazo poderá ocasionar atraso no projeto, aumento de custo e insatisfação
do cliente. Cada parte entregue sem a incidência de erro, testado e aprovado.
       Caso não seja entregue sem erro, ocasionará retrabalho podendo incidir em aumento
de custo e atraso na entrega dos próximos módulos.
49



4.7 Especificações de Requisitos de Software


          Segue, logo abaixo, todas as especificações.


4.7.1 Propósito

          O propósito deste documento é especificar os requisitos do Software para
Atendimento Bancário, de tal forma a fornecer informações relevantes ao desenvolvimento
de projetos.


4.7.2 Escopo


          O escopo deste projeto descreve etapas, recursos disponíveis, como o software será
desenvolvido.


4.8 Identificação e Localização do Documento


          Segue logo abaixo como será realizada a Identificação e Localização do Documento.


4.8.1 Organização do Documento


          Além desta seção introdutória, as seções seguintes estão organizadas como descrito
abaixo.


          Descrição geral do software: apresenta uma visão geral do sistema, caracterizando
          qual é o seu escopo e descrevendo seus usuários.


          Requisitos Funcionais (casos de uso): especifica todos os casos de uso do sistema,
          ver seção 2.5, descrevendo os fluxos de eventos, prioridades, atores, entradas e saídas
          de cada caso de uso a ser implementado.
50



       Requisitos Não-Funcionais: especifica todos os requisitos não funcionais do sistema,
       divididos em requisitos de usabilidade, confiabilidade, desempenho, segurança,
       distribuição, adequação a padrões e requisitos de hardware e software.


4.8.2 Descrição Geral do Software


       Como mencionado na seção 4.6.5.4 segue na seção 4.8.2 e 4.8.3 os conceitos sobre
os requisitos Funcionais e Não-Funcionais.


4.8.3 Requisitos Funcionais


       Os requisitos funcionais referem-se aos requisitos que estão relacionados com a
maneira com que o sistema deve operar, onde se especificam as entradas e saídas do sistema
e o relacionamento comportamental entre elas, assim como a iteração com o usuário.


4.8.4 Requisitos Não-Funcionais


       A operação do software deve ser de fácil utilização. Geralmente existem pessoas que
não dominam a informática muito bem, esses poderão ser usuários (leigos) e cliente que
posteriormente utilizarão o mesmo para retirada de senhas.


4.9 Visões Gerais do Software


       Segue, logo abaixo, todas as visões gerais do software.


4.9.1 Características dos Usuários


       Como característica dos usuários define que pelo menos para a utilização do sistema
o mesmo deve ter conhecimentos básicos de informática, sendo assim mais fácil a sua
adaptação ao software.


4.9.2 Restrições
51



       Para que não haja maiores problemas na utilização do software as restrições serão
definidas como “COMUM e ADMINISTRADOR”, os usuários serão cadastrados como
“COMUM”, ou seja, os usuários não terão os mesmo privilégios que os administradores do
software de tal forma a ficar mais organizado.


4.10 Chamadas


       Segue, logo abaixo, todas as especificações das chamadas.


4.10.1 Requisitos Funcionais


       Crie Informações
       Descrição do caso de uso: Este caso de uso permite que o usuário crie e armazene um
       novo componente no sistema.
       Prioridade:    (X) Essencial ( )Importante ( )Desejável

       Entradas e pré-condições: não tem.
       Saídas e pós-condição: um componente é cadastrado no sistema


       Excluir Determinada Informação
       Descrição do caso de uso: Este caso de uso permite que o usuário exclua um
       componente do cadastro de componentes do sistema. Um componente pode ser
       excluído.
       Prioridade:    (X) Essencial ( )Importante ( )Desejável

       Entradas e pré-condições: recebe como entrada o componente que se deseja excluir
       Saídas e pós-condição: o usuário consegue excluir o componente que deseja


       Alterar Informações
       Descrição do caso de uso: Este caso de uso permite que o usuário altere os dados de
       um componente.
       Prioridade:    (X) Essencial ( )Importante ( )Desejável

       Entradas e pré-condições: recebe como entrada o componente que se deseja alterar.
       Saídas e pós-condição: um componente é alterado no sistema.
52




       Visualizar Informações
       Descrição do caso de uso: Este caso de uso permite que o usuário visualize os dados
       de um determinado componente.
       Prioridade:   ( ) Essencial (X)Importante ( )Desejável

       Entradas e pré-condições: deve receber como entrada o componente que se deseja
       visualizar.
       Saídas e pós-condição: o usuário visualiza o componente desejado


4.10.2 Requisitos Não-Funcionais


       Segue logo abaixo todas as especificações dos Requisitos Não-Funcionais do
Software.


4.10.2.1 Usabilidade


              A interface com o usuário é de vital importância para o sucesso do sistema.
       Principalmente por ser um sistema que será utilizado diariamente, o usuário não
       possui tempo disponível para aprender como utilizar o sistema.

       O sistema terá uma interface amigável ao usuário primário sem se tornar cansativa
       aos usuários mais experientes. Em especial, o módulo de publicação HTML possuirá
       um wizard para ajudar o usuário.

       Prioridade:   (X) Essencial ( )Importante ( )Desejável



4.10.2.2 Confiabilidade


       O software terá total identificação dos registros, a fim de, garantir melhores
informações para o administrador.


4.10.2.3 Desempenho
53



       O software tem como desempenho para até designado como “Médio” sendo possível
a melhora do mesmo para que obtenha o Máximo. Tratamos o assunto de capacidade de
números de filas que o software irá suportar em primeira instancia será de três filas.


4.10.2.4 Reusabilidade


       Nesse caso irá reutilizar rotinas prontas (bibliotecas) para o desenvolvimento do
software.


4.10.2.5 Segurança


       Somente o administrador terá acesso a todos os módulos do software, dessa forma
evitando ricos de vazamentos de informações.


4.10.2.6 Acessibilidade


       O software deve seguir normas de desenvolvimentos de projetos, que por sua vez,
implantados pela empresa desenvolvedora.


4.11 Requisitos de Interface


       Segue, logo abaixo, todas as especificações de Requisitos de Interfaces.


4.11.1 Interfaces com Usuários


       O software apresenta interfaces intuitivas e tem como características a facilidade de
uso, dessa forma gera uma melhor aparência hora da utilização.


4.11.2 Interfaces Hardware e Software
54



       As interfaces do software serão propriamente desenvolvidas pela empresa
desenvolvedora e tendo como plataforma para a instalação e utilização a plataforma
Windows.


4.11.3 Interfaces de Comunicação


       O software terá interfaces de comunicações sendo elas: um painel para visualização
de senhas e informativos.


4.12 Requisitos de Documentação


       Segue, logo abaixo, todas as especificações de Requisitos de Documentação.


4.12.1 Manual dos Usuários


       O manual precisa ser uma referencia completa do software com o qual o usuário
possa aprender as funcionalidades, bem como os elementos de interface. O manual ainda
deve possibilitar que os usuários esclareçam as duvidas mais rápido possível (O mesmo deve
mais ser completo possível).


4.12.2 Dúvidas On-Line


       Através da web site da empresa desenvolvedora poderá ser consultados duvidas ou
sugestões sobre o software desenvolvido.


4.13 Requisitos de Licença


       O software deve ser assegurado às liberdades de uso, acesso ao código fonte,
distribuição e modificação.


4.14 Informações para Suporte
55



       Após a implantação do software a empresa desenvolvedora dará total suporte ao
mesmo em caso de futuros bugs (erros).


4.15 Gerenciamentos de Mudanças de Requisitos


     O gerenciamento de mudanças de requisitos trata as seguintes etapas:
             O cliente solicita uma mudança;
             O Analista de Sistemas juntamente com o Gerente de Projeto analisarão tal
              mudança e avaliarão o impacto da mesma no desenvolvimento;
             O Gerente do Projeto juntamente com o cliente negociam a mudança
              pretendida;
             Como resultado dessa negociação ocorrerá ou não a mudança solicitada.


4.16 Análise de Risco


      A análise dos riscos no desenvolvimento do software está ligada ao custo.
      A estratégia para lidar com este risco é desenvolver opções para que se possa oferecer
um software mais enxuto e seguro.




5. Relatório de Atividades


       Segue, logo abaixo, o relatório do cronograma realizado para o desenvolvimento do
software.


5.1 Gráfico de Gantt
56




Figura 18 – Gráfico de Gantt (Informações do Software)
                 Fonte: Próprio Autor




 Figura 19 – Gráfico de Gantt (Tempo de Realização)
                 Fonte: Próprio Autor
57




     Figura 20 – Gráfico de Gantt (Tarefas)
              Fonte: Próprio Autor




Figura 21 – Gráfico de Gantt (Pessoas Envolvidas)
              Fonte: Próprio Autor
58



6. Relação dos Componentes


           Aqui está o texto com a breve descrição do que seria relação dos componentes1.
           Relação de componentes nada mais é do que todos os componentes que foram
utilizados para desenvolver o software. Dentre esses componentes podemos citar algumas
características, tais como:
                Componente que permitem gravar os dados no banco de dados;
                Componentes que permitem a visualização dos dados;
                Componentes que permitem visualizar gráficos
           Contudo, a utilização de componentes é muito útil e organizada, onde assim podem
ser usadas para obter melhor desempenho no desenvolvimento de um software.




__________________________
1
    Vide Anexos – anexo II – Quadro de relação dos componentes. (p. 113)
59



7. Apresentação das Interfaces do Usuário




                                  Figura 22 - Tela Splash
                                   Fonte: Próprio Autor
      Tela Splash é a tela inicial do software, contêm informações da empresa e descrições
do mesmo.
60




                                     Figura 23 - Tela de Login
                                       Fonte: Próprio Autor
       Tela de Login onde por sua vez o usuário deverá informar o nome e senha para logar
no software.




                                 Figura 24 - Tela de Menu Principal
                                       Fonte: Próprio Autor
       Tela de menu principal onde se encontra todas as funções do software, tais como:
estatísticas, adicionar novos usuários, utilitários entre outras funções.
61




                    Figura 25 - Amostra da Tela de Senhas Comuns e Preferenciais
                                          Fonte: Próprio Autor
       Esta tela é uma amostra de como será realizada a chamada das senhas, se encontra no
menu principal junto com outras funções.




                                   Figura 26 - Tela de Atendentes
                                          Fonte: Próprio Autor
       Tela de Atendente, esta tela tem como finalidade realizar a manutenção de todos os
atendentes que irá utilizar o software.
62




                         Figura 27 - Tela de Manutenção de Atendimentos
                                      Fonte: Próprio Autor
       Tela de manutenção dos atendimentos, esta tela tem como finalidade realizar todas as
manutenções dos atendimentos, sendo, possível realizar alteração nos atendimentos como:
data, mesa, atendente entre outras funções.




                             Figura 28 - Tela de Manutenção de Mesas
                                      Fonte: Próprio Autor
       Tela de manutenção de mesas, esta tela tem como finalidade realizar a manutenção
de todas as mesas (guichês) do qual o software irá possuir.
63




                            Figura 29 - Tela de Manutenção de Senhas
                                      Fonte: Próprio Autor
        Tela de manutenção de senhas, esta tela tem como finalidade a alteração de senhas
caso o usuário desejar modificar.




                          Figura 30 - Tela de Manutenção de Mensagens
                                      Fonte: Próprio Autor
        Tela de manutenção de mensagens, esta tela tem como finalidade enviar todas as
mensagens ao menu principal e ao painel onde será por sua vez o painel será visto pelos
clientes.
64




                            Figura 31 - Tela do Painel de Atendimento
                                      Fonte: Próprio Autor
       Tela do painel de atendimentos, esta tela é umas das principais, pois irá controlar a
senhas, mesa e tipo de atendimento os clientes irão se direcionar. Ainda contendo as
mensagens em tempo real, data e hora.




                              Figura 32 - Tela de Lista de Usuários
                                      Fonte: Próprio Autor
       Tela onde poderá visualizar todos os usuários cadastros ativos do software.
65




                     Figura 33 - Tela do Gráfico Demonstrativo dos Atendimentos
                                        Fonte: Próprio Autor
       Esta tela tem como finalidade mostrar um gráfico demonstrativo dos atendimentos
durantes os meses do ano.




                              Figura 34 - Tela de Cadastro de Usuários
                                        Fonte: Próprio Autor
       Tela de registro de usuários tem como objetivo cadastrar e realizar a manutenção de
todos os usuários que irão utilizar o software.
66




                              Figura 35 - Tela de Sobre o Sistema
                                     Fonte: Próprio Autor
       Tela sobre o sistema tem como finalidade mostrar algumas informações relevantes
quanto ao software desenvolvido.




                         Figura 36 - Tela de Relatório dos Atendimentos
                                     Fonte: Próprio Autor
67



       Tela de relatório dos atendimentos, essa tela tem grande importância para o
administrador do software, pois, é através dela que poderá visualizar todos os atendimentos
e gerar os relatórios.
68



Conclusão


       Conclui-se que, com o desenvolvimento deste projeto, foi possível adquirir novos
conhecimentos na área de programação e análise de sistemas. Diante disso, torna-se evidente
que a execução deste estudo foi de suma importância e muito gratificante não só pelo fato de
abranger novos conhecimentos, mas, também por ter propiciado uma visão mais ampla sobre
o mercado de trabalho e o que iremos enfrentar na contemporaneidade.
69



Referências Bibliográficas


BEAL, Adriana. Gestão Estratégica da Informação – Editora Atlas, SP, 2004.


BOENTE, Alfredo – Construindo Algoritmos Computacionais: Lógica de programação.
Rio de Janeiro: LTC, 2003.


CARBONI, Irenice de Fátima. Lógica de Programação. São Paulo: Thomson, 2003.


DAVIS, Willian S. Análise e Projeto de Sistemas Abordagem Estruturadas. LTC, 2001.

DUNCAN, Mackenzie. SHARKEY, Kent. Aprenda Visual Basic .NET em 21 Dias;
tradução: Aldir José Coelho Corrêa da Silva; revisão técnica: Marcos Jorge. São Paulo:
Person Education do Brasil, 2003.


GANE, Chris. SARSON, Trish. Análise Estruturadas de Sistemas; tradução Gerry
Edward Tompkins; Revisão técnica: Cesar Gonçalves Neto. Rio de Janeiro: LTC – Livros
Técnicos e Científicos Editora S.A, 2002.

LAGES, Guimarães. Algoritmos e Estruturas de Dados. Rio de Janeiro: LTC, 1994.


JUNIOR, Benjamim, Linguagens de Programação – Resumo Histórico, 2007. Fonte
Disponível em: http://obviousmag.org/archives/2007/09/linguagens_de_p.html - Acessado
em 14/12/2011.


OHATA, Michael; HAYNIE, Bob; NIELSEN, Per Vonge. Microsoft SQL Server 7.0:
Manual Prático. Daniel Vieira. Rio de Janeiro: Campus, 1999.


PEREIRA, Silvio do Lago. Estruturas de Dados Fundamentais: Conceitos Aplicações.
Érica, 2001.


SALITA, Walter Luiz Caram – Técnicas de Programação: Uma abordagem estruturada.
São Paulo: Makron Books, 1992.
70



SALVETTI, Dirce Douglas. BARBOSA, Lisbete Madsen. Algoritmos. São Paulo: Makron
Books, 2004.


STAREC, Cláudio (Org). Gestão Estratégica da Informação e Inteligência Competitiva
– Ed Saraiva, SP, 2005.


http://chasqueweb.ufrgs.br/~paul.fisher/apostilas/basdad/bd_mod_er.htm   -   Acesso   em
28/09/2011.
71




ANEXO I


frmSplash
Public Class frmSplash

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
        Me.AxShockwaveFlash1.LoadMovie(0, "C:SysBankswfbanner.swf")
    End Sub


    Private Sub TimerCarrega_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles TimerCarrega.Tick
        Try
            Me.pbButoes.Value += 2

            If Me.pbButoes.Value = 80 Then
                Me.btnEntrar.Visible = True
                Me.Linklbl.Visible = True
            End If

       Catch ex As Exception

       End Try
   End Sub

    Private Sub TimerFlash2_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles TimerFlash2.Tick
        Try
            Me.pbFlash2.Value += 2
            If Me.pbFlash2.Value = 2 Then
                Me.AxShockwaveFlash1.LoadMovie(0, "C:SysBankswfmain.swf")
            End If

       Catch ex As Exception

       End Try
   End Sub

    Private Sub EncerrarSistema()
        Try
            Dim sair As Integer
            sair = MsgBox("Tem certeza que deseja encerrar a aplicação?",
MsgBoxStyle.Question + MsgBoxStyle.YesNo)
            If sair = vbYes Then
                If TimeOfDay >= "6:00" And TimeOfDay <= "11:59" Then
                    MessageBox.Show("Tenha um Boa Dia!", "Encerrando...")
                    End
                Else
                    If TimeOfDay >= "12:00" And TimeOfDay <= "17:59" Then
                        MessageBox.Show("Tenha uma Boa Tarde!", "Encerrando...")
72


                        End
                    Else
                        If TimeOfDay >= "18:00" And TimeOfDay <= "23:59" Then
                            MessageBox.Show("Tenha uma Boa Noite!", "Encerrando...")
                            End
                        End If
                    End If
                End If
            End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub Linklbl_LinkClicked_1(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles Linklbl.LinkClicked
        EncerrarSistema()
    End Sub

    Private Sub btnEntrar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnEntrar.Click
        Try
            Hide()
            frmLogin.Show()
        Catch ex As Exception

        End Try
    End Sub
End Class

frmLogin
Public Class frmLogin

    Dim SAPI
    Dim pergunta As String

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Timer1.Tick
        Try
            Me.Opacity += 0.03
            If Me.Opacity > 1 Then
                Me.Timer1.Enabled = False
            End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles TimerLogin.Tick
        Try

            Me.pbLogin.Value += 1

            If Me.pbLogin.Value <= 30 Then
                Me.lblMensagem.Text = "Carregando Bando de Dados..."
            End If

            If Me.pbLogin.Value <= 60 Then
                Me.lblMensagem.Text = "Inicializando Sistema GSPF..."
            End If
73


            If Me.pbLogin.Value = 100 Then
                Me.lblMensagem.Text = "Concluído Sistema GSPF..."
            End If

        Catch

        End Try
    End Sub

    Private Sub frmLogin_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
        'TODO: This line of code loads data into the 'DbSysBankDataSet.tbUsuarios'
table. You can move, or remove it, as needed.
        Me.TbUsuariosTableAdapter.Fill(Me.DbSysBankDataSet.tbUsuarios)
        Me.TimerLogin.Enabled = True
        Me.lblAutenticacao.ForeColor = Color.Black
        Me.lblAutenticacao.Text = "Verificando Conectividade GSPF..."
    End Sub

    Private Sub btnEntrar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnEntrar.Click
        Try
            Me.TbUsuariosTableAdapter.BuscaNomeUsers(Me.DbSysBankDataSet.tbUsuarios,
Me.txtNome.Text)

            If Me.txtNome.Text = "" Or Me.txtSenha.Text = "" Then
                 MsgBox("Campos vazios no formulário!", MsgBoxStyle.Critical, "Erro")
                 Me.txtNome.Focus()
            Else
                 If Me.txtNome.Text <> Me.NomeTextBox.Text And Me.txtSenha.Text <>
Me.SenhaTextBox.Text Then
                     MsgBox("Verifique se digitou corretamente NOME e SENHA!",
MsgBoxStyle.Critical, "Erro")
                     Me.ErrorProvider.SetError(Me.txtNome, "Nome Errado")
                     Me.ErrorProvider.SetError(Me.txtSenha, "Senha Errado")
                     Me.txtNome.Clear()
                     Me.txtSenha.Clear()
                     Me.txtNome.Focus()
                 Else
                     If Me.txtNome.Text <> Me.NomeTextBox.Text Then
                         MsgBox("Nome Incorreto!", MsgBoxStyle.Critical, "Erro")
                         Me.ErrorProvider.SetError(Me.txtNome, "Nome Errado")
                         Me.txtNome.Clear()
                         Me.txtNome.Focus()
                     Else
                         If Me.txtSenha.Text <> Me.SenhaTextBox.Text Then
                             MsgBox("Senha Incorreta para o Nome! " & Me.txtNome.Text,
MsgBoxStyle.Critical, "Erro")
                             Me.ErrorProvider.SetError(Me.txtSenha, "Senha Errada")
                             Me.txtSenha.Clear()
                             Me.txtSenha.Focus()
                         Else
                             If Me.txtNome.Text = Me.NomeTextBox.Text And
Me.txtSenha.Text = Me.SenhaTextBox.Text Then

                                'SAPI = CreateObject("sapi.spvoice")
                                'SAPI.speak("Verificando o nome " + Me.txtNome.Text)
                                frmMenu.StatuslblCodigo.Text = Me.CodigoTextBox.Text
                                frmMenu.StatuslblNome.Text = Me.txtNome.Text
                                frmAlteraSenha.txtNome.Text = Me.NomeTextBox.Text
                                If (Me.TipoComboBox.Text = "A") Then
                                    frmMenu.StatuslblTipo.Text = "Administrador"
74


                                 Else
                                     frmMenu.StatuslblTipo.Text = "Comum"
                                     frmMenu.GráficosToolStripMenuItem.Enabled = False
                                     frmMenu.RelatóriosDeAtenToolStripMenuItem.Enabled
= False
                                       frmMenu.ListaDeUsuáriosToolStripMenuItem.Enabled
= False
                                       frmMenu.UsuáriosToolStripMenuItem.Enabled = False
                                       frmMenu.AtendenteToolStripMenuItem.Enabled =
False
                                       frmMenu.AtendimentosToolStripMenuItem.Enabled =
False
                                    frmMenu.MesasToolStripMenuItem.Enabled = False
                                    frmMenu.btnAtendentes.Enabled = False
                                    frmMenu.btnUsuarios.Enabled = False
                                    frmMenu.btnMesas.Enabled = False
                                    frmMenu.btnAtendimentos.Enabled = False
                                End If
                                MsgBox("Olá " & Me.txtNome.Text & ", seja bem vindo e
bom trabalho.", MsgBoxStyle.Information)
                                Me.txtNome.Clear()
                                Me.txtSenha.Clear()
                                Hide()
                                frmMenu.Show()

                              End If
                          End If
                      End If
                  End If
              End If
          Catch ex As Exception

        End Try
    End Sub

    Private Sub EncerrarSistema()
        Try
            Dim sair As Integer
            sair = MsgBox("Tem certeza que deseja encerrar a aplicação?",
MsgBoxStyle.Question + MsgBoxStyle.YesNo)
            If sair = vbYes Then
                If TimeOfDay >= "6:00" And TimeOfDay <= "11:59" Then
                    MessageBox.Show("Tenha um Boa Dia!", "Encerrando...")
                    End
                Else
                    If TimeOfDay >= "12:00" And TimeOfDay <= "17:59" Then
                        MessageBox.Show("Tenha uma Boa Tarde!", "Encerrando...")
                        End
                    Else
                        If TimeOfDay >= "18:00" And TimeOfDay <= "23:59" Then
                            MessageBox.Show("Tenha uma Boa Noite!", "Encerrando...")
                            End
                        End If
                    End If
                End If
            End If
        Catch ex As Exception

        End Try
    End Sub
75


    Private Sub btnSair_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnSair.Click
        EncerrarSistema()
    End Sub
End Class

frmMenu
'BIBLIOTECA ADICIONADA PARA QUE O VB POSSO FALAR
'Imports ACTIVEVOICEPROJECTLib

Public Class frmMenu

    'VARIAVEIS CRIADAS
    'Dim voz As New DirectSS
    Dim SAPI
    Dim data As String

    Private Sub ÚsuariosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs)
        Try
            frmRegistroUser.ShowDialog()
        Catch ex As Exception
        End Try
    End Sub

    Private Sub BackupMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BackupMenuItem.Click
        Try
            frmBackUp.ShowDialog()
        Catch ex As Exception

        End Try
    End Sub

    Private Sub GráficosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles GráficosToolStripMenuItem.Click
        Try
            frmGraficoAtend.ShowDialog()
        Catch ex As Exception

        End Try
    End Sub

    Private Sub PainelMenu_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles PainelMenu.Click
        Try
            frmPainel.Show()
        Catch ex As Exception

        End Try
    End Sub

    Private Sub btnAumenta_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAumenta.Click
        Try
            timerMensagen.Interval = timerMensagen.Interval - 10
        Catch

        End Try
    End Sub
76


    Private Sub btnDiminui_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnDiminui.Click
        Try
            timerMensagen.Interval = timerMensagen.Interval + 10
        Catch

       End Try
   End Sub

    Private Sub timerMensagen_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles timerMensagen.Tick
        Try
            Dim H As Integer

           H = lblMensagem.Location.X

           If H <= -1395 Then
               H = 886
           End If

           H = H - 2
           lblMensagem.Location = New System.Drawing.Point(H)
       Catch ex As Exception

       End Try
   End Sub

    Private Sub frmMenu_FormClosing(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
        Try
            Dim sair As Integer

            sair = MsgBox("Tem certeza que deseja encerrar o programa? Todos os
terminais serão fechados!", _
                          MsgBoxStyle.Question + MsgBoxStyle.YesNo)
            If sair = vbYes Then
                End
            ElseIf sair = vbNo Then
                e.Cancel = True
            End If
        Catch ex As Exception

       End Try
   End Sub

    Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
        Try
            Dim sair As Integer

            sair = MsgBox("Tem certeza que deseja encerrar o programa? Todos os
terminais serão fechados!", _
                          MsgBoxStyle.Question + MsgBoxStyle.YesNo)
            If sair = vbYes Then
                End

           End If
       Catch ex As Exception

       End Try
   End Sub
77


    Private Sub frmMenu_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
        Try
            Me.StatuslblData.Text = Date.Today
            Me.EncerrarAtendimentoToolStripMenuItem.Enabled = False
        Catch ex As Exception

       End Try
   End Sub

    Private Sub timerHoras_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles timerHoras.Tick
        Try
            Me.StatuslblHora.Text = TimeOfDay.ToLongTimeString
        Catch ex As Exception

       End Try
   End Sub

    Private Sub MensagemMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MensagemMenuItem.Click
        Try
            frmMensagens.ShowDialog()
        Catch ex As Exception

       End Try
   End Sub


    Private Sub guiche1C_CheckedChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles guiche1C.CheckedChanged
        Try
            If Me.guiche1C.Checked = True Then
                Me.statusMesa.Text = "GUICHÊ 1 OCUPADO"
                Me.guiche2C.Enabled = False
                Me.guiche3C.Enabled = False
                Me.guiche4C.Enabled = False


                 Me.guiche1P.Checked   =   True
                 Me.guiche2P.Enabled   =   False
                 Me.guiche3P.Enabled   =   False
                 Me.guiche4P.Enabled   =   False

           End If
       Catch ex As Exception

       End Try
   End Sub

    Private Sub guiche2C_CheckedChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles guiche2C.CheckedChanged
        Try
            If Me.guiche2C.Checked = True Then
                Me.statusMesa.Text = "GUICHÊ 2 OCUPADO"
                Me.guiche1C.Enabled = False
                Me.guiche3C.Enabled = False
                Me.guiche4C.Enabled = False


                 Me.guiche2P.Checked = True
                 Me.guiche1P.Enabled = False
78


                 Me.guiche3P.Enabled = False
                 Me.guiche4P.Enabled = False

           End If
       Catch ex As Exception

       End Try
   End Sub

    Private Sub guiche3C_CheckedChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles guiche3C.CheckedChanged
        Try
            If Me.guiche3C.Checked = True Then
                Me.statusMesa.Text = "GUICHÊ 3 OCUPADO"
                Me.guiche1C.Enabled = False
                Me.guiche2C.Enabled = False
                Me.guiche4C.Enabled = False


                 Me.guiche3P.Checked   =   True
                 Me.guiche1P.Enabled   =   False
                 Me.guiche2P.Enabled   =   False
                 Me.guiche4P.Enabled   =   False

           End If
       Catch ex As Exception

       End Try
   End Sub

    Private Sub guiche4C_CheckedChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles guiche4C.CheckedChanged
        Try
            If Me.guiche4C.Checked = True Then
                Me.statusMesa.Text = "GUICHÊ 4 OCUPADO"
                Me.guiche1C.Enabled = False
                Me.guiche2C.Enabled = False
                Me.guiche3C.Enabled = False


                 Me.guiche4P.Checked   =   True
                 Me.guiche1P.Enabled   =   False
                 Me.guiche2P.Enabled   =   False
                 Me.guiche3P.Enabled   =   False

           End If
       Catch ex As Exception

       End Try
   End Sub

   Private Sub atualiza()
       Try
           Me.TbAtendimentoTableAdapter.Fill(Me.DbSysBankDataSet.tbAtendimento)
       Catch ex As Exception

       End Try
   End Sub

   Private Sub insertComum()
       Try
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]
Carlos Henrique Pereira [monografia]

Mais conteúdo relacionado

Semelhante a Carlos Henrique Pereira [monografia]

Http _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...
Http  _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...Http  _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...
Http _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...Carlos Barreto de Almeida
 
Plano de Projeto de Software
Plano de Projeto de SoftwarePlano de Projeto de Software
Plano de Projeto de SoftwareMatheus Mendonça
 
Plano de projeto de software para o sistema MEA - monitoraemto de eventos ad...
Plano de projeto de software para o sistema  MEA - monitoraemto de eventos ad...Plano de projeto de software para o sistema  MEA - monitoraemto de eventos ad...
Plano de projeto de software para o sistema MEA - monitoraemto de eventos ad...Lucas Aquino
 
Plano de projeto: Bichos do Campus na Web
Plano de projeto: Bichos do Campus na WebPlano de projeto: Bichos do Campus na Web
Plano de projeto: Bichos do Campus na WebJorge Roberto
 
Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...
Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...
Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...Leinylson Fontinele
 
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWInstituto Federal de Sergipe
 
AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...
AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...
AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...Lucas de Oliveira Nass
 
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE  para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE  para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWMatheus Costa
 
Plano de Projeto - OUTLAY
Plano de Projeto - OUTLAYPlano de Projeto - OUTLAY
Plano de Projeto - OUTLAYJocelino Neto
 
TCC em ITIL: Gestão de serviços de TI - dois estudos de caso
TCC em ITIL: Gestão de serviços de TI - dois estudos de casoTCC em ITIL: Gestão de serviços de TI - dois estudos de caso
TCC em ITIL: Gestão de serviços de TI - dois estudos de casoFernando Palma
 
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWLays Lopes
 
MyHome - Sistema de Automação Residencial para Dispositivos Móveis.
MyHome - Sistema de Automação Residencial para Dispositivos Móveis.MyHome - Sistema de Automação Residencial para Dispositivos Móveis.
MyHome - Sistema de Automação Residencial para Dispositivos Móveis.Douglas Scriptore
 
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Urique Hoffmann
 
Aplicação comercial de otimização de funções usando método de solução Simplex...
Aplicação comercial de otimização de funções usando método de solução Simplex...Aplicação comercial de otimização de funções usando método de solução Simplex...
Aplicação comercial de otimização de funções usando método de solução Simplex...Vanessa Campos
 
Plano do projeto de software
Plano do projeto de softwarePlano do projeto de software
Plano do projeto de softwareDanilo Gois
 
engenharia de software e web, modelo john december
engenharia de software e web, modelo john decemberengenharia de software e web, modelo john december
engenharia de software e web, modelo john decemberAnibal A. Matias Jr
 

Semelhante a Carlos Henrique Pereira [monografia] (20)

Http _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...
Http  _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...Http  _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...
Http _www.portalbpm.com.br_servlet_leartigo_qual=_web-inf_artigos_livrobpmn_...
 
Plano de Projeto de Software
Plano de Projeto de SoftwarePlano de Projeto de Software
Plano de Projeto de Software
 
Plano de projeto de software para o sistema MEA - monitoraemto de eventos ad...
Plano de projeto de software para o sistema  MEA - monitoraemto de eventos ad...Plano de projeto de software para o sistema  MEA - monitoraemto de eventos ad...
Plano de projeto de software para o sistema MEA - monitoraemto de eventos ad...
 
Plano de projeto: Bichos do Campus na Web
Plano de projeto: Bichos do Campus na WebPlano de projeto: Bichos do Campus na Web
Plano de projeto: Bichos do Campus na Web
 
Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...
Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...
Sistemas Computacionais Aula 04 - Funções e Componentes Genéricos de Sistemas...
 
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
 
AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...
AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...
AVALIAÇÃO DE RISCOS EM UMA EMPRESA DE GRANDE PORTE DO NORTE CATARINENSE UTILI...
 
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE  para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE  para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
 
Plano de Projeto - OUTLAY
Plano de Projeto - OUTLAYPlano de Projeto - OUTLAY
Plano de Projeto - OUTLAY
 
TCC em ITIL: Gestão de serviços de TI - dois estudos de caso
TCC em ITIL: Gestão de serviços de TI - dois estudos de casoTCC em ITIL: Gestão de serviços de TI - dois estudos de caso
TCC em ITIL: Gestão de serviços de TI - dois estudos de caso
 
Enquadramento teórico
Enquadramento teóricoEnquadramento teórico
Enquadramento teórico
 
Access
AccessAccess
Access
 
Construção de Aplicação ETL para SICOP
Construção de Aplicação ETL para SICOPConstrução de Aplicação ETL para SICOP
Construção de Aplicação ETL para SICOP
 
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
 
MyHome - Sistema de Automação Residencial para Dispositivos Móveis.
MyHome - Sistema de Automação Residencial para Dispositivos Móveis.MyHome - Sistema de Automação Residencial para Dispositivos Móveis.
MyHome - Sistema de Automação Residencial para Dispositivos Móveis.
 
Guide bra
Guide braGuide bra
Guide bra
 
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
 
Aplicação comercial de otimização de funções usando método de solução Simplex...
Aplicação comercial de otimização de funções usando método de solução Simplex...Aplicação comercial de otimização de funções usando método de solução Simplex...
Aplicação comercial de otimização de funções usando método de solução Simplex...
 
Plano do projeto de software
Plano do projeto de softwarePlano do projeto de software
Plano do projeto de software
 
engenharia de software e web, modelo john december
engenharia de software e web, modelo john decemberengenharia de software e web, modelo john december
engenharia de software e web, modelo john december
 

Carlos Henrique Pereira [monografia]

  • 1. FUNDAÇÃO CULTURAL CAMPANHA DA PRINCESA FACULDADES INTEGRADAS PAIVA DE VILHENA CURSO DE SISTEMAS DE INFORMAÇÃO CARLOS HENRIQUE PEREIRA Desenvolvimento de um Software para Atendimento Bancário Campanha – MG 2011
  • 2. FUNDAÇÃO CULTURAL CAMPANHA DA PRINCESA FACULDADES INTEGRADAS PAIVA DE VILHENA CURSO DE SISTEMAS DE INFORMAÇÃO CARLOS HENRIQUE PEREIRA Desenvolvimento de um Software para Atendimento Bancário Monografia apresentada à disciplina Trabalho Final de Curso, como parte dos requisitos para obtenção do titulo de Bacharel em Sistemas de Informação, pela Fundação Cultural Campanha da Princesa. Orientador: Prof. Paulo Guilherme Pereira Campanha – MG 2011
  • 3. CARLOS HENRIQUE PEREIRA SOFTWARE PARA ATENDIMENTO BÁNCARIO Monografia aprovada como requisito para a obtenção do título de Bacharel em Sistemas de Informação, das Faculdades Integradas Paiva de Vilhena. Data da aprovação ______/______/______ BANCA EXAMINADORA Nome:__________________________________________________________ Instituição:______________________________________________________ Assinatura:______________________________________________________ Nome:__________________________________________________________ Instituição:______________________________________________________ Assinatura:______________________________________________________ Nome:__________________________________________________________ Instituição:______________________________________________________ Assinatura:______________________________________________________
  • 4. Dedicatória Dedico este trabalho a Deus, primeiramente, que me deu muita força para conclusão, a toda minha família que sempre incentivou e esteve comigo todo esse tempo.
  • 5. Agradecimentos Agradeço ao professor Paulo Guilherme Pereira que me orientou durante esta jornada de trabalho, incentivando e apoiando o seu desenvolvimento; ao coordenador do curso Alessandro Mateus Salomé, pela confiança e apoio, e a todos os meus amigos que acreditaram em mim.
  • 6. “[...] E nunca considerem seu estudo como uma obrigação, mas sim como uma oportunidade invejável de aprender, sobre a influência libertadora da beleza no domínio do espírito, para seu prazer pessoal e para o proveito da comunidade à qual pertencerá o seu trabalho futuro”. Albert Einstein
  • 7. RESUMO Com o crescimento dos serviços bancários, surgem situações desagradáveis, na maioria das vezes, na hora dos atendimentos. Frequentemente, dentre desse crescimento gera-se a possibilidade de se criar sistemas informatizados para que seja possível um melhor atendimento não só nos serviços bancários, mas dentre outros estabelecimentos. E a principal reclamação que é enfrentada nesse cenário é ter que ficar tempo demais em uma fila de espera e ainda por falta de comodidade para ser atendido. Se parar e pensar logo vem à ideia; e quanto às pessoas idosas, portadoras de alguma deficiência física? Essas pessoas sofrem muito mais, dessa forma faz com que gere irritabilidade por partes dos clientes. Com o desenvolvimento de um software que gerencie filas por senhas, poderíamos reduzir consideravelmente diversos aborrecimentos. Diante do exposto, esta pesquisa irá demostrar como o desenvolvimento de um software capaz de gerenciar filas por senhas contendo informações relevantes para o ambiente implantado concorreria para uma melhora acerca dos problemas supracitados. Os benefícios gerados em caso de implantação do software é oferecer maiores benefícios não só para a empresa como também para seus clientes. PALAVRAS CHAVE: Serviços bancários, senhas por filas, estabelecimentos, atendimento e software.
  • 8. ABSTRACT With the growth of banking services, arise unpleasant situations, most often, in hours of care. Often, of this growth creates the possibility of creating computer systems so that you can better care not only in banking, but among other establishments. And the main complaint that is addressed in this scenario is to have to stay too long in a queue, and yet for lack of convenience to be served. If you stop and think immediately comes to mind, and as the elderly, suffering from any physical disabilities? These people suffer much more, thus generating cause’s irritability by customers. With the development of a software that manages queues for passwords, could greatly reduce many hassles. Given the above, this research will demonstrate how the development of a software able to manage passwords for queues containing information relevant to the deployed environment would further improvement of the problems mentioned above. The benefits in the event of deployment of the software is not only provide greater benefits to the company but also for their customers. KEY WORDS: Banking, passwords by lines, facilities, service and software.
  • 9. LISTA DAS FIGURAS Figura 01 – DFD Login dos Usuários 30 Figura 02 – DFD Cadastro de Usuários 31 Figura 03 – DFD Cadastro de Mesas 32 Figura 04 – DFD Alteração de Senha 33 Figura 05 – DFD Cadastro de Atendente 34 Figura 06 – DFD Cadastro de Mensagens 35 Figura 07 – DFD Acesso ao Guichê 36 Figura 08 – DFD Cadastro de Mensagens Manualmente 37 Figura 09 – Caso de Uso de Clínica Médica 38 Figura 10 – UML Funções dos Usuários 1 39 Figura 11 – UML Funções dos Usuários 2 39 Figura 12 – UML Funções dos Usuários 3 40 Figura 13 – UML Funções do Administrador 1 40 Figura 14 – UML Funções do Administrador 2 41 Figura 15 – Diagrama de ER 42 Figura 16 – Consulta SQL 42 Figura 17 – Diagrama de Classe 43 Figura 18 – Gráfico de Gantt (Informações do Software) 55 Figura 19 – Gráfico de Gantt (Tempo de Realização) 55 Figura 20 – Gráfico de Gantt (Tarefas) 56 Figura 21 – Gráfico de Gantt (Pessoas Envolvidas) 56 Figura 22 – Tela Splash 58 Figura 23 – Tela de Login 59 Figura 24 – Tela Menu Principal 59 Figura 25 – Amostra da Tela de Senhas Comuns e Preferenciais 60 Figura 26 – Tela de Atendente 60 Figura 27 – Tela de Manutenção de Atendimentos 61 Figura 28 – Tela de Manutenção de Mesas 61 Figura 29 – Tela de Manutenção de Senha 62 Figura 30 – Tela de Manutenção de Mensagens 62 Figura 31 – Tela do Painel de Atendimento 63 Figura 32 – Tela de Lista de Usuários 63
  • 10. Figura 33 – Tela do Gráfico Demonstrativo dos Atendimentos 64 Figura 34 – Tela de Cadastro de usuários 64 Figura 35 – Tela de Sobre o Sistema 65 Figura 36 – Tela de Relatório dos Atendimentos 65
  • 11. LISTA DOS QUADROS Quadro 01 – Tabela Usuários 28 Quadro 02 – Tabela Letreiro Digital 28 Quadro 03 – Tabela Atendimento 29 Quadro 04 – Tabela Atendente 29 Quadro 05 – Tabela Senha 29 Quadro 06 – Tabela Mesas 30 Quadro 07 – Necessidades do Software 46
  • 12. LISTA DAS TABELAS Tabela 01 – Investimento 24 Tabela 02 – Despesas Fixas Mensais 25 Tabela 03 – Licenciamentos do Software 25 Tabela 04 – Custo Total do Período de Desenvolvimento 26 Tabela 05 – Custo Após o Período de Desenvolvimento 26 Tabela 06 – Custo Total 26
  • 13. SUMÁRIO 1. Tema 14 1.1 Introdução 14 1.2 Problema 15 1.3 Hipóteses 15 1.4 Justificativa 15 1.5 Objetivos 15 1.5.1 Objetivo Geral 15 1.5.2 Objetivos Específicos 15 1.6 Metodologia 16 2. Marco Teórico 17 2.1 Histórico da Linguagem de Programação 17 2.1.1 Sintaxe 17 2.1.1 Semântica 17 2.2 Microsoft Corporation e a Linguagem Visual Basic .NET 18 2.3 Conceitos Sobre Banco de Dados 19 2.3.1 Banco de Dados SQL 19 2.3.2 Banco de Dados em Access 20 2.3.3 SGBD 20 3. Desenvolvimento 21 3.1 Definição do Problema 21 3.2 Estudo de Viabilidade 21 3.2.1 Custos Envolvidos 22 3.2.2 Investimentos 22 3.2.3 Período de Desenvolvimento 23 3.2.4 Custo Total do Período de Desenvolvimento 23 3.2.5 Custos Após o Período de Desenvolvimento 24 3.2.6 Custo Total 24 3.2.7 Benefícios 25 3.2.8 Conclusão 25 3.3 Solução Proposta 25
  • 14. 3.4 Dicionário de Dados 26 3.5 Diagramas de Fluxos de Dados 28 3.6 Diagramas de Casos de Uso 37 3.7 Entidade Relacionamento 40 3.8 Diagrama de Classes 42 4. Software para Atendimento Bancário 43 4.1 Do que se Trata o Sistema 43 4.2 Qual a sua Finalidade 43 4.3 Funcionamento do Software 43 4.4 Aplicação do Software de Atendimento 44 4.5 Ciclo de Vida do Software de Atendimento 44 4.6 Elicitação de requisitos 44 4.6.1 Motivação 44 4.6.2 Visão da Solução 45 4.6.3 Escopo da Solução 45 4.6.4 Limites e Restrições da Solução 46 4.6.5 Análise e Negociação de Requisitos 46 4.6.5.1 Critérios de Aceitação do Produto do Projeto 46 4.6.5.2 Requisitos de Aprovação 46 4.6.5.3 Entrega do Projeto 46 4.6.5.4 Riscos Iniciais Identificados 47 4.6.5.5 Premissas 47 4.7 Especificações de Requisitos de Software 47 4.7.1 Propósito 47 4.7.2 Escopo 47 4.8 Identificação e Localização do Documento 48 4.8.1 Organização do Documento 48 4.8.2 Descrição Geral do Software 48 4.8.3 Requisitos Funcionais 48 4.8.4 Requisitos Não-Funcionais 49 4.9 Visões Gerais do Software 49 4.9.1 Características dos Usuários 49 4.9.2 Restrições 49
  • 15. 4.10 Chamadas 49 4.10.1 Requisitos Funcionais 49 4.10.2 Requisitos Não-Funcionais 50 4.10.2.1 Usabilidade 51 4.10.2.2 Confiabilidade 51 4.10.2.3 Desempenho 51 4.10.2.4 Reusabilidade 51 4.10.2.5 Segurança 51 4.10.2.6 Acessibilidade 52 4.11 Requisitos de Interface 52 4.11.1 Interfaces com Usuários 52 4.11.2 Interfaces Hardware e Software 52 4.11.3 Interfaces de Comunicação 52 4.12 Requisitos de Documentação 52 4.12.1 Manual dos Usuários 53 4.12.2 Duvidas On-Line 53 4.13 Requisitos de Licença 53 4.14 Informações para Suporte 53 4.15 Gerenciamentos de Mudanças de Requisitos 53 4.16 Análise de Risco 54 5. Relatório de Atividades 55 5.1 Gráfico de Gantt 55 6. Relação dos Componentes 57 7. Apresentação das Interfaces do Usuário 68 Conclusão 76 Referências Bibliográficas 77 Anexo I 79 Anexo II 113
  • 16. 16 1. Tema Desenvolvimento de um Software para Atendimento Bancário. 1.1 Introdução Com o avanço da tecnologia da informação, observa-se a necessidade de pensar e analisar o mercado de trabalho, buscando a geração de oportunidades para a inovadora geração da qual que fazemos parte, de modo que seja possível desenvolver métodos mais rápidos para o auxilio da vida quotidiana, uma vez que a tecnologia da informação avança, nesse cenário globalizado, criam novas estruturas para serem analisadas e estudadas com a finalidade de reformulação e entendimento. Pensando dessa forma para melhor atender o mercado de trabalho e não deixar de ressaltar a necessidade da realidade da qual fazemos parte, dessa forma observa-se um recorte ou delimitação em realizar um projeto que pudesse gerenciar filas por senha para que assim através da informática e o avanço tecnológico gerasse melhor satisfação para as futuras pessoas que utilizarão. O SOFTWARE PARA ATENDIMENTO BANCÁRIO é parte integrante da estratégia que visa garantir a qualidade na realização dos atendimentos, a agilidade nos serviços prestados e o alto nível de satisfação do cidadão. No mundo atual podemos provar que nesse cenário globalizado não podemos ficar parado diante da realidade. Assim a presente pesquisa busca, por meios de processos informatizados através das tecnologias presentes o desenvolvimento do software. O sistema permite organizar as filas de atendimento, gerir as demandas com o correto dimensionamento e alocação dos recursos materiais e humanos para o atendimento e prestação dos serviços, propiciando a rapidez e eficiência nos serviços públicos prestados e garantindo a satisfação do cidadão. Ademais, se parar para analisar e refletir sobre o tema poderá facilmente entender as razões pela qual pretendemos realizar a pesquisa. As expectativas quanto ao desenvolvimento é grande e é fundamental ter uma visão global das estruturas o dos índices que serão alcançados. Pensando mais em longo prazo e com objetivo organizacional é viável a expansão e a necessidade de renovação no mercado, assim estabelecendo níveis de fluxos de informação podemos atingir grande parte das necessidades podendo chegar a excelência nos atendimentos.
  • 17. 17 1.2 Problema O problema principal é conseguir facilitar o atendimento e garantir um melhor atendimento aos clientes. 1.3 Hipóteses Com a nova configuração de mundo globalizado, o tempo passou a ser um elemento imprescindível para a vida das pessoas. Dessa forma, seria possível projetar um software que desse conta de poupar tempo e dar maior tranquilidade e conforto para o público desse segmento. 1.4 Justificativa Com o avanço da tecnologia da informação surgem cada vez mais necessidades e com elas novas perturbações. Dentro desse crescimento em tempo real o melhor a fazer é tentar realizar com a melhor qualidade e empenho a busca da satisfação dos cidadãos, demonstrando através da programação de computadores e olhando com mais cuidado o que se passa diante de nossos olhos diante desse cenário globalizado o meu tema justifica-se pela falta frequente de comprometimento com os clientes que não podem ficar mais de 15 minutos para o atendimento bancário. 1.5 Objetivos 1.5.1 Objetivo Geral Desenvolver um software capaz de controlar filas através de senhas, com o intuito de gerar melhor atendimento nos setores públicos e privados. 1.5.1 Objetivos Específicos
  • 18. 18  Criar um ambiente de fácil utilização para o usuário final, a ponto que realiza tarefas de modo mais rápido e eficaz;  Combinar diversos meios de comunicação com os clientes, tais como painel eletrônico com informações atualizadas do que está acontecendo no mundo todo;  Reduzir gastos, a fim de possibilitar maiores possibilidades a adquirir o sistema pelo baixo custo;  Permitir que o sistema de banco de dados armazene e gere relatórios sobre os dados cadastrados em sua base;  Verificar novas possibilidades de atendimento e;  Transmitir maior segurança. 1.6 Metodologia Para o que o projeto fosse desenvolvido foram feitas pesquisas em diversos sites e livros para obter um maior embasamento na área tendo em base; análise de sistemas, linguagem de programação e algoritmo. O sistema será desenvolvido em linguagem VB .NET utilizando o banco de dados em SQL, modelos de diagramas utilizados são: diagramas de fluxo de dados, diagramas de caso de uso, dicionário de dados e diagramas de classes. Com respeito ao material utilizado foi um microcomputador.
  • 19. 19 2. Marco Teórico Nesta sessão do capítulo será visto os conceitos relevantes ao desenvolvimento do software. 2.1 Histórico Da Linguagem De Programação De acordo com JÚNIOR (2009), Desde o aparecimento dos primeiros computadores que ficou claro que seria necessário encontrar um método padronizado para melhor expressar as instruções que deveriam ser dadas à máquina. Um conjunto de regras sintáticas e semânticas que permitissem definir um programa, passível de ser interpretado pela máquina da forma mais eficiente. A linguagem de programação se deu inicio na década de 50, com isso ficou claro que de alguma forma poderia criar linhas de códigos através dos comandos a fim de controlar máquinas. Vale ressaltar que antes do desenvolvimento das linguagens de programação de alto nível as máquinas (computadores) eram controladas por uma linguagem de baixo nível que se caracteriza linguagem de máquina ou como preferir (Assembly), nenhuma outra linguagem se equipara a Assembly porque é a única mais próxima da máquina, inclusive muitos programas desenvolvidos ainda utilizam a linguagem de máquina, por ter como característica a rapidez de compilação das rotinas criadas. No momento em que o homem sentiu maiores necessidades de controlar as máquinas, observou-se o desenvolvimento de linguagens de alto nível, como foi mencionada logo acima que para tal forma gerasse um melhor aproveitamento, produtividade, rapidez, dentre outros fatores. Temos que ter em mente que a linguagem de programação se configura a partir de códigos (instruções) passados para o computador que assim pudesse armazenar e gerar determinada informação para o usuário final. Quando falamos de linguagem de programação, temos dois conceitos muitos importantes a respeito, a saber: a sintaxe e a semântica, sob os quais deteremos a seguir. 2.1.1 Sintaxe A sintaxe forma um conjunto de regras para construir os sistemas que serão instalados nas máquinas (computadores). Ela está ligada diretamente com a escrita das linhas de códigos e como esses irão se comportar quando executados diante de determinadas
  • 20. 20 rotinas criadas, e quando falamos de sintaxe estamos referindo-nos ao que foi digitado como: letras, números, caracteres especiais entre outros. Desta forma, podemos constatar que a sintaxe é o que chamamos de alfabeto da linguagem de programação em si. 2.1.2 Semântica Tratamos a semântica como a parte mais importante na elaboração de um sistema de computador, porque é ela quem define, caracteriza a linguagem de programação. Podemos expressar a semântica da seguinte forma: tal como uma rotina para gerar números aleatoriamente pode ser criada de diferentes formas e é isso que caracteriza, ou seja, ter um valor lógico e coerente não importando a linguagem utilizada para o desenvolvimento. Dessa forma, ao se entender a sintaxe e semântica será mais confiável a escrita e a forma de interpretação da máquina na hora de compilar as linhas de códigos seja mais eficiente. Com o passar dos anos, o incentivo aos avanços tecnológicos, assim como os desenvolvimentos dos cenários econômicos, obrigaram a fazer diversas padronizações e comunicação com um todo, assim as linguagens de programação evoluíram em termos bastante significativos para o progresso, transmitindo maior produtividade, eficiência, confiabilidade e principalmente rapidez, para que pudesse gerar uma interação entre o homem e o computador. 2.2 Microsoft Corporation e a Linguagem Visual Basic .NET De acordo com FRANKLIN (2002), a Microsoft sempre esteve na dianteira quando se trata de ambientes avançados de desenvolvimento, e os desenvolvedores do Visual Basic geralmente são os primeiros a experimentar suas inovações. A empresa Microsoft iniciou-se como uma nova empresa na década de 70 com a criação da linguagem de programação BASIC, onde gerou um grande sucesso e se tornou muito popular para os desenvolvedores de softwares. Segundo MACKENZIE & SHARKEY (2002), na verdade, o Visual Basic .Net possui um numero real de versões, 7,.7 – só que ele não é muito usado. Da mesma maneira como o Windows 2000 é na realidade a versão 5.0 do Windows NT, quando mais simples ou assimilável é o nome, mas ele é usado. No entanto, não espere ouvir falar do Visual Basic
  • 21. 21 7.0 com frequência; havia até uma penalidade em dinheiro dentro da Microsoft para quem se referisse ao Windows 2000 como NT 5.0. Visual Basic .NET é uma linguagem de programação desenvolvida pela Microsoft e, no que diz a respeito à linguagem, ela é totalmente orientada a eventos e não como dizem por aí que é totalmente orientada a objetos mas, vale ressaltar que o VB.NET também tem suas características e trabalha com orientação a objetos. Nesse sentido, podemos classificar os métodos da linguagem VB.NET, que tem impactos relacionados com a ideia de classificar, organizar e abstrair coisas, a fim de se criar estruturas ou o que chamamos de conjuntos de operações. Esse empenho em analisar diversos modos funcionais de dados torna-se de fácil manuseio. 2.3 Conceitos Sobre Banco de Dados Segue, logo abaixo, todas as especificações com relação aos conceitos sobre banco de dados. 2.3.1 Banco de Dados SQL Segundo MACHADO (2004), SQL significa Structured Query Language – Linguagem Estruturada de Pesquisa, de grande utilização, teve seus fundamentos no modelo relacional de Codd (1970). Sua primeira versão recebeu o nome de SEQUEL (Structured English Query Language), definida por D.D. Chamberlim, entre outros, em 1974, nos laboratórios de pesquisa da IBM (Califórnia). A evolução contínua e rápida sempre teve a necessidade de se desenvolver e construir sistemas capazes de gerar informações fáceis e seguras. Pensando assim, evoluímos com o intuído de armazenar informações onde fosse possível a manipulação através de comandos enviados para o computador e assim deu-se ao nascimento do banco de dados onde, podemos realizar diversas consultas e gerencia-los da maneira que for mais conveniente para a utilização. Dentre esses conceitos podemos encontrar algumas características principais com relação ao banco de dados, tais como:  Incluir Registros;  Alterar Registros;
  • 22. 22  Excluir Registros;  Consultar Registros existentes nas tabelas. Bancos de dados imensos exigem uma estrutura bastante sólida. Os programadores podem usar aplicações Visual Database Tools que vem com SQL Server para criar um esquema de aplicação apropriado, que leve em consideração o tipo de dados, o local do servidor e os padrões de utilização. Os programadores também precisam entender como normalizar e “desnormalizar” a estrutura visando ao desempenha. (OHATA; HAYNIE; NIELSEN, 1999, p.15). Contudo, o bando de dados trata-se de um conjunto de informações organizadas e guardadas de forma segura e de fácil manipulação, onde podem ser realizados acessos nos dados contidos no mesmo. 2.3.2 Banco de Dados em Access De acordo com o livro TREINAMENTO RÁPIDO EM MICROSOFT ACCESS 97 (1988), um banco de dados é uma coleção de dados estruturados. Como a distribuição dos dados é previsível, podemos manipular os itens para extrair informações úteis. O componente mais básico de um banco de dados Access é uma tabela na qual estão as informações ordenadas em linhas e colunas. O banco de dados Access é um banco de dados gratuito, ou seja, não é necessário pagar nada para usá-lo em aplicações (Softwares) para armazenamento de dados. 2.3.3 SGBD SGBD ou Sistemas Gerenciadores de Banco de Dados são programas com objetivos de criar base de dados um exemplo de programa é o SQL como mencionado na seção 2.3.1.
  • 23. 23 3. Desenvolvimento 3.1 Definições do Problema O Sistema Atual apresenta vários problemas, tais como:  Alto custo de contrato de manutenção;  Alto custo de aquisição para novas licenças;  Alto custo de implantação e treinamento;  Dependência do fornecedor para qualquer pequena alteração, tal como a inclusão de uma nova fila;  Descentralização de informações, acarretando na impossibilidade de consulta à informação de forma centralizada e na necessidade de servidores de aplicação;  Falta de dados estatísticos de atendimentos;  Dificuldade de utilização, devido à necessidade dos atendentes em decorar códigos para o registro de serviços, afetando a produtividade do atendimento e causando erros nas codificações. Diante do exposto, analisamos e criamos um novo projeto a ser implantado. No item a seguir veremos a idéia do projeto. 3.2. Estudo de viabilidade Segundo DAVES (1994), estudo de viabilidade tem como finalidade determinar se há uma solução viável; caso não haja, qualquer tempo, esforço ou dinheiro gasto no projeto é um desperdício. Nessa ordem de ideias, expõe-se que: Uma vez identificado o escopo (com a concordância do cliente), é razoável perguntar: “Podemos construir um software para satisfazer esse escopo? O projeto é exequível?” Frequentemente, os engenheiros passam por cima dessas questões (ou são pressionados para desconsiderá-las por gerentes ou clientes pacientes), para ficar envolvidos apenas num projeto que está condenado desde o início. (PRESSMAN, 2002, p. 111) Há diversas maneiras de determinar a viabilidade econômica de um projeto, dentre as quais destacamos a análise de custo-benefício. O principal benefício que temos que ter em mente é a garantia de melhora dos serviços prestados à população. Além disso, um melhor aproveitamento dos recursos também deve ser levado em conta.
  • 24. 24 Nesta seção iremos expor qual é o benefício real obtido com a alternativa e também analisaremos em quanto tempo o custo atual associado poderá ser recuperado. 3.2.1 Custos envolvidos  Custo com desenvolvimento:  Salário dos desenvolvedores;  Treinamento em novas tecnologias;  Aquisição de ferramentas de software, para auxiliar no desenvolvimento;  Computadores;  Energia elétrica;  Material de escritório.  Custo com implantação e instalações;  Treinamento de pessoal;  Compra de servidores e equipamentos de rede;  Salário dos técnicos para instalação do servidor e da rede.  Custos operacionais:  Manutenção;  Pessoal; 3.2.2 Investimentos O investimento necessário para operacionalização deste projeto consiste na aquisição de um servidor capaz de atender a demanda de transações via rede. Tabela 01 - Investimento Item Quantidade Valor Unitário (R$) Valor Atual (R$) TV LCD 40 FULL HD 1 2.000,00 2.000,00 Servidor 1 2.000,00 2.000,00 Computador 2 1.000,00 2.000,00 Impressora 1 450,00 450,00 TOTAL - - 6.450,00 Fonte: Próprio autor
  • 25. 25 3.2.3 Período de desenvolvimento As despesas listadas logo abaixo referem-se ao período de desenvolvimento do software, com base em despesas fixas mensais. Tabela 02 – Despesas Fixas Mensais Item Quantidade Valor Unitário (R$) Valor Atual (R$) Salário Programadores 4 1.500,00 6.000,00 Salário Designer 1 1.000,00 1.000,00 Salário Analista de Sistemas 1 1.800,00 1.800,00 Energia - 200,00 200,00 Telefone - 100,00 100,00 Material de Escritório - 50,00 50,00 Banda Larga - 100,00 100,00 TOTAL - - 9.250,00 Fonte: Próprio Autor No cálculo a seguir, incluiremos no preço do computador os custos de obtenção e licenciamento dos softwares a serem usados no projeto. Tabela 03 – Licenciamentos do Software Item Quantidade Valor Unitário (R$) Valor Atual (R$) Equipamentos - - 9.250,00 Sistema Operacional 1 400,00 400,00 Ferramenta de 1 500,00 500,00 desenvolvimento Ferramenta de modelagem 1 1.000,00 1.000,00 TOTAL - - 11.150,00 Fonte: Próprio Autor 3.2.4 Custo total do período de desenvolvimento Após analises realizadas com o período de desenvolvimento chegamos à seguinte conclusão: o sistema pode ser concluído no período de três (3) meses, assim a lista logo abaixo mostra a tabela dos meses e o total gerado para o desenvolvimento.
  • 26. 26 Tabela 04 – Custo Total do Período de Desenvolvimento Mês Valor Total (R$) Primeiro Mês 9.250,00 Segundo Mês 9.250,00 Terceiro Mês 9.250,00 TOTAL 27.750,00 Fonte: Próprio Autor 3.2.5 Custos após o período de desenvolvimento Os custos relativos a este período compreendem as despesas com treinamento de funcionários e a manutenção do sistema. Tabela 05 – Custo Após o Período de Desenvolvimento Item Valor (R$) Treinamento (um mês) 400,00 Manutenção 300,00 Fonte: Próprio Autor 3.2.6 Custo Total Abaixo, especificamos o custo total do sistema para um período de quatro anos. Estimamos que um mês de treinamento, realizado no primeiro ano, será necessário para que os funcionários se adaptem ao uso do programa. Consideramos, também, que no primeiro ano a manutenção é coberta pela garantia, e que, a partir do segundo ano, seu custo é de R$300,00 por mês. Como especificado, confira na tabela abaixo: Tabela 06 – Custo Total Período Valor (R$) 1° ano 27.750,00 2° ano 3.600,00 3° ano 3.600,00 4° ano 3.600,00 TOTAL 38.550,00 Fonte: Próprio Autor
  • 27. 27 3.2.6 Benefício Como benefício intangível podemos citar: a melhora no atendimento dos clientes, a diminuição do congestionamento das filas, a eficiência no fornecimento das informações e organização das solicitações de serviços. 2.2.7 Conclusão Um grande gerenciamento e economia de custo à empresa, além da possibilidade de novos negócios, visto que poderá ser utilizado por qualquer Órgão no atendimento à população. Visto dessa forma que o estudo de viabilidade está relacionado com o custo do desenvolvimento e a manutenção de uma forma geral do software fica claro que de uma forma ou outra para se manter no mercado atual é essencial investir para ter um retorno. Carvalho (2001) define da seguinte forma: A quantidade de tempo que se deve gastar com o estudo de viabilidade depende do projeto. Por exemplo, é bastante razoável gastar um dia para avaliar as alternativas para modificar o formato do relatório. Já para desenvolver um ovo sistema de contabilidade, será necessário gastar semanas. O desenvolvimento de um novo pacote que custará milhões de dólares com certeza pede um estudo mais apurado das possíveis soluções e, portanto, pode levar messes ou até anos. 3.3 Soluções Proposta Como solução proposta viso desenvolver um software capaz de controlar filas por senhas, com o intuito de realizar chamadas através de senhas e, ainda, o software conterá informações contidas em uma tela (Painel) de plasma ou LCD com informativos eletrônicos. 3.4 Dicionários de Dados Dicionário de dados é uma lista que contém as características, definições lógicas para os dados inseridos nas tabelas. Durante o desenvolvimento e a análise de fluxo é através do dicionário de dados que nos proporciona melhores análises durante o planejamento e criação de um sistema de computador. GANE & SARSON (2002) definem da seguinte forma: O nome dicionário de dados adquire um significado mais amplo quando começamos a incluir detalhes sobre processos que, estritamente falando, se referem a lógica e não a dados. Talvez devesse ser realmente chamado de diretório de projeto. (p. 52)
  • 28. 28 Logo abaixo estão inseridas as tabelas do dicionário de dados conforme suas respectivas características. Quadro 01 – Tabela de Usuário TABELA USUARIO Nome da Descrição da coluna Data type Nulabilidade Constraint coluna Usuário Nome do usuário Varchar Not null (10) Senha Senha do usuário Varchar Not null (10) Tipo Tipo do usuário Char (1) Not null Fonte: Próprio Autor A tabela usuário tem como objetivo dentro do sistema registar todos os usuários que possivelmente irão utilizar o sistema. Quadro 02 – Tabela Letreiro Digital TABELA LETREIRO DIGITAL Nome da Descrição da coluna Data type Nulabilidade Constraint coluna Id_mensagem Código da Int Not null Chave primária e mensagem alto incremento Nome da Nome da mensagem Varchar Not null mensagem (255) Fonte: Próprio Autor A tabela letreiro digital tem como objetivo dentro do sistema armazenar todas as informações apresentadas para os clientes no painel. Quadro 03 – Tabela Atendimento TABELA ATENDIMENTO Nome da Descrição da Data type Nulabilidad Constraint coluna coluna e Código Código do Int Not null Chave primária e atendimento atendimento alto incremento Código Código do Int Not null Chave estrangeira atendente atendente referenciando a tabela atendente Número_Senh Número da Senha Varchar (20) Not null a Data Data do Datetime Not null atendimento Fonte: Próprio Autor A tabela atendimento tem como objetivo dentro do sistema registrar todos os atendimentos gerados durante todo o dia, como: data, hora, senhas, qual atendente realizou determinada chamada.
  • 29. 29 Quadro 04 – Tabela Atendente TABELA ATENDENTE Nome da Descrição da coluna Data type Nulabilidade Constraint coluna Código Código do atendente Int Not null Chave primária de atendente alto incremento Nome Nome do atendente Varchar Not null (60) Fonte: Próprio Autor A tabela atendente tem como objetivo dentro do sistema registrar todos os atendentes que utilizarão o sistema. Quadro 05 – Tabela Senha TABELA SENHA Nome da coluna Descrição da Data type Nulabilidade Constraint coluna Número Número da senha Int Not null Chave primária de alto incremento Tipo_comum Tipo de senha Varchar (1) Not null comum Tipo_preferencial Tipo de senha Varchar de Not null preferencial (1) Fonte: Próprio Autor A tabela senha tem como objetivo dentro do sistema de gerar novas senhas para retirada de uma nova chamda e armazenar qual senha foi gerada pelo sistema. Quadro 06 – Tabela Mesa TABELA MESA Nome da coluna Descrição da Data type Nulabilidade Constraint coluna Código mesa código da mesa Int Not null Chave primária e estrangeira fazendo referencia coma tabela atendente e com alto incremento Numero_atendente Número do int Not null Atendente Fonte: Próprio Autor A tabela mesa tem como objetivo dentro do sistema gerenciar as quantidades mesas que o sistema irá conter para o seu funcionamento.
  • 30. 30 3.5 Diagramas de Fluxos de Dados Basicamente o diagrama de fluxo de dados serve para elaborar como será feito os processos realizados dentro do sistema, sendo o mesmo não uma estrutura lógica e independente, pois: O diagrama de fluxo de dados é um modelo lógico do sistema. O modelo não depende do hardware, do software, da estrutura de dados, ou da organização do arquivo; não há nenhuma implicação física no diagrama de fluxo de dados. (DAVIS, 1994, p. 256). De acordo com Gane & Sarson (2002), o fluxo de dados é simbolizado por meio de uma seta, de preferência horizontal e/ou vertical, com a ponta indicando a direção do fluxo. Figura 01 – DFD Login dos Usuários Fonte: Próprio Autor
  • 31. 31 Quando o usuário tentar acessar ao software será pedido para o mesmo que entre com o nome e senha para ser validado, caso o usuário informar nome e senha incorretos será mostrado na tela uma mensagem de erro informando que não conferem o registro e por fim se o usuário informar nome e senha corretos o mesmo será direcionado para o menu principal do software contendo acesso a quase todas as funções do software. Figura 02 – DFD Cadastro de Usuários Fonte: Próprio Autor Quando houver a necessidade de cadastrar novos usuários para a utilização do software somente o administrador terá essa prioridade, sendo que o para realizar o cadastro o administrador terá que informar nome e senha de usuário para realizar uma validação para verificar se está corretamente preenchidos os campos, caso os dados estiverem corretos os
  • 32. 32 dados do usuário será armazenado na TB_Usuarios e caso não estiverem corretos será enviada uma mensagem de erro para o administrador informando qual erro que aconteceu. Figura 03 – DFD Cadastro de Mesas Fonte: Próprio Autor Quando houver a necessidade de cadastrar mais mesas (Guichê) para obter melhores atendimentos o somente o administrador terá prioridade no software sendo que para realizar o cadastro da mesa o mesmo deve informar os dados da mesa e em caso de informações invalidas será enviada uma mensagem de erro senão será armazenada na tabela TB_Mesas.
  • 33. 33 Figura 04 – DFD Alteração de Senha Fonte: Próprio Autor De tempo em tempo haverá a necessidade de alteração de senhas dos usuários e para isso o mesmo deve informar o nome e senha para que sejam validados conforme feito isso deverá informar a nova senha e repetir novamente a nova senha para que haja maior segurança e em caso de informações invalidas dos usuários será enviada uma mensagem de erro para o mesmo senão será armazenada a nova senha na TB_Usuarios.
  • 34. 34 Figura 05 – DFD Cadastro de Atendente Fonte: Próprio Autor Ao cadastrar um novo atendente do software o mesmo, somente o administrador terá prioridade sendo que o mesmo deve se atentar quanto ao cadastro dos usuários pelo fato que os atendentes serão os usuários do software e em caso de dados inválidos será enviada uma mensagem de erro senão será armazenado na TB_Atendente.
  • 35. 35 Figura 06 – DFD Cadastro de Mensagens Fonte: Próprio Autor Quando os usuários do software perceber que a necessidade de cadastrar novas mensagens para que seja exibida para os clientes o mesmo terá que informar os dados corretamente para que possa ser validados e em caso de dados inválidos será enviada uma mensagem de erro para o usuário senão armazena na TB_Mensagem.
  • 36. 36 Figura 07 – DFD Acesso ao Guichê Fonte: Próprio Autor Quando um atendente for iniciar o atendimento do dia o mesmo terá que informar seus dados cadastrais para que seja validado e em caso de dados inválidos será enviada uma mensagem de erro senão o mesmo terá acesso ao guichê.
  • 37. 37 Figura 08 – DFD Cadastro de Mensagens Manualmente Fonte: Próprio Autor Quando houver a necessidade de cadastrar um atendimento manualmente, somente o administrador terá prioridade de realizar esse tipo de tarefa no software, sendo o mesmo terá que informar os dados para armazenamento para ser validados e em caso de erro nas informações dos dados será enviada uma mensagem de erro para o administrador senão os dados informados serão armazenados na TB_Atendimento. Todo e qualquer processo, tanto administrativo quanto operacional, tem um fluxo das operações de entrada, processamento e saída. Esse fluxo envolve, além dessas operações, as áreas da organização envolvidas, os recursos humanos e matérias, os custos relativos a esses recursos, o volume de trabalho, os tempos de execução, a documentação que tramita pelo mesmo e a tecnologia de informação utilizada. (D’ASCENÇÃO, 2001, p. 109)
  • 38. 38 3.6 Diagramas de Casos de Uso Diagramas de caso de uso têm objetivo de conciliar as funções que cada usuário terá no software, ou seja, designar as funções por privilégios. Dessa forma fica fácil para o analista e para o cliente que está solicitando o desenvolvimento do mesmo. Observe logo abaixo um exemplo de como seria um diagrama de classe. Figura 09 – Caso de Uso de Clínica Médica Fonte: Disponível em: http://www.dsc.ufcg.edu.br/~sampaio/cursos/2007.1/Graduacao/SIII/Uml/diagramas/usecases/usecases.htm . Acesso em: 20/09/2011 Como vimos no exemplo acima o diagrama de caso de uso é essencial entre o cliente e o analista, para que assim posso se obter melhores entendimentos na hora do desenvolvimento. Agora confira nas ilustrações abaixo como ficou o diagrama de caso de uso do software de Atendimento Bancário.
  • 39. 39 Figura 10 - UML Funções dos Usuários 1 Fonte: Próprio Autor Figura 11 - UML Funções dos Usuários 2 Fonte: Próprio Autor
  • 40. 40 Figura 12 - UML Funções dos Usuários 3 Fonte: Próprio Autor Figura 13 - UML Funções do Administrador 1 Fonte: Próprio Autor
  • 41. 41 Figura 14 - UML Funções do Administrador 2 Fonte: Próprio Autor 3.7 Entidade Relacionamento De acordo com Machado (2004), o modelo Entidade-Relacionamento (ER) foi definido por Peter Pin-Shan Chen, em 1976, e baseia-se na percepção do mundo real como constituído por um conjunto de objetos básicos chamados entidades e relacionamentos e define uma técnica de diagramação para modelos de dados, o diagrama de entidade e relacionamento. (CHEN, 1976 apud MACHADO, 2004, p. 67).
  • 42. 42 Figura 15 – Diagrama de ER Fonte: Próprio Autor Figura 16 – Consultas SQL Fonte: Próprio Autor
  • 43. 43 3.8 Diagrama de Classes Basicamente diagrama de classes está relacionado à estrutura do sistema de uma forma geral, onde por sua vez podemos identificar todos os objetos que existem no desenvolvimento do software a fim de obter melhores formas de análise. Figura 17 – Diagrama de Classe Fonte: Próprio Autor
  • 44. 44 4. Software para Atendimento Bancário 4.1 Do que se Trata o Software É um software que controla filas por senhas, consiste de um conjunto de informações que quando operadas funcionam de modo que facilite a organização do atendimento, com capacidade de medir o desempenho dos atendimentos e a capacidade de medir o nível de satisfação de determinadas situações. O software ainda pode informatizar o atendente para que ele possa saber quantas vezes um determinado cliente foi atendimento, saber o tempo médio de espera do atendimento, cadastrar os clientes, informatizar os serviços e imprimir fichas sequenciais de chegada para determinados clientes tais como clientes preferenciais e clientes não preferenciais. O software que controla painel virtual tem como finalidade representar o estado atual das filas, pode apresentar mensagens, últimas fichas atendidas, publicidade da empresa e etc. 4.2 Qual a sua Finalidade Este software de atendimento de senhas por fila visa informatizar o controle para diversas filas, sendo o sistema de atendimento um controle estatístico baseado em atendimento eletrônico. Obviamente utilizam um painel eletrônico e um dispensador controlado por um atendente que ao disparar o comando emite um ticket com senha, data, horário, nome da empresa e o nome da fila selecionada ao cliente. Assim favorecendo a organização dos atendimentos onde se encontra várias filas de espera. 4.3 Funcionamento do Software Basicamente, o cliente ao chegar ao estabelecimento que contém um desse Software de Atendimento será fornecido a ele uma senha no dispensador, onde por sua vez é o que corresponde ao emissor de senhas. Após o recebimento de sua senha o cliente aguarda o seu chamado no painel eletrônico.
  • 45. 45 O software utilizado é operado pelos atendentes da empresa dispõe-se de um software que permite realizar a chamada do próximo cliente em espera. O software ainda exibe para o atendente qual a senha a ser atendida e permite que ele registre se o atendimento foi prestando ou se houve desistência. No caso de priorização ou re-chamada do atendimento para os clientes preferenciais será sempre possível à intervenção do operador para emitir senhas específicas para determinadas circunstâncias. Por fim a cada realização feita pelo software será feita uma alteração no painel que por sua vez emitirá um sinal sonoro ou tendo a opção de chamada por um sinal de voz. 4.4 Aplicação do Software de Atendimento Claramente, esse tipo de sistemas pode ser aplicado em todas as empresas que desejam adquirir e segmentar esse tipo de atendimento na recepção dos seus clientes, no atendimento preferencial e cumprir as leis de espera (Lei da Fila), ou pode simplesmente optar em agilizar a prestação de serviços com guichê exclusivo para o atendimento dos seus clientes. 4.5 Ciclos de Vida e o Software de Atendimento O software será desenvolvido seguindo o modelo cascata, ou seja, o software será desenvolvido por completo e ao final será entregue e implantado na empresa solicitadora do serviço. Segue, logo abaixo, alguns ciclos de vida onde por sua vez são utilizados no desenvolvimento de softwares. Modelo Constrói e Conserta (Caótico): O modelo constrói e conserta é utilizado geralmente para pequenas empresas, onde não é necessário muito planejamento para o desenvolvimento. Dessa forma quando se inicia o projeto utilizando este modelo, todos os processos são construídos e apresentados para o cliente quantas vezes forem necessários até a aceitação do mesmo. Modelo Cascata: O modelo cascata é uma sequência que onde por sua vez o projeto é todo desenvolvido e entrega para o cliente final. Este modelo não é muito utilizado atualmente no processo de desenvolvimento, mas, em certos projetos não há como utilizar outro tipo de ciclo de vida como, por exemplo, o modelo espiral onde, por sua vez é o mais utilizado e recomendado para o desenvolvimento de projetos.
  • 46. 46 Modelo Espiral: O modelo espiral segue uma sequência onde o projeto de software é divido em módulos que por sua vez é desenvolvido em partes. Assim a cada módulo que é feito o analista entra em contato com o cliente para apresentar o mesmo feito. No desenvolvimento do software em espiral segue algumas características que são de suma importância a se seguir, como são mostrados logo abaixo:  Comunicação com o cliente;  Planejamento;  Análise de risco;  Engenharia;  Construção e liberação;  Avaliação do cliente. 4.6 Elicitação de requisitos Segue logo abaixo todas as especificações com relação à Elicitação de Requisitos. 4.6.1 Motivação O principal motivo para o desenvolvimento do software se deu após observarmos o quanto é ruim ficar em filas de espera para ser atendimento e esperamos que através da tecnologia existente em nosso cenário globalizado possamos realizar nosso objetivo. 4.6.2 Visão da Solução Gerenciar e Organizar as empresas mantenedoras do software visando à satisfação dos clientes e tudo isso voltado para uma melhor aparência no mercado competitivo. 4.6.3 Escopo da Solução Nessa seção serão descritas as principais necessidades para o software a ser desenvolvido.
  • 47. 47 Quadro 07 – Necessidades do Software Necessidades Categoria 1. O software deve apresentar interface intuitiva. Essencial 2. O software deve ter área para login. Essencial 3. O software deve apresentar disponibilidade de ajuda off-line. Desejável 4. O software deve apresentar restrição de usuário. Essencial 5. O software deve gerenciar um painel para informações. Essencial 6. O software deve apresentar suporte padrão de solução. Importante 7. O software deve conter o registro do mesmo. Importante 8. O software deve apresentar relatórios diários. Essencial 9. O software deve apresentar tela de inicialização. Desejável 10. O software deve apresentar o que ramo a empresa atua. Essencial Fonte: Próprio Autor Essencial: Características essenciais. Falha em sua implementação significa não satisfazer o usuário. Têm que ser implementadas. Importante: Esta característica tem que ser implementadas. No entanto, a entrega não será atrasada pela falta de uma característica importante. Desejável: São úteis em aplicações pouco típicas, ou de uso pouco frequente. Não se espera um impacto muito grande na satisfação do cliente pela sua implementação. 4.6.4 Limites e Restrições da Solução O software tem como limites que não terá como usar um uma página Web e usuários terão restrições com relação a algumas funções dentro do sistema sendo reservados somente para o administrador. 4.6.5 Análise e Negociação de Requisitos Declaração do Escopo. 4.6.5.1 Critérios de Aceitação do Produto do Projeto
  • 48. 48 O software não será desenvolvido de forma prototipada, ou seja, não será entregue em partes, sendo assim o desenvolvimento do mesmo será realizada em um todo e entregue completo. 4.6.5.2 Requisitos de Aprovação Levantamento de Requisitos; Ata de reunião com aceite; Documento de Aprovação conforme reuniões quinzenais com o cliente. 4.6.5.3 Entrega do Projeto Termo de aceite; Documentação; Manual de Usuário. 4.6.5.4 Riscos Iniciais Identificados Os riscos identificados no início do projeto são:  Não cumprimento do prazo para entrega dos módulos e/ou projeto;  Ultrapassar custo definido para concepção do projeto;  Alterações no escopo do projeto no decorrer de sua concepção por mudanças na Reitoria ou Pró-Reitoria. 4.6.5.5 Premissas A entrega será ocorrida em seis meses juntamente com sua documentação. Caso não seja entregue no prazo poderá ocasionar atraso no projeto, aumento de custo e insatisfação do cliente. Cada parte entregue sem a incidência de erro, testado e aprovado. Caso não seja entregue sem erro, ocasionará retrabalho podendo incidir em aumento de custo e atraso na entrega dos próximos módulos.
  • 49. 49 4.7 Especificações de Requisitos de Software Segue, logo abaixo, todas as especificações. 4.7.1 Propósito O propósito deste documento é especificar os requisitos do Software para Atendimento Bancário, de tal forma a fornecer informações relevantes ao desenvolvimento de projetos. 4.7.2 Escopo O escopo deste projeto descreve etapas, recursos disponíveis, como o software será desenvolvido. 4.8 Identificação e Localização do Documento Segue logo abaixo como será realizada a Identificação e Localização do Documento. 4.8.1 Organização do Documento Além desta seção introdutória, as seções seguintes estão organizadas como descrito abaixo. Descrição geral do software: apresenta uma visão geral do sistema, caracterizando qual é o seu escopo e descrevendo seus usuários. Requisitos Funcionais (casos de uso): especifica todos os casos de uso do sistema, ver seção 2.5, descrevendo os fluxos de eventos, prioridades, atores, entradas e saídas de cada caso de uso a ser implementado.
  • 50. 50 Requisitos Não-Funcionais: especifica todos os requisitos não funcionais do sistema, divididos em requisitos de usabilidade, confiabilidade, desempenho, segurança, distribuição, adequação a padrões e requisitos de hardware e software. 4.8.2 Descrição Geral do Software Como mencionado na seção 4.6.5.4 segue na seção 4.8.2 e 4.8.3 os conceitos sobre os requisitos Funcionais e Não-Funcionais. 4.8.3 Requisitos Funcionais Os requisitos funcionais referem-se aos requisitos que estão relacionados com a maneira com que o sistema deve operar, onde se especificam as entradas e saídas do sistema e o relacionamento comportamental entre elas, assim como a iteração com o usuário. 4.8.4 Requisitos Não-Funcionais A operação do software deve ser de fácil utilização. Geralmente existem pessoas que não dominam a informática muito bem, esses poderão ser usuários (leigos) e cliente que posteriormente utilizarão o mesmo para retirada de senhas. 4.9 Visões Gerais do Software Segue, logo abaixo, todas as visões gerais do software. 4.9.1 Características dos Usuários Como característica dos usuários define que pelo menos para a utilização do sistema o mesmo deve ter conhecimentos básicos de informática, sendo assim mais fácil a sua adaptação ao software. 4.9.2 Restrições
  • 51. 51 Para que não haja maiores problemas na utilização do software as restrições serão definidas como “COMUM e ADMINISTRADOR”, os usuários serão cadastrados como “COMUM”, ou seja, os usuários não terão os mesmo privilégios que os administradores do software de tal forma a ficar mais organizado. 4.10 Chamadas Segue, logo abaixo, todas as especificações das chamadas. 4.10.1 Requisitos Funcionais Crie Informações Descrição do caso de uso: Este caso de uso permite que o usuário crie e armazene um novo componente no sistema. Prioridade: (X) Essencial ( )Importante ( )Desejável Entradas e pré-condições: não tem. Saídas e pós-condição: um componente é cadastrado no sistema Excluir Determinada Informação Descrição do caso de uso: Este caso de uso permite que o usuário exclua um componente do cadastro de componentes do sistema. Um componente pode ser excluído. Prioridade: (X) Essencial ( )Importante ( )Desejável Entradas e pré-condições: recebe como entrada o componente que se deseja excluir Saídas e pós-condição: o usuário consegue excluir o componente que deseja Alterar Informações Descrição do caso de uso: Este caso de uso permite que o usuário altere os dados de um componente. Prioridade: (X) Essencial ( )Importante ( )Desejável Entradas e pré-condições: recebe como entrada o componente que se deseja alterar. Saídas e pós-condição: um componente é alterado no sistema.
  • 52. 52 Visualizar Informações Descrição do caso de uso: Este caso de uso permite que o usuário visualize os dados de um determinado componente. Prioridade: ( ) Essencial (X)Importante ( )Desejável Entradas e pré-condições: deve receber como entrada o componente que se deseja visualizar. Saídas e pós-condição: o usuário visualiza o componente desejado 4.10.2 Requisitos Não-Funcionais Segue logo abaixo todas as especificações dos Requisitos Não-Funcionais do Software. 4.10.2.1 Usabilidade A interface com o usuário é de vital importância para o sucesso do sistema. Principalmente por ser um sistema que será utilizado diariamente, o usuário não possui tempo disponível para aprender como utilizar o sistema. O sistema terá uma interface amigável ao usuário primário sem se tornar cansativa aos usuários mais experientes. Em especial, o módulo de publicação HTML possuirá um wizard para ajudar o usuário. Prioridade: (X) Essencial ( )Importante ( )Desejável 4.10.2.2 Confiabilidade O software terá total identificação dos registros, a fim de, garantir melhores informações para o administrador. 4.10.2.3 Desempenho
  • 53. 53 O software tem como desempenho para até designado como “Médio” sendo possível a melhora do mesmo para que obtenha o Máximo. Tratamos o assunto de capacidade de números de filas que o software irá suportar em primeira instancia será de três filas. 4.10.2.4 Reusabilidade Nesse caso irá reutilizar rotinas prontas (bibliotecas) para o desenvolvimento do software. 4.10.2.5 Segurança Somente o administrador terá acesso a todos os módulos do software, dessa forma evitando ricos de vazamentos de informações. 4.10.2.6 Acessibilidade O software deve seguir normas de desenvolvimentos de projetos, que por sua vez, implantados pela empresa desenvolvedora. 4.11 Requisitos de Interface Segue, logo abaixo, todas as especificações de Requisitos de Interfaces. 4.11.1 Interfaces com Usuários O software apresenta interfaces intuitivas e tem como características a facilidade de uso, dessa forma gera uma melhor aparência hora da utilização. 4.11.2 Interfaces Hardware e Software
  • 54. 54 As interfaces do software serão propriamente desenvolvidas pela empresa desenvolvedora e tendo como plataforma para a instalação e utilização a plataforma Windows. 4.11.3 Interfaces de Comunicação O software terá interfaces de comunicações sendo elas: um painel para visualização de senhas e informativos. 4.12 Requisitos de Documentação Segue, logo abaixo, todas as especificações de Requisitos de Documentação. 4.12.1 Manual dos Usuários O manual precisa ser uma referencia completa do software com o qual o usuário possa aprender as funcionalidades, bem como os elementos de interface. O manual ainda deve possibilitar que os usuários esclareçam as duvidas mais rápido possível (O mesmo deve mais ser completo possível). 4.12.2 Dúvidas On-Line Através da web site da empresa desenvolvedora poderá ser consultados duvidas ou sugestões sobre o software desenvolvido. 4.13 Requisitos de Licença O software deve ser assegurado às liberdades de uso, acesso ao código fonte, distribuição e modificação. 4.14 Informações para Suporte
  • 55. 55 Após a implantação do software a empresa desenvolvedora dará total suporte ao mesmo em caso de futuros bugs (erros). 4.15 Gerenciamentos de Mudanças de Requisitos O gerenciamento de mudanças de requisitos trata as seguintes etapas:  O cliente solicita uma mudança;  O Analista de Sistemas juntamente com o Gerente de Projeto analisarão tal mudança e avaliarão o impacto da mesma no desenvolvimento;  O Gerente do Projeto juntamente com o cliente negociam a mudança pretendida;  Como resultado dessa negociação ocorrerá ou não a mudança solicitada. 4.16 Análise de Risco A análise dos riscos no desenvolvimento do software está ligada ao custo. A estratégia para lidar com este risco é desenvolver opções para que se possa oferecer um software mais enxuto e seguro. 5. Relatório de Atividades Segue, logo abaixo, o relatório do cronograma realizado para o desenvolvimento do software. 5.1 Gráfico de Gantt
  • 56. 56 Figura 18 – Gráfico de Gantt (Informações do Software) Fonte: Próprio Autor Figura 19 – Gráfico de Gantt (Tempo de Realização) Fonte: Próprio Autor
  • 57. 57 Figura 20 – Gráfico de Gantt (Tarefas) Fonte: Próprio Autor Figura 21 – Gráfico de Gantt (Pessoas Envolvidas) Fonte: Próprio Autor
  • 58. 58 6. Relação dos Componentes Aqui está o texto com a breve descrição do que seria relação dos componentes1. Relação de componentes nada mais é do que todos os componentes que foram utilizados para desenvolver o software. Dentre esses componentes podemos citar algumas características, tais como:  Componente que permitem gravar os dados no banco de dados;  Componentes que permitem a visualização dos dados;  Componentes que permitem visualizar gráficos Contudo, a utilização de componentes é muito útil e organizada, onde assim podem ser usadas para obter melhor desempenho no desenvolvimento de um software. __________________________ 1 Vide Anexos – anexo II – Quadro de relação dos componentes. (p. 113)
  • 59. 59 7. Apresentação das Interfaces do Usuário Figura 22 - Tela Splash Fonte: Próprio Autor Tela Splash é a tela inicial do software, contêm informações da empresa e descrições do mesmo.
  • 60. 60 Figura 23 - Tela de Login Fonte: Próprio Autor Tela de Login onde por sua vez o usuário deverá informar o nome e senha para logar no software. Figura 24 - Tela de Menu Principal Fonte: Próprio Autor Tela de menu principal onde se encontra todas as funções do software, tais como: estatísticas, adicionar novos usuários, utilitários entre outras funções.
  • 61. 61 Figura 25 - Amostra da Tela de Senhas Comuns e Preferenciais Fonte: Próprio Autor Esta tela é uma amostra de como será realizada a chamada das senhas, se encontra no menu principal junto com outras funções. Figura 26 - Tela de Atendentes Fonte: Próprio Autor Tela de Atendente, esta tela tem como finalidade realizar a manutenção de todos os atendentes que irá utilizar o software.
  • 62. 62 Figura 27 - Tela de Manutenção de Atendimentos Fonte: Próprio Autor Tela de manutenção dos atendimentos, esta tela tem como finalidade realizar todas as manutenções dos atendimentos, sendo, possível realizar alteração nos atendimentos como: data, mesa, atendente entre outras funções. Figura 28 - Tela de Manutenção de Mesas Fonte: Próprio Autor Tela de manutenção de mesas, esta tela tem como finalidade realizar a manutenção de todas as mesas (guichês) do qual o software irá possuir.
  • 63. 63 Figura 29 - Tela de Manutenção de Senhas Fonte: Próprio Autor Tela de manutenção de senhas, esta tela tem como finalidade a alteração de senhas caso o usuário desejar modificar. Figura 30 - Tela de Manutenção de Mensagens Fonte: Próprio Autor Tela de manutenção de mensagens, esta tela tem como finalidade enviar todas as mensagens ao menu principal e ao painel onde será por sua vez o painel será visto pelos clientes.
  • 64. 64 Figura 31 - Tela do Painel de Atendimento Fonte: Próprio Autor Tela do painel de atendimentos, esta tela é umas das principais, pois irá controlar a senhas, mesa e tipo de atendimento os clientes irão se direcionar. Ainda contendo as mensagens em tempo real, data e hora. Figura 32 - Tela de Lista de Usuários Fonte: Próprio Autor Tela onde poderá visualizar todos os usuários cadastros ativos do software.
  • 65. 65 Figura 33 - Tela do Gráfico Demonstrativo dos Atendimentos Fonte: Próprio Autor Esta tela tem como finalidade mostrar um gráfico demonstrativo dos atendimentos durantes os meses do ano. Figura 34 - Tela de Cadastro de Usuários Fonte: Próprio Autor Tela de registro de usuários tem como objetivo cadastrar e realizar a manutenção de todos os usuários que irão utilizar o software.
  • 66. 66 Figura 35 - Tela de Sobre o Sistema Fonte: Próprio Autor Tela sobre o sistema tem como finalidade mostrar algumas informações relevantes quanto ao software desenvolvido. Figura 36 - Tela de Relatório dos Atendimentos Fonte: Próprio Autor
  • 67. 67 Tela de relatório dos atendimentos, essa tela tem grande importância para o administrador do software, pois, é através dela que poderá visualizar todos os atendimentos e gerar os relatórios.
  • 68. 68 Conclusão Conclui-se que, com o desenvolvimento deste projeto, foi possível adquirir novos conhecimentos na área de programação e análise de sistemas. Diante disso, torna-se evidente que a execução deste estudo foi de suma importância e muito gratificante não só pelo fato de abranger novos conhecimentos, mas, também por ter propiciado uma visão mais ampla sobre o mercado de trabalho e o que iremos enfrentar na contemporaneidade.
  • 69. 69 Referências Bibliográficas BEAL, Adriana. Gestão Estratégica da Informação – Editora Atlas, SP, 2004. BOENTE, Alfredo – Construindo Algoritmos Computacionais: Lógica de programação. Rio de Janeiro: LTC, 2003. CARBONI, Irenice de Fátima. Lógica de Programação. São Paulo: Thomson, 2003. DAVIS, Willian S. Análise e Projeto de Sistemas Abordagem Estruturadas. LTC, 2001. DUNCAN, Mackenzie. SHARKEY, Kent. Aprenda Visual Basic .NET em 21 Dias; tradução: Aldir José Coelho Corrêa da Silva; revisão técnica: Marcos Jorge. São Paulo: Person Education do Brasil, 2003. GANE, Chris. SARSON, Trish. Análise Estruturadas de Sistemas; tradução Gerry Edward Tompkins; Revisão técnica: Cesar Gonçalves Neto. Rio de Janeiro: LTC – Livros Técnicos e Científicos Editora S.A, 2002. LAGES, Guimarães. Algoritmos e Estruturas de Dados. Rio de Janeiro: LTC, 1994. JUNIOR, Benjamim, Linguagens de Programação – Resumo Histórico, 2007. Fonte Disponível em: http://obviousmag.org/archives/2007/09/linguagens_de_p.html - Acessado em 14/12/2011. OHATA, Michael; HAYNIE, Bob; NIELSEN, Per Vonge. Microsoft SQL Server 7.0: Manual Prático. Daniel Vieira. Rio de Janeiro: Campus, 1999. PEREIRA, Silvio do Lago. Estruturas de Dados Fundamentais: Conceitos Aplicações. Érica, 2001. SALITA, Walter Luiz Caram – Técnicas de Programação: Uma abordagem estruturada. São Paulo: Makron Books, 1992.
  • 70. 70 SALVETTI, Dirce Douglas. BARBOSA, Lisbete Madsen. Algoritmos. São Paulo: Makron Books, 2004. STAREC, Cláudio (Org). Gestão Estratégica da Informação e Inteligência Competitiva – Ed Saraiva, SP, 2005. http://chasqueweb.ufrgs.br/~paul.fisher/apostilas/basdad/bd_mod_er.htm - Acesso em 28/09/2011.
  • 71. 71 ANEXO I frmSplash Public Class frmSplash Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.AxShockwaveFlash1.LoadMovie(0, "C:SysBankswfbanner.swf") End Sub Private Sub TimerCarrega_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerCarrega.Tick Try Me.pbButoes.Value += 2 If Me.pbButoes.Value = 80 Then Me.btnEntrar.Visible = True Me.Linklbl.Visible = True End If Catch ex As Exception End Try End Sub Private Sub TimerFlash2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerFlash2.Tick Try Me.pbFlash2.Value += 2 If Me.pbFlash2.Value = 2 Then Me.AxShockwaveFlash1.LoadMovie(0, "C:SysBankswfmain.swf") End If Catch ex As Exception End Try End Sub Private Sub EncerrarSistema() Try Dim sair As Integer sair = MsgBox("Tem certeza que deseja encerrar a aplicação?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) If sair = vbYes Then If TimeOfDay >= "6:00" And TimeOfDay <= "11:59" Then MessageBox.Show("Tenha um Boa Dia!", "Encerrando...") End Else If TimeOfDay >= "12:00" And TimeOfDay <= "17:59" Then MessageBox.Show("Tenha uma Boa Tarde!", "Encerrando...")
  • 72. 72 End Else If TimeOfDay >= "18:00" And TimeOfDay <= "23:59" Then MessageBox.Show("Tenha uma Boa Noite!", "Encerrando...") End End If End If End If End If Catch ex As Exception End Try End Sub Private Sub Linklbl_LinkClicked_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles Linklbl.LinkClicked EncerrarSistema() End Sub Private Sub btnEntrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEntrar.Click Try Hide() frmLogin.Show() Catch ex As Exception End Try End Sub End Class frmLogin Public Class frmLogin Dim SAPI Dim pergunta As String Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Try Me.Opacity += 0.03 If Me.Opacity > 1 Then Me.Timer1.Enabled = False End If Catch ex As Exception End Try End Sub Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerLogin.Tick Try Me.pbLogin.Value += 1 If Me.pbLogin.Value <= 30 Then Me.lblMensagem.Text = "Carregando Bando de Dados..." End If If Me.pbLogin.Value <= 60 Then Me.lblMensagem.Text = "Inicializando Sistema GSPF..." End If
  • 73. 73 If Me.pbLogin.Value = 100 Then Me.lblMensagem.Text = "Concluído Sistema GSPF..." End If Catch End Try End Sub Private Sub frmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'DbSysBankDataSet.tbUsuarios' table. You can move, or remove it, as needed. Me.TbUsuariosTableAdapter.Fill(Me.DbSysBankDataSet.tbUsuarios) Me.TimerLogin.Enabled = True Me.lblAutenticacao.ForeColor = Color.Black Me.lblAutenticacao.Text = "Verificando Conectividade GSPF..." End Sub Private Sub btnEntrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEntrar.Click Try Me.TbUsuariosTableAdapter.BuscaNomeUsers(Me.DbSysBankDataSet.tbUsuarios, Me.txtNome.Text) If Me.txtNome.Text = "" Or Me.txtSenha.Text = "" Then MsgBox("Campos vazios no formulário!", MsgBoxStyle.Critical, "Erro") Me.txtNome.Focus() Else If Me.txtNome.Text <> Me.NomeTextBox.Text And Me.txtSenha.Text <> Me.SenhaTextBox.Text Then MsgBox("Verifique se digitou corretamente NOME e SENHA!", MsgBoxStyle.Critical, "Erro") Me.ErrorProvider.SetError(Me.txtNome, "Nome Errado") Me.ErrorProvider.SetError(Me.txtSenha, "Senha Errado") Me.txtNome.Clear() Me.txtSenha.Clear() Me.txtNome.Focus() Else If Me.txtNome.Text <> Me.NomeTextBox.Text Then MsgBox("Nome Incorreto!", MsgBoxStyle.Critical, "Erro") Me.ErrorProvider.SetError(Me.txtNome, "Nome Errado") Me.txtNome.Clear() Me.txtNome.Focus() Else If Me.txtSenha.Text <> Me.SenhaTextBox.Text Then MsgBox("Senha Incorreta para o Nome! " & Me.txtNome.Text, MsgBoxStyle.Critical, "Erro") Me.ErrorProvider.SetError(Me.txtSenha, "Senha Errada") Me.txtSenha.Clear() Me.txtSenha.Focus() Else If Me.txtNome.Text = Me.NomeTextBox.Text And Me.txtSenha.Text = Me.SenhaTextBox.Text Then 'SAPI = CreateObject("sapi.spvoice") 'SAPI.speak("Verificando o nome " + Me.txtNome.Text) frmMenu.StatuslblCodigo.Text = Me.CodigoTextBox.Text frmMenu.StatuslblNome.Text = Me.txtNome.Text frmAlteraSenha.txtNome.Text = Me.NomeTextBox.Text If (Me.TipoComboBox.Text = "A") Then frmMenu.StatuslblTipo.Text = "Administrador"
  • 74. 74 Else frmMenu.StatuslblTipo.Text = "Comum" frmMenu.GráficosToolStripMenuItem.Enabled = False frmMenu.RelatóriosDeAtenToolStripMenuItem.Enabled = False frmMenu.ListaDeUsuáriosToolStripMenuItem.Enabled = False frmMenu.UsuáriosToolStripMenuItem.Enabled = False frmMenu.AtendenteToolStripMenuItem.Enabled = False frmMenu.AtendimentosToolStripMenuItem.Enabled = False frmMenu.MesasToolStripMenuItem.Enabled = False frmMenu.btnAtendentes.Enabled = False frmMenu.btnUsuarios.Enabled = False frmMenu.btnMesas.Enabled = False frmMenu.btnAtendimentos.Enabled = False End If MsgBox("Olá " & Me.txtNome.Text & ", seja bem vindo e bom trabalho.", MsgBoxStyle.Information) Me.txtNome.Clear() Me.txtSenha.Clear() Hide() frmMenu.Show() End If End If End If End If End If Catch ex As Exception End Try End Sub Private Sub EncerrarSistema() Try Dim sair As Integer sair = MsgBox("Tem certeza que deseja encerrar a aplicação?", MsgBoxStyle.Question + MsgBoxStyle.YesNo) If sair = vbYes Then If TimeOfDay >= "6:00" And TimeOfDay <= "11:59" Then MessageBox.Show("Tenha um Boa Dia!", "Encerrando...") End Else If TimeOfDay >= "12:00" And TimeOfDay <= "17:59" Then MessageBox.Show("Tenha uma Boa Tarde!", "Encerrando...") End Else If TimeOfDay >= "18:00" And TimeOfDay <= "23:59" Then MessageBox.Show("Tenha uma Boa Noite!", "Encerrando...") End End If End If End If End If Catch ex As Exception End Try End Sub
  • 75. 75 Private Sub btnSair_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSair.Click EncerrarSistema() End Sub End Class frmMenu 'BIBLIOTECA ADICIONADA PARA QUE O VB POSSO FALAR 'Imports ACTIVEVOICEPROJECTLib Public Class frmMenu 'VARIAVEIS CRIADAS 'Dim voz As New DirectSS Dim SAPI Dim data As String Private Sub ÚsuariosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Try frmRegistroUser.ShowDialog() Catch ex As Exception End Try End Sub Private Sub BackupMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BackupMenuItem.Click Try frmBackUp.ShowDialog() Catch ex As Exception End Try End Sub Private Sub GráficosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GráficosToolStripMenuItem.Click Try frmGraficoAtend.ShowDialog() Catch ex As Exception End Try End Sub Private Sub PainelMenu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PainelMenu.Click Try frmPainel.Show() Catch ex As Exception End Try End Sub Private Sub btnAumenta_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAumenta.Click Try timerMensagen.Interval = timerMensagen.Interval - 10 Catch End Try End Sub
  • 76. 76 Private Sub btnDiminui_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDiminui.Click Try timerMensagen.Interval = timerMensagen.Interval + 10 Catch End Try End Sub Private Sub timerMensagen_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timerMensagen.Tick Try Dim H As Integer H = lblMensagem.Location.X If H <= -1395 Then H = 886 End If H = H - 2 lblMensagem.Location = New System.Drawing.Point(H) Catch ex As Exception End Try End Sub Private Sub frmMenu_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing Try Dim sair As Integer sair = MsgBox("Tem certeza que deseja encerrar o programa? Todos os terminais serão fechados!", _ MsgBoxStyle.Question + MsgBoxStyle.YesNo) If sair = vbYes Then End ElseIf sair = vbNo Then e.Cancel = True End If Catch ex As Exception End Try End Sub Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Try Dim sair As Integer sair = MsgBox("Tem certeza que deseja encerrar o programa? Todos os terminais serão fechados!", _ MsgBoxStyle.Question + MsgBoxStyle.YesNo) If sair = vbYes Then End End If Catch ex As Exception End Try End Sub
  • 77. 77 Private Sub frmMenu_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try Me.StatuslblData.Text = Date.Today Me.EncerrarAtendimentoToolStripMenuItem.Enabled = False Catch ex As Exception End Try End Sub Private Sub timerHoras_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timerHoras.Tick Try Me.StatuslblHora.Text = TimeOfDay.ToLongTimeString Catch ex As Exception End Try End Sub Private Sub MensagemMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MensagemMenuItem.Click Try frmMensagens.ShowDialog() Catch ex As Exception End Try End Sub Private Sub guiche1C_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles guiche1C.CheckedChanged Try If Me.guiche1C.Checked = True Then Me.statusMesa.Text = "GUICHÊ 1 OCUPADO" Me.guiche2C.Enabled = False Me.guiche3C.Enabled = False Me.guiche4C.Enabled = False Me.guiche1P.Checked = True Me.guiche2P.Enabled = False Me.guiche3P.Enabled = False Me.guiche4P.Enabled = False End If Catch ex As Exception End Try End Sub Private Sub guiche2C_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles guiche2C.CheckedChanged Try If Me.guiche2C.Checked = True Then Me.statusMesa.Text = "GUICHÊ 2 OCUPADO" Me.guiche1C.Enabled = False Me.guiche3C.Enabled = False Me.guiche4C.Enabled = False Me.guiche2P.Checked = True Me.guiche1P.Enabled = False
  • 78. 78 Me.guiche3P.Enabled = False Me.guiche4P.Enabled = False End If Catch ex As Exception End Try End Sub Private Sub guiche3C_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles guiche3C.CheckedChanged Try If Me.guiche3C.Checked = True Then Me.statusMesa.Text = "GUICHÊ 3 OCUPADO" Me.guiche1C.Enabled = False Me.guiche2C.Enabled = False Me.guiche4C.Enabled = False Me.guiche3P.Checked = True Me.guiche1P.Enabled = False Me.guiche2P.Enabled = False Me.guiche4P.Enabled = False End If Catch ex As Exception End Try End Sub Private Sub guiche4C_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles guiche4C.CheckedChanged Try If Me.guiche4C.Checked = True Then Me.statusMesa.Text = "GUICHÊ 4 OCUPADO" Me.guiche1C.Enabled = False Me.guiche2C.Enabled = False Me.guiche3C.Enabled = False Me.guiche4P.Checked = True Me.guiche1P.Enabled = False Me.guiche2P.Enabled = False Me.guiche3P.Enabled = False End If Catch ex As Exception End Try End Sub Private Sub atualiza() Try Me.TbAtendimentoTableAdapter.Fill(Me.DbSysBankDataSet.tbAtendimento) Catch ex As Exception End Try End Sub Private Sub insertComum() Try