universidade federal do rio de janeiro escola polit …universidade federal do rio de janeiro escola...

60
UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit´ ecnica Departamento de Engenharia Eletrˆonica e de Computa¸ ao Sistema de controle e acesso ao banco de dados SISTEMA PROMO PRISCILLA LUSIE COELHO VELOZO POLI UFRJ Maio de 2010

Upload: others

Post on 17-Mar-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO

Escola Politecnica

Departamento de Engenharia Eletronica e de Computacao

Sistema de controle e acesso ao banco de dados

SISTEMA PROMO

PRISCILLA LUSIE COELHO VELOZO

POLI

UFRJ

Maio de 2010

Page 2: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Sistema de controle e acesso ao banco de dados

SISTEMA PROMO

Priscilla Lusie Coelho Velozo

Projeto de Graduacao apresentado ao Curso de

Engenharia Eletronica e de Computacao da Es-

cola Politecnica, Universidade Federal do Rio de

Janeiro, como parte dos requisitos necessarios a

obtencao do tıtulo de Engenheiro.

Orientador: Sergio Barbosa Villas Boas

Rio de Janeiro

Maio de 2010

Page 3: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Sistema de controle e acesso ao banco de dados

SISTEMA PROMO

Priscilla Lusie Coelho Velozo

PROJETO DE GRADUACAO SUBMETIDO AO CORPO DOCENTE DO CURSO

DE ENGENHARIA ELETRONICA E DE COMPUTACAO DA ESCOLA POLITEC-

NICA DA UNIVERSIDADE FEDERAL DO RIO DE JANEIRO COMO PARTE

DOS REQUISITOS NECESSARIOS PARA A OBTENCAO DO GRAU DE EN-

GENHEIRO ELETRONICO E DE COMPUTACAO.

Examinado por:

Prof. Sergio Barbosa Villas Boas, Ph. D.

Prof. Sergio Palma da Justa Medeiros, D. Sc.

Prof. Jorge Lopes de Souza Leao, Dr. Ing.

RIO DE JANEIRO, RJ - BRASIL

MAIO de 2010

Page 4: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO

Escola Politecnica - Departamento de Eletronica e de Computacao

Centro de Tecnologia bloco H Cidade Universitaria Rio de Janeiro - RJ

Este exemplar e de propriedade da Universidade Federal do Rio de Janeiro, que

podera incluı-lo em sua base de dados, armazenar em computador, microfilmar ou

adotar qualquer forma de arquivamento.

E permitida a mencao, reproducao parcial ou integral e a transmissao entre bibli-

otecas deste trabalho, sem modificacao de seu texto, em qualquer meio que esteja

ou venha a ser fixado, para pesquisa academica, comentarios e citacoes, desde que

sem finalidade comercial e que seja feita a referencia bibliografica completa.

Os conceitos expressos neste trabalho sao de responsabilidade do(s) autor(es) e

do(s) orientador(es).

iv

Page 5: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Velozo, Priscilla Lusie Coelho

Sistema de controle e acesso ao banco de dados - Sistema Promo

/ Priscilla Lusie Coelho Velozo. - Rio de Janeiro: UFRJ/Escola

Politecnica, 2010.

XV, 45p.:il.;29,7cm.

Orientador: Sergio Barbosa Villas Boas

Projeto de Graduacao - UFRJ/ POLI/ Engenharia Eletronica e

de Computacao, 2010.

Referencias Bibliograficas: p. 25.

1. Chamada. 2. Programa. 3. Episodio. 4. Claquete. I. Boas, Ser-

gio. II. Universidade Federal do Rio de Janeiro, UFRJ, Engenharia

Eletronica e de Computacao. III. Tıtulo.

v

Page 6: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

DEDICATORIA

Aos meus queridos pais Rita Lusie e Luiz Velozo,

as minhas irmas Patrıcia e Pamela Lusie,

ao meu marido Bruno Amparo e

ao meu filho Nicolas Amparo

com muito amor e carinho.

vi

Page 7: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

AGRADECIMENTOS

Dedico este trabalho a todos os meus amigos, professores e familiares que me

ajudaram e me motivaram, incentivando meus estudos e me dando forca para driblar

os obstaculos.

Em especial, gostaria de dedicar este trabalho ao colega Andre Cotrim que par-

ticipou da fase inicial deste projeto e me ajudou sempre que necessario.

Agradeco a amiga Isabel Sant’Anna pelas constantes tardes e noites de estudos,

aos amigos Alberto Wagner, Alberto Jorge, Letıcia Lemos, Julia Simoes, Ana Fer-

nanda, Amanda Alves, entre outros, pelas horas de estudo e pelas palavras incenti-

vadoras que me deram como amigos e como colegas de classe.

Tambem nao poderia deixar de agradecer a alguns professores que sempre foram

tao solıcitos e fundamentais para a minha formacao pessoal e profissional: primeira-

mente, ao meu orientador Sergio Barbosa Villas Boas por ter acreditado em mim e

aceitado o desafio de me orientar. Em seguida, aos professores Marcelo Luiz Dru-

mond Lanza, Antonio Claudio, Jomar Gozzi, Sergio Palma, Joarez Monteiro, Carlos

D’Avila, Ricardo Rhomberg, Mauros Queiroz, entre outros.

Muito obrigada aos meus pais por terem investido em mim e dedicado boa parte

de seu tempo e energia. Este projeto e uma tentativa de retribuir tanto esforco e

confianca. Tambem agradeco ao meu marido Bruno Amparo e ao meu filho Nicolas

Amparo que me deram o suporte necessario para enfrentar os dias ruins e dividiram

comigo os dias felizes. E a minha irma Patrıcia Lusie e ao seu marido Herve Costa

que tanto me ajudaram durante a minha gravidez e depois que meu filho nasceu.

Agradeco aos meus colegas de trabalho Cicinio Maia, Roberto Castro, Bianca

Silva, Cesar Ribeiro, Oswaldo Lima e varios outros por me ajudarem de alguma

forma a estudar para uma prova ou a dividir meu tempo de trabalho com alguma

tarefa da faculdade que estivesse pendente.

Por fim, agradeco ao povo brasileiro por financiar meu Curso Superior.

vii

Page 8: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

RESUMO

O departamento Promocoes da Rede Globo de Televisao e o setor responsavel pela

elaboracao das Chamadas dos produtos da empresa. Chamada e toda propaganda de

um produto interno da televisao: programas, filmes, novelas, series, etc. Portanto, e

necessario um sistema que facilite a organizacao e manutencao dos dados referentes

a estas Chamadas: o Sistema PROMO.

O processo de elaboracao de uma Chamada consiste em:

• Redacao - elaboracao de um texto onde o locutor e o narrador e os A/V (audios

e vıdeos) sao as falas dos personagens

• Edicao - ilustracao do texto com takes do programa a ser vendido e alguns

efeitos graficos

• Sonorizacao - mixagem dos diferentes sons e inclusao de melodias

• Videografismo - efeitos graficos mais elaborados

Logo, o Sistema tem o intuito de armazenar em um banco de dados todas as

Chamadas com informacoes uteis e essenciais ao processo de elaboracao da mesma.

Para isto, o programa foi escrito em C++ e utiliza o Banco de Dados PostGreSQL,

a biblioteca SQLAPI para a comunicacao com o banco de dados e a biblioteca

wxWidgets para a criacao da interface.

Palavras-Chave: chamada, programa, episodio, claquete.

viii

Page 9: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

ABSTRACT

The Promotional department of “Rede Globo de Televisao” is the sector respon-

sible for elaborating Calls of the company’s products. A Call is any kind of adver-

tisement of an internal product: shows, movies, soap operas, series, etc.

Therefore, a system that facilitates the organization and maintenance of the data

referent to the Calls is needed: The PROMO System.

The elaboration’s process of a Call consists of:

• Composing - the process of elaborating a text in which the speaker is the

narrator and the A/Vs (audios and videos) are the character’s speech.

• Edition - text illustration with takes of the program to be sold and some small

graphics effects

• Sound Process - mixing diferent sounds and addition of melodies to the Call

• Videographism - more elaborated graphics effects

So, the system has the aim of storing in a database all the Calls with usefull

and essential information for the process of its elaboration. For that, the program

was written in C++ and uses the Database PostGresSQL, the library SQLAPI to

communicate with the database and the library wxWidgets to create the interface.

Key-words: call, program, episode, clapboard

ix

Page 10: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

SIGLAS

KLOC - Kilo Lines Of Code

RMMM - Risk Mitigation, Monitoring and Management

SHA - Secure Hash Algorithm

TVG - Rede Globo de Televisao

UFRJ - Universidade Federal do Rio de Janeiro

x

Page 11: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Sumario

1 Introducao 1

1.1 Tema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Delimitacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.3 Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.4 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.5 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.6 Descricao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Especificacao de Requisitos de Software 5

2.1 Descricao Geral: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 Perspectiva do Produto: . . . . . . . . . . . . . . . . . . . . . 5

2.1.2 Funcoes do Produto: . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.3 Caracterısticas do Usuario: . . . . . . . . . . . . . . . . . . . . 6

2.1.4 Restricoes: . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.1.5 Postergar Requisitos: . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 Requisitos Especıficos: . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2.1 Interfaces Externas: . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2.1.1 Interfaces dos Usuarios: . . . . . . . . . . . . . . . . 7

2.2.1.2 Interfaces de Comunicacao: . . . . . . . . . . . . . . 8

2.2.2 Requisitos Funcionais . . . . . . . . . . . . . . . . . . . . . . . 8

2.2.2.1 Casos de Uso: . . . . . . . . . . . . . . . . . . . . . . 8

2.2.2.2 Diagrama de casos de Uso: . . . . . . . . . . . . . . 11

2.2.2.3 Diagrama de Classes: . . . . . . . . . . . . . . . . . . 12

2.2.3 Requisitos de Desempenho: . . . . . . . . . . . . . . . . . . . 12

2.2.4 Atributos: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

xi

Page 12: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

2.2.5 Seguranca: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3 Projeto 14

3.1 Decomposicao: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1.1 Decomposicao em Modulos: . . . . . . . . . . . . . . . . . . . 14

3.1.1.1 Sistema: . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1.1.2 Usuario: . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1.1.3 Chamada: . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1.1.4 Programa: . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.1.5 Status: . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.2 Decomposicao em Processos Concorrentes: . . . . . . . . . . . 15

3.1.3 Decomposicao em Dados: . . . . . . . . . . . . . . . . . . . . . 15

3.1.3.1 Usuario: . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.3.2 Programa: . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.3.3 Episodio: . . . . . . . . . . . . . . . . . . . . . . . . 16

3.1.3.4 Chamada Episodio: . . . . . . . . . . . . . . . . . . . 16

3.1.3.5 Chamada: . . . . . . . . . . . . . . . . . . . . . . . . 16

3.1.3.6 Status: . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.2 Descricao das Dependencias: . . . . . . . . . . . . . . . . . . . . . . . 18

3.2.1 Dependencias entre Modulos: . . . . . . . . . . . . . . . . . . 18

3.2.2 Dependencias entre Dados: . . . . . . . . . . . . . . . . . . . . 18

3.3 Descricao das Interfaces: . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.3.1 Interfaces dos Modulos: . . . . . . . . . . . . . . . . . . . . . . 18

3.3.1.1 Interface Grafica: . . . . . . . . . . . . . . . . . . . . 18

3.3.1.2 Banco de Dados: . . . . . . . . . . . . . . . . . . . . 19

4 Programa 20

4.1 Promo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.2 Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.3 UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.4 Print . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

5 Conclusao 24

xii

Page 13: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Bibliografia 25

A MANUAL DO USUARIO 26

A.1 Requisitos: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

A.2 Menu: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

A.3 Login: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

A.4 Programa: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

A.4.1 Adicionar Programa: . . . . . . . . . . . . . . . . . . . . . . . 31

A.4.2 Adicionar Episodio: . . . . . . . . . . . . . . . . . . . . . . . . 32

A.4.3 Listar Programas: . . . . . . . . . . . . . . . . . . . . . . . . . 33

A.5 Chamada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

A.5.1 Adicionar Chamada: . . . . . . . . . . . . . . . . . . . . . . . 34

A.5.2 Listar Chamadas: . . . . . . . . . . . . . . . . . . . . . . . . . 35

A.5.3 Buscar Chamadas: . . . . . . . . . . . . . . . . . . . . . . . . 36

A.5.4 Editar Chamadas: . . . . . . . . . . . . . . . . . . . . . . . . . 37

A.6 Administracao: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

A.6.1 Adicionar Usuario: . . . . . . . . . . . . . . . . . . . . . . . . 38

A.6.2 Excluir Usuario: . . . . . . . . . . . . . . . . . . . . . . . . . . 38

A.7 Usuario: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

A.7.1 Alterar Senha: . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

B Documentacao do Sistema Promo 41

xiii

Page 14: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Lista de Figuras

1.1 Processo de criacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2.1 Diagrama de Casos de Uso . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2 Diagrama de Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.1 Modelo Conceitual de Dados . . . . . . . . . . . . . . . . . . . . . . . 18

A.1 Tela Inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

A.2 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

A.3 Adicionar Programa . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

A.4 Adicionar Episodio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

A.5 Visualizar Programa . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

A.6 Adicionar Chamada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

A.7 Selecionar Programas / Episodios . . . . . . . . . . . . . . . . . . . . 34

A.8 Listar Chamadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

A.9 Buscar Chamadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

A.10 Alterar Chamadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

A.11 Adicionar Usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

A.12 Excluir Usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

A.13 Alterar Senha Usuario . . . . . . . . . . . . . . . . . . . . . . . . . . 40

B.1 Classe Call - documentacao . . . . . . . . . . . . . . . . . . . . . . . 41

B.2 Classe Call - documentacao . . . . . . . . . . . . . . . . . . . . . . . 42

B.3 Classe Call - documentacao . . . . . . . . . . . . . . . . . . . . . . . 43

B.4 Classe Call - documentacao . . . . . . . . . . . . . . . . . . . . . . . 44

B.5 Classe Call - documentacao . . . . . . . . . . . . . . . . . . . . . . . 45

xiv

Page 15: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Lista de Tabelas

2.1 Casos de Uso - parte 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2 Casos de Uso - parte 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3 Casos de Uso - parte 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 10

xv

Page 16: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Capıtulo 1

Introducao

Este projeto e parte da sua documentacao iniciou-se durante o curso de Engenharia

de Software ministrado pelo Professor Antonio Claudio e contou com a participacao

dos alunos Andre Cotrim e Anderson Frazao.

O sistema a ser desenvolvido e um sistema de gerenciamento do banco de dados,

que sera usado por diversas pessoas, com diferentes graus de instrucao. Logo, deve

ser de facil utilizacao com telas simples e aparencia amigavel. Tambem deve ter

seus dados armazenados de forma segura, pois trata de informacoes confidenciais.

Portanto, cada usuario tera um login e senha para acesso ao Sistema, e a senha

devera ser encriptada. Como a princıpio, nao havera acesso remoto (via web), demais

ferramentas de seguranca nao serao utilizadas.

1.1 Tema

O tema do trabalho e um sistema computacional de gerenciamento de dados com

controle de acesso a partir do cargo do usuario (funcionario) na empresa. Escrito

em C++ e banco de dados PostGreSQL.

1.2 Delimitacao

O banco de dados deve ser instalado no mesmo computador que o programa, uma

vez que o banco de dados nao estara nem na rede Web nem na intranet por questoes

1

Page 17: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

de seguranca do sistema. Caso o programa venha a ser utilizado por mais de uma

maquina, deve-se montar uma rede interna ao departamento.

1.3 Justificativa

O Sistema atual de gerenciamento das Chamadas tem como usuarios apenas o

gerente e o assistente. Os demais profissionais dependem das informacoes passadas

por este ultimo. Sendo assim, se o assistente esta ocupado quando um profissional

termina sua tarefa, se esquecendo de lancar esta informacao no sistema ou de passar

para o profissional que ira continuar o outro turno, a tarefa pode ser repassada

novamente para outro profissional como se nao tivesse sido realizada.

O novo Sistema Promo continua sendo de responsabilidade do assistente, mas

tambem permite aos demais profissionais a alteracao de determinados conteudos

(de acordo com a funcao do profissional) e a visualizacao de todas as informacoes

pertinentes ao produto.

1.4 Objetivos

O projeto tem como objetivo o gerenciamento de todas as chamadas de programas

da empresa, contendo um banco de dados de todas as chamadas feitas e das que

ainda serao realizadas com informacoes uteis e essenciais ao processo de elaboracao,

como na figura 1.1 abaixo:

Figura 1.1: Processo de Criacao

2

Page 18: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A cada estagio em que a chamada se encontra, o profissional da area deve indicar

em que fase ela esta (em andamento, finalizada ou aprovada). As fases indicam se

a etapa em questao esta em processo de producao (em andamento), se foi finali-

zada (finalizada) em ou se todas as etapas foram finalizadas e o gerente aprovou

(aprovada), liberando-a para exibicao.

O gerenciamento consiste na informacao do estagio em que cada chamada a ser

feita se encontra: em redacao, edicao, sonorizacao, etc., afim de auxiliar a comuni-

cacao entre os diversos profissionais envolvidos. E, quando a chamada e aprovada,

o assistente de edicao deve envia-la para exibicao.

1.5 Metodologia

Como o usuario alvo do sistema possui em geral o ensino medio completo, a

interface deve ser tao amigavel e intuitiva quanto possıvel. O Sistema Operacional

utilizado sera o Windows (2000, XP ou Vista) por ser o programa que a empresa (Tv

Globo) ja utiliza normalmente em seus computadores, porem a tecnologia utilizada

no programa permite facilmente o uso em Linux ou Macintosh.

O programa sera escrito em C++ [1] [2] por ser uma linguagem consolidada.

Os dados serao armazenados em Banco de Dados - PostgreSQL [3] (software livre

consolidado) e seu acesso se dara atraves da biblioteca SQLAPI [4] devido a sua

estabilidade e confiabilidade. A interface grafica do programa sera feita usando a bi-

blioteca wxWidgets [5], escolhida por ser gratuita, oferecer facilidades na construcao

de interfaces na plataforma de interesse, e pela experiencia em sua utilizacao.

A seguranca e um fator importante ja que trata de informacoes confidenciais e

cada funcionario tera acesso ao sistema de acordo com a sua funcao na empresa,

logo cada usuario devera ter um login e senha, sendo a senha encriptada.

O modelo de projeto utilizado e o em cascata [6] , modelo de desenvolvimento

de software sequencial no qual o andamento do processo flui constantemente para

frente. Para uma estimativa do tamanho do programa e, consequentemente do prazo

3

Page 19: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

necessario para a sua realizacao, sera utilizada a tecnica de medicao KLOC [7]. Para

a analise de riscos sera utilizado o metodo RMMM [8].

1.6 Descricao

No capıtulo 2 sao descritas as Especificacoes de Requisitos de Software: uma

analise inicial do software, contendo sua descricao geral, com a lista das suas princi-

pais funcoes, restricoes e lista de requisitos. Neste capıtulo tambem tem os diagramas

de casos de uso e diagramas de classes do Sistema.

No capıtulo 3, ha uma descricao mais detalhada do projeto, dividindo-o em mo-

dulos (ou melhor, classes) e em dados, e descrevendo suas dependencias e interfaces.

No capıtulo 4, ha uma documentacao resumida do programa mostrando a sua

organizacao, namespaces e principais classes.

4

Page 20: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Capıtulo 2

Especificacao de Requisitos de

Software

2.1 Descricao Geral:

2.1.1 Perspectiva do Produto:

O sistema e independente de outros aplicativos, dependendo exclusiva e totalmente

do servidor de banco de dados.

2.1.2 Funcoes do Produto:

O sistema deve permitir:

• Cadastro de programas e seus respectivos episodios

• Visualizacao dos programas cadastrados

• Cadastro de chamadas

• Alteracao do cadastro de uma chamada

• Listagem das chamadas

• Busca de chamadas por claquete

• Busca de chamadas por data de pauta

5

Page 21: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

• Consulta e alteracao do status de cada fase de preparacao de cada chamada

(redacao, edicao, sonorizacao, videografismo)

• Consulta e alteracao do status de aprovacao final da chamada

• Controle de acesso a cada uma das funcoes acima por grupos funcionais de

usuarios

2.1.3 Caracterısticas do Usuario:

O usuario alvo do sistema possui em geral o ensino medio completo, e pode nao

ter muita familiaridade com sistemas de informacao; isto implica que a interface do

sistema deve ser tao amigavel e intuitiva quanto possıvel.

2.1.4 Restricoes:

O sistema pode ser executado com o Sistema Operacional Windows nas versoes:

Windows 2000, XP ou Vista. Porem a tecnologia utilizada no programa permite

facilmente o uso em Linux ou Macintosh.

A seguranca e um fator importante ja que trata informacoes confidenciais. Sendo

assim cada funcionario tem acesso ao sistema de acordo com a sua funcao na em-

presa, logo cada usuario possui um login e senha, e a senha e encriptada para ser

armazenada no banco de dados. Como o sistema nao tera uma versao web, pelo

menos a princıpio, demais ferramentas de seguranca nao serao necessarias.

2.1.5 Postergar Requisitos:

Requisitos que poderao ser incorporados em versoes futuras sao:

• Criacao da versao web do programa - uma forma de usa-lo remotamente;

• Expansao do sistema para multiusuarios;

• Geracao automatica de relatorios semanais enviados por e-mail aos gerentes;

6

Page 22: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

2.2 Requisitos Especıficos:

2.2.1 Interfaces Externas:

2.2.1.1 Interfaces dos Usuarios:

A interface do usuario e simples e amigavel. Toda a interface foi feita em wx-

Widgets com o auxılio da ferramenta wxFormBuilder. Abaixo estao listadas as telas

disponıveis:

i - Login - A pagina inicial faz a autenticacao no sistema. Para isto, basta que

o usuario digite seu login e senha.

ii - Inicial - Apos o login, o menu e habilitado, permitindo que o usuario acesse

as funcoes do Sistema:

iii - Adicionar Programa - Adiciona um programa ao banco de dados.

iv - Adicionar Episodio - Adiciona um episodio ao banco de dados relacionando-

o a um programa.

v - Listar Programas - Lista os programas e seus episodios cadastrados no banco

de dados.

vi - Adicionar Chamada - Adiciona uma chamada ao banco de dados.

vii - Listar Chamadas - Lista as chamadas cadastradas referentes a um episodio

(programa).

viii - Buscar Chamadas - Realiza as buscas das chamadas pela Claquete.

ix - Buscar Chamadas (Dt Pauta) - Realiza as buscas das chamadas pela Data

de Pauta.

x - Adicionar Usuario - Adiciona um usuario ao banco de dados.

xi - Remover Usuario - Remove um usuario do banco de dados.

xii - Alterar Senha - Altera a senha do usuario logado ao sistema.

Para maiores detalhes, vide Manual do Usuario.

7

Page 23: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

2.2.1.2 Interfaces de Comunicacao:

A interface de comunicacao de dados do software sera com o servidor de banco de

dados PostgreSQL.

2.2.2 Requisitos Funcionais

2.2.2.1 Casos de Uso:

Caso de Uso: Login

Atores: Todos os usuarios cadastrados

Descricao: Permitir acesso as funcoes do sistema apenas aos usuarios cadastrados.

As funcoes disponıveis dependerao da funcao do usuario que estiver fazendo login.

Caso de Uso: Cadastro de Programa

Atores: Gerente, Assistente de redacao, Redator

Descricao: Incluir um novo Programa ao banco de dados do sistema

Caso de Uso: Cadastro de Episodio

Atores: Gerente, Assistente de redacao, Redator

Descricao: Incluir um ou mais episodios a um Programa previamente cadastrado ao sistema.

Caso de Uso: Listagem de Programas

Atores: Todos os usuarios cadastrados

Descricao: Listar todos os programas e seus respectivos episodios cadastrados ao sistema.

Caso de Uso: Cadastro de Chamada

Atores: Gerente, Assistente de redacao, Redator

Descricao: Incluir uma nova Chamada referente a um ou mais programas cadastrados.

Caso de Uso: Listagem de Chamadas

Atores: Todos os usuarios cadastrados

Descricao: Listar todas as chamadas cadastradas no sistema.

Caso de Uso: Visualizar Chamada

Atores: Todos os usuarios cadastrados

Descricao: Visualiza os campos de uma determinada Chamada.

Tabela 2.1: Casos de Uso - parte 1

8

Page 24: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Caso de Uso: Busca de Chamadas

Atores: Todos os usuarios cadastrados

Descricao: Realizar a busca de uma chamada a partir de toda ou parte de sua claquete

Caso de Uso: Busca de Chamadas (Dt Pauta)

Atores: Todos os usuarios cadastrados

Descricao: Realizar a busca de uma chamada a partir da data de pauta

Caso de Uso: Alteracao de Chamada

Atores: Todos os usuarios cadastrados

Descricao: Alterar os campos de uma chamada ja existente (exceto Claquete)

Caso de Uso: Alteracao de Chamada - Claquete

Atores: Gerente, Assistente de redacao, Redator

Descricao: Alterar a Claquete de uma chamada ja existente

Caso de Uso: Alteracao de Status Redacao de uma Chamada

Atores: Redator, Assistente de Redacao

Descricao: A partir da inclusao de uma data Inicial ou Final, indica que o status

de redacao e ’em andamento’ ou ’concluıdo’ respectivamente.

Caso de Uso: Alteracao de Status Edicao de uma Chamada

Atores: Editor, Assistente

Descricao: A partir da inclusao de uma data Inicial ou Final, indica que o status

de edicao e ’em andamento’ ou ’concluıdo’ respectivamente.

Caso de Uso: Alteracao de Status Sonorizacao de uma Chamada

Atores: Sonoplasta, Assistente

Descricao: A partir da inclusao de uma data Inicial ou Final, indica que o status

de sonorizacao e ’em andamento’ ou ’concluıdo’ respectivamente.

Tabela 2.2: Casos de Uso - parte 2

9

Page 25: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Caso de Uso: Alteracao de Status Videografismo de uma Chamada

Atores: Videografista, Assistente

Descricao: A partir da inclusao de uma data Inicial ou Final, indica que o status

de videografismo e ’em andamento’ ou ’concluıdo’ respectivamente.

Caso de Uso: Aprovacao final da Chamada

Atores: Gerente

Descricao: Permitir a alteracao do status final de uma chamada partir da inclusao de uma

data de aprovacao. O status so pode ser concluıdo apos os status de

edicao, sonorizacao e videografismo estarem concluıdos

Caso de Uso: Adicionar Usuario

Atores: Administrador, Gerente

Descricao: Permitir a inclusao de um novo usuario ao sistema.

Caso de Uso: Remover Usuario

Atores: Administrador, Gerente

Descricao: Permitir a exclusao de um usuario do sistema.

Caso de Uso: Alterar Senha

Atores: Todos os usuarios cadastrados

Descricao: Permitir a alteracao de senha de um usuario cadastrado.

Caso de Uso: Logout

Atores: Todos os usuarios cadastrados

Descricao: Permitir a saıda segura do sistema, retornando a tela de login

Caso de Uso: Sair

Atores: Todos os usuarios cadastrados

Descricao: Permitir a saıda segura do sistema (o programa sera fechado e suas

funcoes bloqueadas).

Tabela 2.3: Casos de Uso - parte 3

10

Page 26: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

2.2.2.2 Diagrama de casos de Uso:

Figura 2.1: Diagrama de Casos de Uso

11

Page 27: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

2.2.2.3 Diagrama de Classes:

Figura 2.2: Diagrama de Classes

2.2.3 Requisitos de Desempenho:

O tempo de resposta, em geral, sera pequeno. Exceto, talvez, para as oper-

acoes de listagem ou busca de chamadas ou programas, pois dependera do volume

de dados armazenado no banco de dados.

Inicialmente, o produto podera ser usado por apenas um 01(um) usuario.

2.2.4 Atributos:

• Amigabilidade: o Sistema PROMO tera uma interface de facil utilizacao. Ao

seguir os poucos comandos apresentados na tela, o usuario conseguira salvar e

12

Page 28: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

carregar as informacoes.

• Manutenıvel: por ter suas funcoes bem definidas, o Sistema garante uma maior

facilidade de correcao a erros tornando o sistema adaptavel a quaisquer tipos

de mudancas.

• Seguranca: cada funcionario tera acesso ao sistema de acordo com a sua funcao

na empresa, logo cada usuario devera ter um login e senha, e a senha sera

encriptada.

2.2.5 Seguranca:

Para a codificacao da senha, foi usado o Hash SHA-1 com saıda de 160 bits em

representacao hexadecimal. Como e sabido, a partir do resultado de um codigo hash,

nao se e possıvel descobrir a senha, garantindo a seguranca necessaria ao sistema.

O SALT, um conjunto de caracteres adicionados a senha, e um inteiro randomico

de 16 bits, representados em hexadecimal tambem.

13

Page 29: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Capıtulo 3

Projeto

3.1 Decomposicao:

3.1.1 Decomposicao em Modulos:

O sistema foi decomposto em modulos, sendo cada modulo equivalente a uma

classe. Vide o Diagrama de Classes 2.2.

3.1.1.1 Sistema:

A classe Sistema e a principal do projeto: relaciona as chamadas, os programas e

o usuario logado ao sistema.

3.1.1.2 Usuario:

A classe Usuario representa um usuario do sistema com seu login e senha, e indica

sua respectiva permissao ao sistema, atraves do seu cargo na empresa.

3.1.1.3 Chamada:

A classe Chamada consiste no objetivo final do projeto. Ela possui as informacoes

referentes a uma chamada: o(s) programa(s) ao qual esta associada, o tıtulo da

chamada, seu texto, ilustracao, etc.

14

Page 30: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

3.1.1.4 Programa:

A classe Programa contem as informacoes do programa ao qual uma chamada

pertence tais como o tıtulo, subtıtulo e a data de exibicao. As Chamadas sao feitas

para divulgarem os Episodios a serem exibidos de um Programa.

3.1.1.5 Status:

A classe Status possui a data de inıcio e fim de cada etapa do processo de elabo-

racao de uma chamada, representando o andamento (status) da mesma.

3.1.2 Decomposicao em Processos Concorrentes:

Nao ha processo concorrente no modelo de aplicacao do projeto em questao: o

programa e “stand-alone”.

3.1.3 Decomposicao em Dados:

3.1.3.1 Usuario:

Entidade que contem os detalhes dos usuarios.

Atributos:

• Codigo Usuario

• Login

• Senha

• Funcao (cargo)

3.1.3.2 Programa:

Entidade que contem os programas para o qual uma ou mais chamadas serao

elaboradas.

Atributos:

• Codigo Programa

• Nome

15

Page 31: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

3.1.3.3 Episodio:

Contem os episodios que serao exibidos de um programa.

Atributos:

• Codigo Episodio

• Codigo Programa

• Subtıtulo do episodio

• Data de Exibicao

3.1.3.4 Chamada Episodio:

Relaciona as entidades chamada e Episodio, uma vez que uma chamada pode

estar associada a mais de um Episodio, ou ate mesmo a mais de um Programa, e

um Episodio pode ter mais de uma chamada.

Atributos:

• Codigo Chamada Episodio

• Codigo Episodio

• Codigo Chamada

3.1.3.5 Chamada:

Entidade que possui todas as chamadas dos programas do sistema.

Atributos:

• Codigo Chamada

• Codigo Status

• Claquete

• Data de Pauta

• Texto

• Ilustracao

• Data Aprovada

16

Page 32: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

3.1.3.6 Status:

Indica se cada etapa do processo de elaboracao de uma chamada foi ou nao con-

cluıdo.

Atributos:

• Codigo Status

• Data de Inıcio da Redacao

• Data de Fim da Redacao

• Redator

• Data de Inıcio da Sonorizacao

• Data de Fim da Sonorizacao

• Sonoplasta

• Data de Inıcio da Edicao

• Data de Fim da Edicao

• Editor

• Data de Inıcio do Grafismo

• Data de Fim do Grafismo

• VideoGrafista

17

Page 33: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

3.2 Descricao das Dependencias:

3.2.1 Dependencias entre Modulos:

As dependencias entre modulos sao as relacoes entre as classes. Vide Diagrama

de Classes 2.2.

3.2.2 Dependencias entre Dados:

Figura 3.1: Modelo Conceitual de Dados

3.3 Descricao das Interfaces:

3.3.1 Interfaces dos Modulos:

3.3.1.1 Interface Grafica:

Toda a comunicacao com o usuario sera atraves de uma interface grafica. Atraves

dela, o usuario podera utilizar tudo o que o sistema PROMO disponibiliza. As telas

18

Page 34: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

de interface do usuario encontram-se no Manual do Usuario A.

As classes utilizadas para a criacao das telas em wxWidgets foram geradas au-

tomaticamente com o auxılio da ferramenta wxFormBuilder e estao documentadas

junto com a documentacao do programa. Para maiores detalhes sobre as classes da

biblioteca wxWidgets utilizadas, vide a documentacao da mesma [9].

3.3.1.2 Banco de Dados:

No banco de dados, serao armazenados todos os dados do Software sendo atual-

izado a cada modificacao de um usuario ou um administrador.

Para nos comunicarmos ao banco de dados, usaremos as classes da biblioteca

SQLAPI:

• SAConnection - conexao com o banco de dados

• SACommand - executa a query no banco de dados

• SAException - trata as excecoes

Para maiores detalhes, vide a documentacao da biblioteca [10].

19

Page 35: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Capıtulo 4

Programa

A documentacao do programa foi gerada pelo Doxygen [11] nas extensoes .html,

.chm e .pdf. Vide a copia de parte da documentacao B de uma classe para ilustracao

do seu formato. A documentacao na ıntegra se encontra no CD anexado ao projeto

junto com o Programa.

O programa se divide em quatro namespaces principais: Promo, Core, Print, UI.

• O namespace Promo e o principal e contem o aplicativo em si.

• O namespace Core contem as classes referentes as entidades do Sistema.

• O namespace UI contem as classes referentes a interface grafica (paineis e

dialogos). As telas foram criadas atraves da ferramenta wxFormBuilder, que

gera as classes bases. Estas localizam-se no arquivo ui.cpp e ui.h. As demais

classes sao derivacoes das classes bases implementando o correto funciona-

mento da tela e sobrescrevendo alguns metodos quando necessarios.

Por exemplo: a classe addProgramPanel e a classe base para o caso de uso

Cadastrar Programa, composta apenas pela criacao do painel e de seus com-

ponentes; a classe PromoAddProgramPanel e a classe “filha” e nela contem os

membros necessarios para o funcionamento da tela.

• O namespace Print contem as classes necessarias a impressao do arquivo.

Para maiores detalhes sobre as classes utilizadas e seus membros vide a documen-

tacao do programa. Vide abaixo as principais classes de cada namespace:

20

Page 36: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

4.1 Promo

• PromoApp - Deriva a Classe wxApp e e o aplicativo em si.

4.2 Core

Contem as Classes abaixo:

• Call - entidade Chamada

• CallEpisode - entidade Chamada Episodio

• CallStatus - entidade Status

• Episode - entidade Episodio

• Program - entidade Programa

• ProgramEpisode - classe auxiliar para ajudar a construcao de uma arvore

(wxTreeCtrl) com os Programas e seus Episodios.

• System - contem as funcoes de conexao dos Sistema com o banco de dados e

com o computador onde o programa roda

• User - entidade Usuario

4.3 UI

Classes principais:

• PromoAddCallPanel - implementa o caso de uso 2.1 Cadastro de Chamada.

• PromoAddEpisodePanel - implementa o caso de uso 2.1 Cadastro de Episodio.

• PromoAddProgramPanel - implementa o caso de uso 2.1 Cadastro de Pro-

grama.

• PromoAddUserPanel - implementa o caso de uso 2.3 Adicionar Usuario.

• PromoChangePasswordPanel - implementa o caso de uso 2.3 Alterar Senha.

21

Page 37: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

• PromoEditCallPanel - implementa o caso de uso 2.2 Alteracao de Chamada.

• PromoFindCallsDtPanel - implementa o caso de uso 2.2 Busca de Chamadas.

• PromoFindCallsPanel - implementa o caso de uso 2.2 Busca de Chamadas (Dt

Pauta).

• PromoIntegerClientData - classe auxiliar para adicionar dado a um item de

uma lista (wxListBox).

• PromoListCallsPanel - implementa o caso de uso 2.1 Listagem de Chamadas.

• PromoListEpisodesDialog - implementa o caso de uso 2.1 Listagem de Progra-

mas exibindo os episodios referentes a um determinado programa.

• PromoListProgramsPanel - implementa o caso de uso 2.1 Listagem de Progra-

mas exibindo os programas cadastrados.

• PromoLoginPanel - implementa o caso de uso 2.1 Login.

• PromoMainWindow - a classe mae (MainWindow) deriva a classe wxFrame,

onde serao exibidas as telas.

• PromoNofunctionPanel

• PromoPanel - classe para criacao do painel em si. Deriva a classe wxPanel.

• PromoRemoveUserPanel - implementa o caso de uso 2.3 Remover Usuario.

• PromoSelectProgramDialog - caixa de dialogo auxiliar para a selecao de um

episodio.

• PromoTreeItemData - classe auxiliar para a inclusao de dado a um item de

uma arvore (wxTreeCtrl).

• PromoViewCallPanel - implementa o caso de uso 2.1 Visualizar Chamada.

22

Page 38: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

4.4 Print

• DC - Deriva a classe wxDC e contem informacoes para desenhar uma Chamada

na tela (em Visualizar Impressao) ou imprimi-la.

• PromoPrint - Deriva a classe wxPrintout necessaria para a impressao de um

arquivo.

23

Page 39: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Capıtulo 5

Conclusao

O projeto atendeu bem ao objetivo proposto: facilitar o processo de producao

de uma Chamada de forma clara e precisa. A linguagem e as bibliotecas utilizadas

foram plenamente satisfatorias e robustas.

Para versoes posteriores, ha indicacoes do que pode ser feito em 2.1.5.

O programa sofreu varios testes e utilizou tecnicas para agilizar o acesso a um dado

no banco de dados e sua manipulacao. Todavia, seria bem interessante retesta-lo

apos um certo tempo de uso (talvez apos o primeiro ano de utilizacao) para verificar

o tempo de acesso ao banco de dados e, consequentemente, o tempo de resposta do

programa, uma vez que o banco ja estaria carregado com uma consideravel carga de

dados 1.

Enfim, o projeto contribuiu muito para a minha formacao pessoal e profissional e

foi muito interessante ve-lo terminado e sendo utilizado para um fim concreto.

11 chamada de 2/2 h; 3 ilhas em funcionamento 24h/dia, logo 12960 Chamadas/ano aproxi-

madamente

24

Page 40: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Referencias Bibliograficas

[1] C++. http://www.cplusplus.com, 2009. (acessado em 05/05/2009).

[2] C++. http://en.wikipedia.org/wiki/C++, 2009. (acessado em 05/05/2009).

[3] PostGreSQL. http://www.postgresql.org, 2009. (acessado em 05/05/2009).

[4] SQLAPI. http://www.sqlapi.com, 2009. (acessado em 05/05/2009).

[5] JULIAN SMART, K. H., CSOMOR, S., Cross-Platform GUI Programming with

wxWidgets. Prentice Hall.

[6] Modelo de projeto - Cascata. http://www.del.ufrj.br/ ac/eel873.htm, 2009.

(acessado em 05/05/2009).

[7] Tecnica para medicao - SLOC. http://www.del.ufrj.br/ ac/eel873.htm, 2009.

(acessado em 05/05/2009).

[8] Metodo para gerenciamento, suavizacao e monitoramento de riscos - RMMM.

http://www.del.ufrj.br/ ac/eel873.htm, 2009. (acessado em 05/05/2009).

[9] Documentacao da biblioteca wxWidgets. http://www.wxwidgets.org/docs/tutorials.htm,

2009. (acessado em 05/08/2009).

[10] Documentacao da biblioteca SQLAPI. http://www.sqlapi.com/OnLineDoc/index.html,

2009. (acessado em 05/10/2009).

[11] Doxygen. http://www.stack.nl/ dimitri/doxygen/index.html, 2010. (acessado

em 20/05/2010).

25

Page 41: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Apendice A

MANUAL DO USUARIO

Introducao

Este manual e elaborado com o intuito de orientar o usuario na utilizacao do

sistema. Assim sera possıvel conhecer todas as funcoes que o sistema PROMO

oferece e como utiliza-las.

O sistema visa o gerenciamento do banco de dados das chamadas produzidas pelo

setor Promocoes da Rede Globo de Televisao. Assim os funcionarios poderao cadas-

trar uma nova chamada, consultar chamadas ja cadastradas e alterar ou acrescentar

novas informacoes sobre a chamada em andamento a medida em que esta vai sendo

produzida.

26

Page 42: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Informacoes Tecnicas

A.1 Requisitos:

Sistema Operacional

O Sistema PROMO pode ser utilizado nos seguintes sistemas operacionais:

• Windows 2000;

• Windows XP;

• Windows Vista;

Banco de Dados

Deve possuir o banco de dados PostGreSQL instalado na mesma maquina onde

esta instalado o programa. Checar configuracao do banco com o ADMINIS-

TRADOR!

27

Page 43: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Modo de Funcionamento

Primeiramente o usuario acessara o sistema clicando no ıcone promo.exe.

Assim sera aberta a tela de login inicial. Dependendo do tipo de usuario, ele podera

usar as funcionalidades que serao explicadas a seguir:

A.2 Menu:

Figura A.1: Tela Inicial

No menu sao exibidas as funcionalidades do sistema. De acordo com a oper-

acao desejada, basta clicar no item com o botao esquerdo do mouse ou utilizar as

teclas de atalho no teclado (indicadas ao lado do item no menu). Vide abaixo as

funcoes de cada item:

28

Page 44: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

1. Arquivo

• Logout - Fecha a conexao do usuario logado, permitindo que outro usuario

faca login no sistema.

• Imprimir - Imprime o documento visualizado. Esta opcao esta apenas

disponıvel em Visualizar Chamada e Busca de Chamadas (Dt Pauta).

• Sair - Fecha a conexao do usuario logado e o sistema.

2. Programa

• Adicionar Programa - Adiciona um programa ao banco de dados.

• Adicionar Episodio - Adiciona um episodio ao banco de dados o relacio-

nando a um programa.

• Listar Programas - Lista os programas e seus episodios cadastrados no

banco de dados.

3. Chamadas

• Adicionar Chamada - Adiciona uma chamada ao banco de dados.

• Listar Chamadas - Lista as chamadas cadastradas referentes a um episo-

dio (programa).

• Buscar Chamadas - Realiza as buscas das chamadas pela Claquete.

• Buscar Chamadas (Dt Pauta) - Realiza as buscas das chamadas pela

Data de Pauta.

4. Administracao - apenas o administrador pode realizar estas operacoes.

• Adicionar Usuario - Adiciona um usuario ao banco de dados.

• Remover Usuario - Remove um usuario do banco de dados.

5. Usuario

• Alterar Senha - Altera a senha do usuario logado ao sistema.

29

Page 45: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Telas:

A.3 Login:

Figura A.2: Login

A pagina inicial faz a autenticacao no sistema. Para isto, basta que o usuario

digite seu login e senha nos campos destinados a login e senha respectivamente.

O usuario inicial e o admin e a senha e admin. Os demais usuarios devem ter seus

logins e senhas previamente cadastrados no banco de dados pelo ADMINISTRADOR

do sistema.

Modo de operacao:

Digite o login (obrigatorio);

Digite a senha (obrigatorio);

Clique em Entrar ;

30

Page 46: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A.4 Programa:

A.4.1 Adicionar Programa:

Figura A.3: Adicionar Programa

Esta funcao e acessada selecionando ”Adicionar Programa”no menu acima.

Permite o cadastro de um programa com o seguinte campo:

• Tıtulo (obrigatorio) - Uma frase, o nome do Programa;

Modo de operacao:

Digitar o tıtulo;

Clicar em Salvar.

31

Page 47: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A.4.2 Adicionar Episodio:

Figura A.4: Adicionar Episodio

Esta funcao e acessada selecionando ”Adicionar Episodio”no menu acima.

Para que esta funcao funcione corretamente, e necessario que o Programa ao qual o

episodio sera associado tenha sido previamente cadastrado.

Permite o cadastro de um episodio com os seguintes campos:

• Programa (obrigatorio) - Lista com todos os Programas previamente cadastra-

dos. Basta selecionar o Programa desejado para criar um episodio do mesmo.

• Tıtulo do Episodio (obrigatorio) - Em geral, e o nome do programa (ou um

subtıtulo) com a data de exibicao.

• Data de Exibicao - data em que o episodio sera exibido; data no formato DDM-

MAAAA.

Modo de operacao:

Selecionar um Programa;

Digitar o tıtulo;

Digitar a data de exibicao (opcional) ou altera-la com a ajuda das setinhas;

Clicar em Salvar.

32

Page 48: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A.4.3 Listar Programas:

Figura A.5: Visualizar Programa

Esta funcao e acessada selecionando ”Listar Programas”no menu acima. Per-

mite a visualizacao de todos os programas cadastrados no sistema. Ao selecionar um

programa, e possıvel tambem visualizar os episodios cadastrados referentes a este

programa.

Modo de operacao:

Na lista de Programas, selecione o programa desejado;

Clique em Listar episodios... - Abrira uma tela com os episodios do programa

selecionado. Para sair desta tela, basta clicar em Sair.

33

Page 49: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A.5 Chamada

A.5.1 Adicionar Chamada:

Figura A.6: Adicionar Chamada

Figura A.7: Selecionar Programas / Episodios

Esta funcao e acessada selecionando ”Adicionar Chamada”no menu acima.

Permite o cadastro de chamadas com os seguintes campos:

• Claquete (obrigatorio);

• Data de Pauta;

• Programa(s);

34

Page 50: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

• Ilustracao;

• Texto;

Modo de operacao:

Digite a Claquete (campo obrigatorio);

Digite a data ou selecione uma data ao clicar na setinha;

Para adicionar um programa, basta clicar em Adicionar que sera exibida uma tela

com os programas e seus episodios. Basta selecionar um episodio (ou clicar 2 vezes

com o botao esquerdo do mouse) e clicar em OK para adiciona-lo a lista;

Se quiser remover um programa, basta seleciona-lo e clicar em Remover;

Digitar o texto de ilustracao;

Digitar o texto da chamada;

A.5.2 Listar Chamadas:

Figura A.8: Listar Chamadas

Esta funcao e acessada selecionando ”Listar Chamadas”no menu acima. Per-

mite a visualizacao das chamadas referentes a um episodio / programa.

35

Page 51: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Modo de operacao:

Selecione um programa em Programa; Apos esta selecao, a lista de episodios sera

carregada com os itens referentes a este programa.

Selecione um episodio; A lista das chamadas sera carregada em seguida.

A.5.3 Buscar Chamadas:

Figura A.9: Buscar Chamadas

Esta funcao e acessada selecionando ”Buscar Chamadas”no menu acima e per-

mite a busca de uma chamada pela sua Claquete. Basta escrever parte da claquete

ou o tıtulo inteiro da chamada desejada e o programa lista as chamadas encontradas.

Modo de operacao:

Digite parte da Claquete ou o tıtulo inteiro;

Clique em Buscar;

Se quiser edita-la:

• basta selecionar a chamada desejada

• clicar em Editar

36

Page 52: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Se quiser Visualiza-la:

• basta selecionar a chamada desejada

• clicar em Visualizar

A.5.4 Editar Chamadas:

Figura A.10: Alterar Chamadas

Essa tela permite a alteracao dos campos de uma chamada. Acessada pelas

telas ”Listar Chamadas”, ”Buscar Chamadas”e ”Buscar Chamadas (Dt Pauta)”ao

clicar em Editar....

Modo de operacao:

Vide adicionar chamada

Altere os campos necessarios;

Clique em Salvar ;

37

Page 53: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A.6 Administracao:

A.6.1 Adicionar Usuario:

Figura A.11: Adicionar Usuario

Esta funcao e acessada selecionando ”Adicionar Usuario”no menu acima.

Nessa tela, e criado um novo usuario. A funcao (cargo) do usuario deve ser in-

formada selecionando-a na caixa de listagem drop-down. O acesso ao banco de

dados e determinado pela funcao do usuario.

Modo de operacao:

Digite um login (obrigatorio);

Selecione o cargo do profissional (obrigatorio);

Digite uma senha;

Digite em confirmar senha a mesma senha digitada anteriormente;

Clique em Adicionar ;

A.6.2 Excluir Usuario:

Para acessar esta tela, basta selecionar ”Excluir Usuario”no menu acima.

Nessa tela e excluıdo um usuario existente. Apenas o ADMINISTRADOR pode

38

Page 54: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Figura A.12: Excluir Usuario

excluir um usuario.

Modo de operacao:

Selecione o login na lista drop down (obrigatorio);

Digite a senha do usuario ADMINISTRADOR (obrigatorio);

Digite em confirmar senha a mesma senha digitada anteriormente (obrigatorio);

Clique em Remover ;

39

Page 55: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

A.7 Usuario:

A.7.1 Alterar Senha:

Figura A.13: Alterar Senha Usuario

Para alterar a senha do usuario atualmente logado no sistema, selecione ”Al-

terar Senha”no menu acima.

Modo de operacao:

Digite a Senha atual do usuario atualmente logado (obrigatorio);

Digite a nova senha (obrigatorio);

Digite em confirmar senha a mesma senha (nova) digitada anteriormente (obri-

gatorio);

Clique em Alterar ;

40

Page 56: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Apendice B

Documentacao do Sistema Promo

Figura B.1: Classe Call - documentacao

41

Page 57: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Figura B.2: Classe Call - documentacao

42

Page 58: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Figura B.3: Classe Call - documentacao

43

Page 59: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Figura B.4: Classe Call - documentacao

44

Page 60: UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit …UNIVERSIDADE FEDERAL DO RIO DE JANEIRO Escola Polit ecnica - Departamento de Eletr^onica e de Computa˘cao Centro de Tecnologia

Figura B.5: Classe Call - documentacao

45