SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
I NTRO                      I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND




         Considerações sobre Interfaces Web em Sistemas
                         de Informação

                                               Ole Peter Smith
                                                 ole@mat.ufg.br
                                     http://www.ime.ufg.brt/docentes/olepeter



                                 Instituto de Matemática e Estatística,
                                    Universidade Federal de Goiás


                           Recepção dos Calouros, INF/UFPR
                               Curitiba-PR, 08/03/2012


               Gods doesn’t worry about our mathemathical difficulties
                             He integrates empirically
                                  Albert Einstein
          M ADE IN L TEX
                   A                     O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                      I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                     Currículo

         • Copenhague, Dinamarca - 11/01/1964
         • Mãe Solteira - Filha ’Alemão’ - Pai Desconhecido
         • Hiperativo- Expulso de 4 escolas
         • Ms. em Engenharia (90) - MAT, DTU
         • Jornaleiro viajante...
         • PhD em Matemática (96) - MAT, DTU
         • Systems Administrator MAT, DTU - 1996-2002
         • Programador desde 90: C/C++, LISP, Perl, PHP & Friends
         • Emigração p/ Brasil (Iporá), 2002
         • 6 meses desempregado
         • Prefeitura ∼ UEG ∼ FAI
         • Prof. Adjunto, IME, UFG - 2009-...
           M ADE IN L TEX
                    A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                          CV/Informática




         • 1990, Pascal: Conjugar Verbos em Espanhol
         • 1992, LISP: AutoCAD
         • 1992, C/C++: Otimização
         • 1996: Perl
         • 2009: PHP




          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                      I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                  Aplicativos

         • SiPE: Sistema de Planos de Ensino
           2010.2 - 2011.1 - 2011.2 - 2012.1
           [ Live | Local ]
         • SiDS: Sistema de Distribuição de Salas
           2011.1 - 2011.2 - 2012.1
           [ Live | Local ]
         • SiVent: Sistema de Gestão de Eventos
           2011 -..
           [ Live | Local ]
         • Módulos CentraisCumns:
                •     Base (HTML, CGI, ...)
                •     BD interface
                •     Aplicativo
                •     No processo de migração p/ ver. 2
          M ADE IN L TEX
                   A                     O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                  Introdução

         • Sistemas de Informação
         • Bancos de Dados
         • Interfaces
              • Terminal
              • Janelas
              • Web/HTML: Simplicidade

                           ’Economia de Pensamento’

         • Ferramentas Livres!
         • Abstrações:
                • Tabela: List of items - Matriz
                • Item: Associated Array (Hash)


          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                      I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                Metodologia

         • Interface Web: HTTP
         • Ferramentas Livres:
              • Servidor WWW: HTTP
              • Good old HTML: Links
              • Linguagem: PHP, Perl,...
              • (My)Sql
              • LTEX(PDF)
                 A

         • Object Orientation
              • Data & Methods
              • Accessors (eval)
              • Inheritance (linear?)
              • Polymorfism
              • Encapsulation
         • Dispatcher: Handle
         • Camâdas: Herânça (ou traits)
           M ADE IN L TEX
                    A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                      I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                   Uma Tabela num BD

         • Matriz:
                               ID         data1                  data2                   ···                dataN
                               1          val11                  val12                   ···                val1N
                               2          val21                  val22                   ···                val2N
                               .
                               .          .
                                          .                                              .
                                                                                         .                  .
                                                                                                            .
                               .          .                      ···                     .                  .
                               M          valM1                  valM2                   ···                valMN
            data1 , data2 ,. . .,dataN :                          ’Estáticos’                             datas
                           1,2,. . .,M:                           Dinâmicos                                 ids
         • Lista de Hashes
                 • Singular: Um item
                 • Plural: Vários Itens
                 • foreach $item do
         • Tabela → Objeto
           M ADE IN L TEX
                    A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                       I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                  Interface Web: HTML


          Head Icon Left          Company Header                                         Head Icon Right




            Leftmenu                        »Module«                                                Messages




          Foot Icon Left                  App. Trailer                                     Foot Icon Right

         Ex: SiDS

            M ADE IN L TEX
                     A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                           I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                              Definir Applicativo, Objeto e Dados
         •    $this->ItemData[ ’data1 ’,’data2 ’,...,’dataN ’ ] :
             Hash of Definition Hashes
         • Table Name [DB Name]
         • $this->Item(s)Name_PT,$this->ItemNamer
         • $this->ItemData[ ’Name’ ] => array
             (
              ’SQL’ => ’VARCHAR(256)’,
              ’Name_PT’ => ’Nome da Sala’,
              ’Name_UK’ => ’Room Name’,
               .
               .
               .
                   #HTML specific
                ’Size’ => 50,
                ’Title_PT’ => ’Nome da Sala’, #Popup
                 .
                 .
                 .
             );
             M ADE IN L TEX
                      A                       O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                       Outputs


         • HTML: Show
         • HTML Form: Edit
         • Planilha: CSV
         • PDF
         • LTEX!!!
           A

         • Text
         • more...

                                                     Abstração!




          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                  Singular: Um Item I
         • Show
                                 ID                    $item[ “ID“ ]
                                 data1                 $item[ “$data1 “ ]
                                 data2                 $item[ “$data2 “ ]
                                 .
                                 .                     .
                                                       .
                                 .                     .
                                 dataN                 $item[ “$dataN “ ]
         • Edit
         • Print: header(’contenttype’ => ’pdf’);
         • Add, Copy
         • Delete: »Dangerous«
         • Do something:

                              $this->$process($item);
                           $item=$this->$process($item);
          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                 Singular: Um Item II
         • Geralidade - Abstração vs. Eficiência
         • function ReadItem($id):                                                     $item;
         • function WriteItem($item);
         • function TestItem($item);
         • function PostProcessItem($item);
         • function ItemMatrix($item);
         • Outputs:
             • function HTMLMatrix($item,$options);
             • function LTEXMatrix($item,$options);
                        A
             • function CSVMatrix($item,$options);
             • ...

                              This year I have a Server...
                             Next year I have A SERVER!!!
          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                               R ELATIONAL BD S                                                T HE E ND



                                  Plural: Vários Itens
         • Show Itens
                                           ID           data1                  ..        dataK
                                           1            val11                  ..        val1K
                                           2            val21                  ..        val2K
                                           .
                                           .            .
                                                        .                                .
                                                                                         .
                                           .            .                                .
                                           L            valL1                  ..        valLK
         • Edit
         • Print - CSV
         • Search ⇒ Search Vars
         • Data Agrupamento
         • Paginação
         • ’With these Items do’
         • Which Items?
          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                        I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                           Pesquisar: O Núcleo do Aplicativo
         • Search Vars
           ’Search’ => TRUE,
         • Search Table
                • PreSearch Vars: INTs/ENUMs → SQL Query
                  function Hash2Query($hash)
                  {
                    foreach ($hash as $key => $value)
                    {
                       array_push
                       (
                          $queries,
                          $key."=’".$value."’"
                       );
                    }
                    return join(’ ’,$queries);
                  }
                • PostSearchVars: Match by SearchItems
          M ADE IN L TEX
                   A                       O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                        I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                           Pesquisar: O Núcleo do Aplicativo

         • With Selected Items:
              • Show, Edit
              • Copy, (Delete) - to do
              • PDF - LTEX- CSV - SQL - ...
                       A
              • function GatherTable()
              • Table Dispatch: function ItemsTable($output)
         • Item Processor:
              • CGI → $subroutine
              • Read & Search Items
              • PrintSearchVarsTable();
              • foreach ($items as $id => $item)
                {
                   $items[ $id ]=$this->$subroutine($item);
                }
         • Search Vars Cookies

          M ADE IN L TEX
                   A                       O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                          Tipos de Dados



         • SQL & HTML Inputs:

            [VAR]CHAR(NN) TEXT          TEXTAREA
            ENUM               SELECT RADIO                                                                                    checkbox
            INT/REAL           TEXT
            DATE               3 x TEXT                                                                                        todo
            TIME               2 x TEXT                                                                                        todo
            ’FILE’             FILE     Upload
         • RID: Index em outro BD → SELECT




          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                           Enums Simples
         • ’VALUES’ => array(’eval1’,’eval2’,...),
         • ’VALUES_UK’ =>
             array(’eval_uk1’,’eval_uk2’,...),
         • Store Numbers:
           0, 1, · · · , count!
           0: Undef
         • ++Pesquisar!
         • Ex: Boolean:
           ’VALUES’ => array(’Sim’,’Não’),
           ’VALUES_UK’ => array(’Yes’,’No’),
         • Enums Dependentes (ex: AREA - SUBAREA)
           ’VALUES_MATRIX’ =>
           array(array(...),array(...),...),
           - Max(count,count,...)
          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                 Table Object, Actions
         • Action Dispatch → Call ActionHandler
                           "Search" => array
                           (
                            "Href"     => "",
                            "HrefArgs" => "", //?Action=Search prepe
                            "Title"    => "Pesquisar #ItemsName",
                            "Title_UK" => "Search #ItemsName",
                            "Name"     => "Pesquisar #ItemsName",
                            "Name_UK" => "Search #ItemsName",
                            "Icon"     => "view.png",
                            "Public"   => 1,
                            "Person"   => 1,
                            "Admin"   => 1,
                            "Handler"   => "HandleList",
                            "Edits"   => 0,
                           ),
          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                         I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                              Links & Menus
         • Left Menu
             • Vertical
             • Menu of Modules
             • Clickables:
                            • Module1
                            • Module2
                            • ...
                 • Permissions Per Module
         • Top Menus
             • Horisontal
             • Menu of Module Actions
             • Clickables: [ Action1 | ... | ActionN ]
             • Permissions Per Action
         • Menu de Agrupamentos de Dados
         • Permissions ⇐!!
           M ADE IN L TEX
                    A                       O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                      I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                           Users

         • Authentication:

                               »Are You who You say You are?«
         • Authorization:

                               »May You do what You want to?«
         • → Users Table Module!
         • Add, Edit, List, Search, ..., ... Users
         • De ’Graça’!!!
         • Public - Person - Admin
         • Persons: Consult Profiles Table
             • SiDS: Coordenadores - Distribuidores
             • SiPE: Coordenadores - Professores
             • SiVent: Inscritos - Event Admin

           M ADE IN L TEX
                    A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                 Permissons



         • Data ou Action:
           ...
           ’Public’ => ’0’,
           ’Coordinator’ => ’0’,
           ’Distributor’ => ’1’,
           ’Admin’ => ’1’,
           ...




          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                     I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                   Relational



         • Disciplina: Curso, ID
           1-1
           Nested:
           Disciplina -> Turma -> Curso -> Unidade Acad. -> Câmpus
           -> Cidade
         • Disciplinas da Turma
           1 - Muitos




          M ADE IN L TEX
                   A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                        I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                               SiDS


           • Cidades
           • Campii
           • Prédios
           • Salas
           • Unidades Acadêmicas
           • Usuários
           • Cursos
           • Disciplinas

         [ SiDS Live | SiDS Local ]



             M ADE IN L TEX
                      A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                        I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                               SiPE

           • Cursos
           • Disciplinas
           • Usuários
           • Seminários
           • Calendário
           • Atas
           • Publicações Internas (to do)
           • Diários (to do)
           • Distribuição de Professores (to do)
           • Conversar com SiDS (<–!)

         [ SiPE Live | SiPE Local ]

             M ADE IN L TEX
                      A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                        I NTERFACE                                              R ELATIONAL BD S                                                 T HE E ND



                                                             SiVent

           • Eventos
           • Cadastros
           • Inscritos
           • Subeventos (Submissões)
           • Programação
               • Dias e Horários
               • Salas
           • Preinscrições
           • Presenças (–> CH)
           • Certificados

         [ SiVent Live | SiVent Local ]

             M ADE IN L TEX
                      A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
I NTRO                    I NTERFACE                                              R ELATIONAL BD S                                                   T HE E ND




                             Estes são meus Princípios.
                     Se Você não Gosta deles, eu tenho Outros...
                                   Groucho Marx



            Life sure is a Mystery to be Lived
               Not a Problem to be Solved
                  Please Always Enjoy!
                                                                                                                                                   0le

         M ADE IN L TEX
                  A                    O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR -   HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER

Mais conteúdo relacionado

Semelhante a Wi.ufpr

A Evolução de Lua (Pycon Brasil 2008)
A Evolução de Lua (Pycon Brasil  2008)A Evolução de Lua (Pycon Brasil  2008)
A Evolução de Lua (Pycon Brasil 2008)guest55e576
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Mario Guedes
 
Big data e mineração de dados
Big data e mineração de dadosBig data e mineração de dados
Big data e mineração de dadosElton Meira
 
Introdução à Educação Digital - Unidade 1
Introdução à Educação Digital - Unidade 1Introdução à Educação Digital - Unidade 1
Introdução à Educação Digital - Unidade 1Odalisetecno
 
Desenvolva rapidamente utilizando o framework Desenvolva rapidamente utiliz...
Desenvolva rapidamente
utilizando o framework
Desenvolva rapidamente utiliz...Desenvolva rapidamente
utilizando o framework
Desenvolva rapidamente utiliz...
Desenvolva rapidamente utilizando o framework Desenvolva rapidamente utiliz...Renato Shirakashi
 
Exercicio1 A
Exercicio1 AExercicio1 A
Exercicio1 Anparrinha
 
Sistemas Inteligentes para Textos da Web
Sistemas Inteligentes para Textos da WebSistemas Inteligentes para Textos da Web
Sistemas Inteligentes para Textos da WebFernando Hideo Fukuda
 
slide-informatica-basica_qwerpdf_pdf_para_ppt.pptx
slide-informatica-basica_qwerpdf_pdf_para_ppt.pptxslide-informatica-basica_qwerpdf_pdf_para_ppt.pptx
slide-informatica-basica_qwerpdf_pdf_para_ppt.pptxKarinaLuizaAzevedoAl
 
Curriculum Vitae - Vinicius Borges Gonçalves
Curriculum Vitae - Vinicius Borges GonçalvesCurriculum Vitae - Vinicius Borges Gonçalves
Curriculum Vitae - Vinicius Borges GonçalvesVinicius Gon
 
Que informática para engenharia (2001)
Que informática para engenharia (2001)Que informática para engenharia (2001)
Que informática para engenharia (2001)Pedro Pimenta
 
Palestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslidesharePalestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslidesharepccdias
 
Ontologias - Para quê e para quem?
Ontologias - Para quê e para quem?Ontologias - Para quê e para quem?
Ontologias - Para quê e para quem?Cristiane Mendes
 
TDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosTDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosAmbiente Livre
 
Tecnologias emergentes e o papel do profissional de redes
Tecnologias emergentes e o papel do profissional de redesTecnologias emergentes e o papel do profissional de redes
Tecnologias emergentes e o papel do profissional de redesRafael de Oliveira Ribeiro
 

Semelhante a Wi.ufpr (20)

A Evolução de Lua (Pycon Brasil 2008)
A Evolução de Lua (Pycon Brasil  2008)A Evolução de Lua (Pycon Brasil  2008)
A Evolução de Lua (Pycon Brasil 2008)
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
 
Big data e mineração de dados
Big data e mineração de dadosBig data e mineração de dados
Big data e mineração de dados
 
Introdução à Educação Digital - Unidade 1
Introdução à Educação Digital - Unidade 1Introdução à Educação Digital - Unidade 1
Introdução à Educação Digital - Unidade 1
 
Desenvolva rapidamente utilizando o framework Desenvolva rapidamente utiliz...
Desenvolva rapidamente
utilizando o framework
Desenvolva rapidamente utiliz...Desenvolva rapidamente
utilizando o framework
Desenvolva rapidamente utiliz...
Desenvolva rapidamente utilizando o framework Desenvolva rapidamente utiliz...
 
Onde posso ir como “dev”
Onde posso ir como “dev”Onde posso ir como “dev”
Onde posso ir como “dev”
 
Exercicio1 A
Exercicio1 AExercicio1 A
Exercicio1 A
 
Sistemas Inteligentes para Textos da Web
Sistemas Inteligentes para Textos da WebSistemas Inteligentes para Textos da Web
Sistemas Inteligentes para Textos da Web
 
SQLAlchemy - Desenvolvendo uma aplicação com Python
SQLAlchemy - Desenvolvendo uma aplicação com Python SQLAlchemy - Desenvolvendo uma aplicação com Python
SQLAlchemy - Desenvolvendo uma aplicação com Python
 
slide-informatica-basica_qwerpdf_pdf_para_ppt.pptx
slide-informatica-basica_qwerpdf_pdf_para_ppt.pptxslide-informatica-basica_qwerpdf_pdf_para_ppt.pptx
slide-informatica-basica_qwerpdf_pdf_para_ppt.pptx
 
Curriculum Vitae - Vinicius Borges Gonçalves
Curriculum Vitae - Vinicius Borges GonçalvesCurriculum Vitae - Vinicius Borges Gonçalves
Curriculum Vitae - Vinicius Borges Gonçalves
 
Cliente Servidor
Cliente ServidorCliente Servidor
Cliente Servidor
 
Cv Claudio Oliveira Alcantara
Cv   Claudio Oliveira AlcantaraCv   Claudio Oliveira Alcantara
Cv Claudio Oliveira Alcantara
 
AulaAula1(introducao)
AulaAula1(introducao)AulaAula1(introducao)
AulaAula1(introducao)
 
Que informática para engenharia (2001)
Que informática para engenharia (2001)Que informática para engenharia (2001)
Que informática para engenharia (2001)
 
PyFuncemeClimateTools
PyFuncemeClimateToolsPyFuncemeClimateTools
PyFuncemeClimateTools
 
Palestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslidesharePalestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
Palestra big data_e_mineracao_dedados_5agosto13-versaoslideshare
 
Ontologias - Para quê e para quem?
Ontologias - Para quê e para quem?Ontologias - Para quê e para quem?
Ontologias - Para quê e para quem?
 
TDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosTDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativos
 
Tecnologias emergentes e o papel do profissional de redes
Tecnologias emergentes e o papel do profissional de redesTecnologias emergentes e o papel do profissional de redes
Tecnologias emergentes e o papel do profissional de redes
 

Mais de Ole Peter Smith (18)

Dia.debian 2013, Trinidade-GO
Dia.debian 2013, Trinidade-GODia.debian 2013, Trinidade-GO
Dia.debian 2013, Trinidade-GO
 
Provas Algebra Linear, Gabaritos
Provas Algebra Linear, GabaritosProvas Algebra Linear, Gabaritos
Provas Algebra Linear, Gabaritos
 
Provas Algebra Linear
Provas Algebra LinearProvas Algebra Linear
Provas Algebra Linear
 
Formas quadraticas
Formas quadraticasFormas quadraticas
Formas quadraticas
 
Notas.al
Notas.alNotas.al
Notas.al
 
Compendio.algebra.linear
Compendio.algebra.linearCompendio.algebra.linear
Compendio.algebra.linear
 
Januaria
JanuariaJanuaria
Januaria
 
Tcp50.jatai
Tcp50.jataiTcp50.jatai
Tcp50.jatai
 
Tcp50.jatai.2
Tcp50.jatai.2Tcp50.jatai.2
Tcp50.jatai.2
 
Unesp
UnespUnesp
Unesp
 
Fisl
FislFisl
Fisl
 
Gc.d day
Gc.d dayGc.d day
Gc.d day
 
Ditados
DitadosDitados
Ditados
 
Frel.vv
Frel.vvFrel.vv
Frel.vv
 
Goias
GoiasGoias
Goias
 
Provas.gabaritos.2010
Provas.gabaritos.2010Provas.gabaritos.2010
Provas.gabaritos.2010
 
Provas.2010
Provas.2010Provas.2010
Provas.2010
 
Frel.vv
Frel.vvFrel.vv
Frel.vv
 

Wi.ufpr

  • 1. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Considerações sobre Interfaces Web em Sistemas de Informação Ole Peter Smith ole@mat.ufg.br http://www.ime.ufg.brt/docentes/olepeter Instituto de Matemática e Estatística, Universidade Federal de Goiás Recepção dos Calouros, INF/UFPR Curitiba-PR, 08/03/2012 Gods doesn’t worry about our mathemathical difficulties He integrates empirically Albert Einstein M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 2. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Currículo • Copenhague, Dinamarca - 11/01/1964 • Mãe Solteira - Filha ’Alemão’ - Pai Desconhecido • Hiperativo- Expulso de 4 escolas • Ms. em Engenharia (90) - MAT, DTU • Jornaleiro viajante... • PhD em Matemática (96) - MAT, DTU • Systems Administrator MAT, DTU - 1996-2002 • Programador desde 90: C/C++, LISP, Perl, PHP & Friends • Emigração p/ Brasil (Iporá), 2002 • 6 meses desempregado • Prefeitura ∼ UEG ∼ FAI • Prof. Adjunto, IME, UFG - 2009-... M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 3. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND CV/Informática • 1990, Pascal: Conjugar Verbos em Espanhol • 1992, LISP: AutoCAD • 1992, C/C++: Otimização • 1996: Perl • 2009: PHP M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 4. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Aplicativos • SiPE: Sistema de Planos de Ensino 2010.2 - 2011.1 - 2011.2 - 2012.1 [ Live | Local ] • SiDS: Sistema de Distribuição de Salas 2011.1 - 2011.2 - 2012.1 [ Live | Local ] • SiVent: Sistema de Gestão de Eventos 2011 -.. [ Live | Local ] • Módulos CentraisCumns: • Base (HTML, CGI, ...) • BD interface • Aplicativo • No processo de migração p/ ver. 2 M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 5. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Introdução • Sistemas de Informação • Bancos de Dados • Interfaces • Terminal • Janelas • Web/HTML: Simplicidade ’Economia de Pensamento’ • Ferramentas Livres! • Abstrações: • Tabela: List of items - Matriz • Item: Associated Array (Hash) M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 6. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Metodologia • Interface Web: HTTP • Ferramentas Livres: • Servidor WWW: HTTP • Good old HTML: Links • Linguagem: PHP, Perl,... • (My)Sql • LTEX(PDF) A • Object Orientation • Data & Methods • Accessors (eval) • Inheritance (linear?) • Polymorfism • Encapsulation • Dispatcher: Handle • Camâdas: Herânça (ou traits) M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 7. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Uma Tabela num BD • Matriz: ID data1 data2 ··· dataN 1 val11 val12 ··· val1N 2 val21 val22 ··· val2N . . . . . . . . . . ··· . . M valM1 valM2 ··· valMN data1 , data2 ,. . .,dataN : ’Estáticos’ datas 1,2,. . .,M: Dinâmicos ids • Lista de Hashes • Singular: Um item • Plural: Vários Itens • foreach $item do • Tabela → Objeto M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 8. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Interface Web: HTML Head Icon Left Company Header Head Icon Right Leftmenu »Module« Messages Foot Icon Left App. Trailer Foot Icon Right Ex: SiDS M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 9. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Definir Applicativo, Objeto e Dados • $this->ItemData[ ’data1 ’,’data2 ’,...,’dataN ’ ] : Hash of Definition Hashes • Table Name [DB Name] • $this->Item(s)Name_PT,$this->ItemNamer • $this->ItemData[ ’Name’ ] => array ( ’SQL’ => ’VARCHAR(256)’, ’Name_PT’ => ’Nome da Sala’, ’Name_UK’ => ’Room Name’, . . . #HTML specific ’Size’ => 50, ’Title_PT’ => ’Nome da Sala’, #Popup . . . ); M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 10. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Outputs • HTML: Show • HTML Form: Edit • Planilha: CSV • PDF • LTEX!!! A • Text • more... Abstração! M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 11. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Singular: Um Item I • Show ID $item[ “ID“ ] data1 $item[ “$data1 “ ] data2 $item[ “$data2 “ ] . . . . . . dataN $item[ “$dataN “ ] • Edit • Print: header(’contenttype’ => ’pdf’); • Add, Copy • Delete: »Dangerous« • Do something: $this->$process($item); $item=$this->$process($item); M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 12. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Singular: Um Item II • Geralidade - Abstração vs. Eficiência • function ReadItem($id): $item; • function WriteItem($item); • function TestItem($item); • function PostProcessItem($item); • function ItemMatrix($item); • Outputs: • function HTMLMatrix($item,$options); • function LTEXMatrix($item,$options); A • function CSVMatrix($item,$options); • ... This year I have a Server... Next year I have A SERVER!!! M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 13. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Plural: Vários Itens • Show Itens ID data1 .. dataK 1 val11 .. val1K 2 val21 .. val2K . . . . . . . . . L valL1 .. valLK • Edit • Print - CSV • Search ⇒ Search Vars • Data Agrupamento • Paginação • ’With these Items do’ • Which Items? M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 14. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Pesquisar: O Núcleo do Aplicativo • Search Vars ’Search’ => TRUE, • Search Table • PreSearch Vars: INTs/ENUMs → SQL Query function Hash2Query($hash) { foreach ($hash as $key => $value) { array_push ( $queries, $key."=’".$value."’" ); } return join(’ ’,$queries); } • PostSearchVars: Match by SearchItems M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 15. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Pesquisar: O Núcleo do Aplicativo • With Selected Items: • Show, Edit • Copy, (Delete) - to do • PDF - LTEX- CSV - SQL - ... A • function GatherTable() • Table Dispatch: function ItemsTable($output) • Item Processor: • CGI → $subroutine • Read & Search Items • PrintSearchVarsTable(); • foreach ($items as $id => $item) { $items[ $id ]=$this->$subroutine($item); } • Search Vars Cookies M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 16. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Tipos de Dados • SQL & HTML Inputs: [VAR]CHAR(NN) TEXT TEXTAREA ENUM SELECT RADIO checkbox INT/REAL TEXT DATE 3 x TEXT todo TIME 2 x TEXT todo ’FILE’ FILE Upload • RID: Index em outro BD → SELECT M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 17. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Enums Simples • ’VALUES’ => array(’eval1’,’eval2’,...), • ’VALUES_UK’ => array(’eval_uk1’,’eval_uk2’,...), • Store Numbers: 0, 1, · · · , count! 0: Undef • ++Pesquisar! • Ex: Boolean: ’VALUES’ => array(’Sim’,’Não’), ’VALUES_UK’ => array(’Yes’,’No’), • Enums Dependentes (ex: AREA - SUBAREA) ’VALUES_MATRIX’ => array(array(...),array(...),...), - Max(count,count,...) M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 18. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Table Object, Actions • Action Dispatch → Call ActionHandler "Search" => array ( "Href" => "", "HrefArgs" => "", //?Action=Search prepe "Title" => "Pesquisar #ItemsName", "Title_UK" => "Search #ItemsName", "Name" => "Pesquisar #ItemsName", "Name_UK" => "Search #ItemsName", "Icon" => "view.png", "Public" => 1, "Person" => 1, "Admin" => 1, "Handler" => "HandleList", "Edits" => 0, ), M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 19. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Links & Menus • Left Menu • Vertical • Menu of Modules • Clickables: • Module1 • Module2 • ... • Permissions Per Module • Top Menus • Horisontal • Menu of Module Actions • Clickables: [ Action1 | ... | ActionN ] • Permissions Per Action • Menu de Agrupamentos de Dados • Permissions ⇐!! M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 20. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Users • Authentication: »Are You who You say You are?« • Authorization: »May You do what You want to?« • → Users Table Module! • Add, Edit, List, Search, ..., ... Users • De ’Graça’!!! • Public - Person - Admin • Persons: Consult Profiles Table • SiDS: Coordenadores - Distribuidores • SiPE: Coordenadores - Professores • SiVent: Inscritos - Event Admin M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 21. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Permissons • Data ou Action: ... ’Public’ => ’0’, ’Coordinator’ => ’0’, ’Distributor’ => ’1’, ’Admin’ => ’1’, ... M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 22. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Relational • Disciplina: Curso, ID 1-1 Nested: Disciplina -> Turma -> Curso -> Unidade Acad. -> Câmpus -> Cidade • Disciplinas da Turma 1 - Muitos M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 23. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND SiDS • Cidades • Campii • Prédios • Salas • Unidades Acadêmicas • Usuários • Cursos • Disciplinas [ SiDS Live | SiDS Local ] M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 24. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND SiPE • Cursos • Disciplinas • Usuários • Seminários • Calendário • Atas • Publicações Internas (to do) • Diários (to do) • Distribuição de Professores (to do) • Conversar com SiDS (<–!) [ SiPE Live | SiPE Local ] M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 25. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND SiVent • Eventos • Cadastros • Inscritos • Subeventos (Submissões) • Programação • Dias e Horários • Salas • Preinscrições • Presenças (–> CH) • Certificados [ SiVent Live | SiVent Local ] M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER
  • 26. I NTRO I NTERFACE R ELATIONAL BD S T HE E ND Estes são meus Princípios. Se Você não Gosta deles, eu tenho Outros... Groucho Marx Life sure is a Mystery to be Lived Not a Problem to be Solved Please Always Enjoy! 0le M ADE IN L TEX A O LE P ETER S MITH , IME, UFG: OLE @ MAT. UFG . BR - HTTP :// WWW. IME . UFG . BR / DOCENTES / OLEPETER