um protótipo de software assistente de atualização de

32
Denis Cezar Metzner Um protótipo de software assistente de atualização de versão de software Autor : Denis Cezar Metzner Orientador : Ricardo Alencar de Azambuja Empresa : Strategies Ltda

Upload: others

Post on 15-Oct-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Um protótipo de software

assistente de atualização de

versão de software

Autor : Denis Cezar Metzner

Orientador : Ricardo Alencar de Azambuja

Empresa : Strategies Ltda

Page 2: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Roteiro da

Apresentação

Introdução� Contextualização

Objetivos do Trabalho

Fundamentação teórica� Conceitos básicos e ferramentas utilizadas

Page 3: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Roteiro da

Apresentação (2)

Desenvolvimento do trabalho� Requisitos principais� Especificação� Implementação� Resultados

Conclusão� Extensões

Page 4: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Introdução

Mercado Atual � Controle de Versão

Fechamento e Atualização de Versão� Software de Grande Porte

� Processo Manual� Perda de Tempo

� Geração de Custos

Page 5: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Introdução (2)

Análise Estruturada

Oracle 8i

SQL Plus 3.0

Uniface 7.0

Page 6: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Objetivos do trabalho

Desenvolvimento de Protótipo

� Automatizar Fechamento de Versão (executada na empresa)

� Automatizar Atualização de Versão (executada no cliente)

Page 7: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Fundamentação teóricaFerramentas Utilizadas

Banco de Dados Relacional Oracle 8i

Ferramenta de Manipulação de Dados SQL Plus 3.0

Ferramenta de Desenvolvimento Uniface 7.0

Page 8: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Desenvolvimento do trabalhoRequisitos

Desenvolvimento em Uniface 7.0

Automatização Fechamento de Versão

Automatização Atualização de Versão

Ganho de Tempo e Redução de Custos

Page 9: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Desenvolvimento do trabalhoEspecificação

Coleta de Informações

Descrição do ObjetivosLista de Eventos

Diagrama de ContextoDiagrama de Fluxo de Dados (D.F.D.)

Modelo Entidade Relacionamento LógicoModelo Entidade Relacionamento Físico

Utilização da Ferramenta Power Designer

Page 10: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Desenvolvimento do trabalhoImplementação – Modelo Dados

Page 11: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Desenvolvimento do trabalhoImplementação – Editor Código

Exemplo

Page 12: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Tela de Acesso

Page 13: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Tela Geral

Page 14: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Informações Cliente

Page 15: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Sistemas do Cliente

Page 16: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Usuários de Banco

Page 17: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Usuários de Banco

Page 18: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Fechamento Versão

Page 19: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Atualização Versão

Page 20: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Atualização Versão

Page 21: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Implementação – Atualização Versão

Page 22: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Desenvolvimento do trabalhoResultados

Redução no gasto de tempo� Fechamento : 2 horas � 45 minutos

� Atualização : 4 horas � 30 minutos

Redução de etapas� Fechamento : 14 etapas � 11 etapas

� Atualização : 10 etapas � 5 etapas

Page 23: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Conclusões

Período de adaptação ao ambiente do cliente.� Alterações e ajustes.

Pontos Positivos.� Objetivos principais foram atingidos.

� Grande necessidade da empresa.� Nova ferramenta de auxílio ao Depto Suporte.

Pontos Negativos (limitações).� Chamadas de Sistema operacional.� Executáveis que não pertencem à aplicação.

Page 24: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

ConclusõesExtensões

“Departamento de Suporte disponível 24 horas”

� Controle de cópia de segurança.

� Monitoração do banco de dados (servidor).

� Ferramenta de auxílio para manipulação de dados.

Fim

Page 25: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Empresa é cadastrada;Sistemas da empresa são cadastrados;Usuários do protótipo são cadastrados;Usuários do banco de dados são cadastrados;Usuário Strategies cadastra módulos;Usuário Strategies cadastra rotinas;Usuário Strategies cadastra tipo de alteração;

PróximaEspecificação

Lista de Eventos

Page 26: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Usuário Strategies cadastra banco de dados;Usuário Strategies cadastra sistema;Usuário Strategies cadastra modelos do sistema;Usuário Strategies cadastra versão;Usuário Strategies efetua fechamento de versão;Usuário Cliente efetua atualização de versão;

EspecificaçãoAnterior

Lista de Eventos (2)

Page 27: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Diagrama de Contexto

Sistemas da Empresa Strategies

Empresa Strategies

Modelo

Atualizacao Versão

Usuário Banco Dados Cliente

Usuário Cliente

Sistemas da Empresa Cliente

Empresa Cliente

Fechamento Versão

Versão

Sistema

Banco de Dados

Tipo de Alteração

Rotina

Modulo

Usuario Banco Dados Strategies

Usuário Strategies

Empresa Strategies

1

Strategies Suporte

+

Usuário Strategies Usuário Cliente

Voltar

Page 28: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Diagrama de Fluxo de Dados

Sistema Fechamento

Modelo Fechamento

Usuário Banco Fechamento

Versão Fechamento

Sistema Empresa

[Fechamento Versão]

Usuário Strategies

1.13

Fechamento Versão

Entidade Sistema Empresa : 2

Entidade Versão : 3

Entidade Modelo : 2

Entidade Sistema : 5

Entidade Usuário Banco : 3

PróximaEspecificação

Page 29: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

Diagrama de Fluxo de Dados

Sistema Atualização

Tipo Alteração Atualização

Usuário Banco Atualização

Sistema Cliente Atualização

[Atualizacao Versão]Usuário Cliente

1.15

Atualização Versão

Entidade Sistema Cliente : 2

Entidade Usuário Banco : 4

Entidade Tipo Alteração : 2

Entidade Sistema : 6

Voltar Especificação

Page 30: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

RTBENTIDADETBALTERACAO

RTBENTIDADETBRELACIONAMENTO

RTBENTIDADETBCAMPO

RTBVERSAOTBENTIDADE

RTBTIPOALTERACAOTBALTERACAO

RTBSISTEMATBMODELO

RTBMODULOTBUSUARIOMODULO

RTBUSUARIOTBUSUARIOMODULO

RTBUSUARIOBANCOTBSISTEMAEMPRESA2

RTBUSUARIOBANCOTBSISTEMAEMPRESA3

RTBUSUARIOBANCOTBSISTEMAEMPRESA1

RTBVERSAOTBSISTEMAEMPRESA

RTBSISTEMATBVERSAO

RTBVERSAOTBSISTEMACLIENTE

RTBMODULOTBROTINA

RTBBANCODADOSTBCLIENTE

RTBROTINATBUSUARIOROTINA

RTBUSUARIOTBUSUARIOROTINA

RTBCLIENTETBDADOSCLIENTE

RTBCLIENTETBSISTEMACLIENTE

RTBUSUARIOBANCOTBSISTEMACLIENTETBCLIENTE

Código do CNPJNome do CNPJ

TBUSUARIOBANCO

Código do UsuárioDescrição do UsuárioNome do UsuárioSenha do UsuárioNome da ConexãoTipo de Usuário

TBSISTEMACLIENTE

Data de AtualizaçãoDiretório do SistemaDiretório do BackupDiretório da Versão Nova

TBBANCODADOS

Código do Banco de DadosNome do Banco de Dados

TBSISTEMA

Código do SistemaNome do Sistema

TBDADOSCLIENTE

Nome da ColunaConteúdo da Coluna

TBUSUARIO

Nome de AcessoNome do UsuárioSenha de AcessoTipo de Acesso

TBROTINA

Código da RotinaDescrição da Rotina

TBUSUARIOROTINA

Tem acesso ?

TBMODULO

Código do MóduloDescrição do Módulo

TBENTIDADE

Nome da Entidade

TBCAMPO

Nome do CampoOrdem do CampoTipo do CampoTamanho do CampoNr Casas DecimaisObrigatório?Campo ChaveTipo de Chave

TBSISTEMAEMPRESA

TBVERSAO

Código da VersãoDescrição da VersãoData de FechamentoDiretório da VersãoLinha de ComandoVersão Fechada?

TBUSUARIOMODULO

Tem acesso ?

TBMODELO

Descrição do Modelo

TBRELACIONAMENTO

Nome da Entidade FilhaNome do RelacionamentoNome do Campo do RelacionamentoTipo de Relacionamento

TBALTERACAO

Sequencial da AlteracaoNome do CampoNr Ordem do CampoTipo de CampoTamanho do CampoNr Casas DecimaisObrigatório?Campo ChaveTipo de ChaveNome da Entidade FilhaNome do RelacionamentoNome dos Campos do RelacTipo de Relacionamento

TBTIPOALTERACAO

Código do tipo de alteraçãoDescrição do tipo de alteração

Voltar

Page 31: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

CDSISTEMA = CDSISTEMACDVERSAO = CDVERSAO

DSENTIDADE = DSENTIDADE

CDSISTEMA = CDSISTEMACDVERSAO = CDVERSAO

DSENTIDADE = DSENTIDADEPAI

CDSISTEMA = CDSISTEMACDVERSAO = CDVERSAO

DSENTIDADE = DSENTIDADE

CDSISTEMA = CDSISTEMACDVERSAO = CDVERSAO

CDTIPO = CDTIPO

CDSISTEMA = CDSISTEMA

CDMODULO = CDMODULO

CDUSUARIO = CDUSUARIO

CDUSUARIOBANCO = CDUSUARIODADOS

CDUSUARIOBANCO = CDUSUARIOUNIFACE

CDUSUARIOBANCO = CDUSUARIOOBJETO

CDSISTEMA = CDSISTEMACDVERSAO = CDVERSAO

CDSISTEMA = CDSISTEMA

CDSISTEMA = CDSISTEMACDVERSAO = CDVERSAO

CDMODULO = CDMODULO

CDBANCO = CDBANCO

CDROTINA = CDROTINA

CDUSUARIO = CDUSUARIO

CDCNPJ = CDCNPJ CDCNPJ = CDCNPJ

CDUSUARIOBANCO = CDUSUARIOBANCO

TBCLIENTE

CDCNPJ VARCHAR2(14)DSCNPJ VARCHAR2(50)CDBANCO VARCHAR2(3)

TBUSUARIOBANCO

CDUSUARIOBANCO VARCHAR2(3)DSUSUARIOBANCO VARCHAR2(30)DSNOME VARCHAR2(20)DSSENHA VARCHAR2(20)NMCONEXAO VARCHAR2(10)DSTIPO VARCHAR2(1)

TBSISTEMACLIENTE

CDCNPJ VARCHAR2(14)CDSISTEMA VARCHAR2(3)CDUSUARIOBANCO VARCHAR2(3)CDVERSAO VARCHAR(5)DTATUALIZACAO DATEDSDIRETORIOATUAL VARCHAR2(100)DSDIRETORIOBACKUP VARCHAR2(100)DSDIRETORIOVERSAO VARCHAR2(100)

TBBANCODADOS

CDBANCO VARCHAR2(3)DSBANCO VARCHAR2(30)

TBSISTEMA

CDSISTEMA VARCHAR2(3)DSSISTEMA VARCHAR2(30)

TBDADOSCLIENTE

CDCNPJ VARCHAR2(14)DSCOLUNA VARCHAR2(20)DSCONTEUDO VARCHAR2(50)

TBUSUARIO

CDUSUARIO VARCHAR2(10)DSUSUARIO VARCHAR2(50)DSSENHA VARCHAR2(10)DSACESSO CHAR

TBROTINA

CDROTINA VARCHAR2(8)DSROTINA Varchar2(50)CDMODULO VARCHAR(3)

TBUSUARIOROTINA

CDUSUARIO VARCHAR2(10)CDROTINA VARCHAR2(8)DSACESSO VARCHAR2(1)

TBMODULO

CDMODULO VARCHAR(3)DSMODULO VARCHAR(30)

TBENTIDADE

CDSISTEMA VARCHAR2(3)CDVERSAO VARCHAR(5)DSENTIDADE VARCHAR2(50)

TBCAMPO

CDSISTEMA VARCHAR2(3)CDVERSAO VARCHAR(5)DSENTIDADE VARCHAR2(50)DSCAMPO VARCHAR2(20)DSORDEM NUMBER(4)DSTIPO VARCHAR2(10)DSTAMANHO NUMBER(5)DSDECIMAL NUMBER(2)DSOBRIGATORIO VARCHAR2(1)DSCHAVE VARCHAR2(1)DSTIPOCHAVE VARCHAR2(1)

TBSISTEMAEMPRESA

CDSISTEMA VARCHAR2(3)CDVERSAO VARCHAR(5)CDUSUARIOOBJETO VARCHAR(3)CDUSUARIOUNIFACE VARCHAR(3)CDUSUARIODADOS VARCHAR(3)

TBVERSAO

CDSISTEMA VARCHAR2(3)CDVERSAO VARCHAR(5)DSVERSAO VARCHAR(30)DTVERSAO DATEDSDIRETORIO VARCHAR2(100)DSCOMANDO VARCHAR2(200)DSFECHADA VARCHAR2(1)

TBUSUARIOMODULO

CDUSUARIO VARCHAR2(10)CDMODULO VARCHAR2(3)DSACESSO VARCHAR2(1)

TBMODELO

CDSISTEMA VARCHAR2(3)DSMODELO VARCHAR2(50)

TBRELACIONAMENTO

CDSISTEMA VARCHAR2(3)CDVERSAO VARCHAR(5)DSENTIDADEPAI VARCHAR2(50)DSENTIDADEFILHA VARCHAR2(50)DSNOME VARCHAR2(100)DSCAMPO VARCHAR2(100)DSTIPO VARCHAR2(3)

TBALTERACAO

CDSISTEMA VARCHAR2(3)CDVERSAO VARCHAR(5)DSENTIDADE VARCHAR2(50)CDTIPO VARCHAR2(3)DSSEQUENCIAL NUMBER2(4)DSCAMPO VARCHAR2(20)DSORDEM NUMBER(3)DSTIPOCAMP VARCHAR2(10)DSTAMANHO NUMBER(5)DSDECIMAL NUMBER(2)DSOBRIGATORIO VARCHAR2(1)DSCHAVE VARCHAR2(1)DSTIPOCHAVE VARCHAR2(1)DSENTIDADEFILHA VARCHAR2(50)DSNOMERELAC VARCHAR2(100)DSCAMPORELAC VARCHAR2(100)DSTIPORELAC VARCHAR2(3)

TBTIPOALTERACAO

CDTIPO VARCHAR2(3)DSTIPO VARCHAR2(100)

Voltar

Page 32: Um protótipo de software assistente de atualização de

Denis Cezar Metzner

usuario = "%%conexao|%%nome|%%senha"open "%%usuario", "$UD0"if ($status < 0)

message "Erro abrindo usuário Uniface de %%dssistem a.tbsistema."return(-1)

endifclear/e "tbmodelo"cdsistema.tbmodelo = cdsistema.tbversaoretrieve/e "tbmodelo"if ($status < 0)

message/error "Os Modelos de %%dssistema.tbsistema não estão cadastrados."

return(-1)endifsetocc "tbmodelo", 1while ($status >= 0)

retrieve/e "tbentidade"setocc "tbentidade", -1erase/e "tbentidade"if ($status < 0)

message/error "Erro excluindo ocorrencias entidade TBENTIDADE"return(-1)

endifsetocc “tbmodelo”, $curocc(tbmodelo) + 1

endwhile

Voltar