SlideShare a Scribd company logo
1 of 16
Download to read offline
PROGRAMAÇÃO
    EXPLORATÓRIA
    Recursos para prototipação
    digital de games
    David de Oliveira Lemes

    PUC-SP / TIDD


1
Agenda



      • Projeto de pesquisa


      • Percurso / organização temática da pesquisa


      • Relacionamento da disciplina com a pesquisa


      • Considerações finais


      • Comentários


2
Projeto de pesquisa




     !


3
Projeto de pesquisa


    Os jogos digitais são multidisciplinares por natureza e este
    projeto de pesquisa transita dentro desta área, contudo, busca
    um ponto muito específico: como uma idéia pode ser
    transformada em código.



    Em outras palavras: como a linguagem natural pode ser
    transformada em linguagem de máquina para ter como
    resultado final um jogo digital? Como a percepção se
    transforma em computação?


4
Projeto de pesquisa




    O processo de criação, formulação e desenvolvimento é
    conhecido como design de jogos, que segundo Schell (2010) é o
    ato de decidir o que um jogo deve ser.



                 Desenvolvimento ≠ Implementação




5
Projeto de pesquisa




    Como se dá o dialogo da percepção do criador de jogos com o
    desenvolvedor técnico (engenheiro de software e programador)
    para que o projeto original não sofra distorções e deterioração
    em função da tecnologia empregada em sua implementação?




6
Projeto de pesquisa




    Como o desenvolvedor técnico (programador) entende os
    requisitos do jogo a fim de transformar a linguagem natural
    (concepção do jogo) em linguagem de máquina (programação)?




7
Organização temática da pesquisa

                      O código do jogo         Introdução




                                         Criação de Games

             GDD Conceitual
                                         Processo (forma de trabalho)                                                        Refinamento da etapa do processo
                                                                                               O projeto de um game
                GDD Tecnológico
                                                                                                                             Análise dos requisitos com base na criação

    Protótipo de baixa fidelidade
                                                                                                                             Projeto com base na análise de requisitos
                                                                    Programação Exploratória
Brainstorm e mapas conceituais
                                                                                                                             Implementação de um protótipo digital
                                                                                                                             (programação exploratória)


           Criação e abdução (Pierce)                                                                                        Estilos de projetos



    Experimentação (tentativa e erro)
                                                                                       Nível do conhecimento

                              Intuição                                                                                Taxonomia de Bloom



 Conhecimento prévio da codificação                                                                                   Allen Newell - The Knowledge Level
                                               Programação exploratória

                   Produção do código                                                                                                                           Programação linear
                                                                                          Programação de computadores
                                                Prototipação digital
                  Prototipagem digital                                                                                                                          Programação modular
                                                                                                                                  Conceitos elementares
    Ferramentas de desenvolvimento                                                                                                                              Programação estruturada


                                                                                        Programação da máquina                                                  Programação orientada a objetos




8
Projeto de um game



      • Análise de requisitos com base na criação
      • Projeto com base na análise de requisitos
      • Implementenção de protótipo digital funcional



      Falhas de projetos              Processos de desenvolvimento


      • Supervisão infantil           • Waterfall, Royce
      • Construção da coisa errada    • Spiral, Boehm
      • Ofuscamento tecnológico

9
Projeto de um game



       Estilos de projetos
                               O GDDt e o GDDc impõe um estilo de
                               projeto orientado a documento que
        •   Calendário         pode mudar logo depois da etapa
        •   Requisitos         inicial de produção / criação.
        •   Documentos
        •   Qualidade
        •   Arquitetura


                      O projeto de um game, depois
                      de sua concepção criativa pode
                      (ou deve?) que ser conduzido
                      por um engenheiro de software.


10
Projeto de um game




                O engenheiro de software usará a
                metodologia apropriada para o processo
                do projeto de um jogo digital.




11
D
     Programação exploratória




             en
12
Programação exploratória




                 Programação exploratória

                 • Criação e abdução (C. S. Pierce)
                 • Experimentação (tentativa e erro)
                 • Intuição
                 • Conhecimento prévio da codificação
                 • Produção de código experimental
                 • Prototipagem digital
                 • Ferramentas de desenvolvimento



13
Programação exploratória




      E o que significa explorar?

      Uma das definições diz que explorar significa: examinar,
      analisar, estudar e pesquisar.




14
Programação exploratória



       A programação exploratória trabalha na construção de um
       código fonte de forma que este ato de construção seja objeto
       de análise, pesquisa e estudo.

       É um código artesanal, monilítico e não pode ser encarado
       como o código final de projeto de software. É um artefato
       que sofre alterações ao longo do tempo de estudo e
       desenvolvimento.

       Dentro do escopo deste projeto de pesquisa, é um código que
       tem como finalidade a construção de um protótipo digital de
       um game.



15
Considerações finais




16

More Related Content

What's hot

Interação Humano Computador Capítulo 9 - Design
Interação Humano Computador Capítulo 9 - DesignInteração Humano Computador Capítulo 9 - Design
Interação Humano Computador Capítulo 9 - DesignWellington Oliveira
 
Metodologias de Design de Interação
Metodologias de Design de InteraçãoMetodologias de Design de Interação
Metodologias de Design de InteraçãoUTFPR
 
Aula 1 - Técnicas de PrototipaçãoI
Aula 1 - Técnicas de PrototipaçãoIAula 1 - Técnicas de PrototipaçãoI
Aula 1 - Técnicas de PrototipaçãoIPaolo Passeri
 
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...Humberto Marchezi
 
Interação Humano-Computador - Design para Experiência
Interação Humano-Computador - Design para ExperiênciaInteração Humano-Computador - Design para Experiência
Interação Humano-Computador - Design para ExperiênciaWellington Oliveira
 
Mesa Redonda Sobre Cultura Maker e Educação
Mesa Redonda Sobre Cultura Maker e EducaçãoMesa Redonda Sobre Cultura Maker e Educação
Mesa Redonda Sobre Cultura Maker e EducaçãoProfa Karen Borges
 
Princípios Gerais para o Design de Interfaces
Princípios Gerais para o Design de InterfacesPrincípios Gerais para o Design de Interfaces
Princípios Gerais para o Design de Interfacesperes marlene
 
Técnicas de inteligência artificial em jogos eletrônicoss
Técnicas de inteligência artificial em jogos eletrônicossTécnicas de inteligência artificial em jogos eletrônicoss
Técnicas de inteligência artificial em jogos eletrônicossRoger Ritter
 

What's hot (8)

Interação Humano Computador Capítulo 9 - Design
Interação Humano Computador Capítulo 9 - DesignInteração Humano Computador Capítulo 9 - Design
Interação Humano Computador Capítulo 9 - Design
 
Metodologias de Design de Interação
Metodologias de Design de InteraçãoMetodologias de Design de Interação
Metodologias de Design de Interação
 
Aula 1 - Técnicas de PrototipaçãoI
Aula 1 - Técnicas de PrototipaçãoIAula 1 - Técnicas de PrototipaçãoI
Aula 1 - Técnicas de PrototipaçãoI
 
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
Um Ambiente Grafico para Desenvolvimento de Software de Controle para Robos M...
 
Interação Humano-Computador - Design para Experiência
Interação Humano-Computador - Design para ExperiênciaInteração Humano-Computador - Design para Experiência
Interação Humano-Computador - Design para Experiência
 
Mesa Redonda Sobre Cultura Maker e Educação
Mesa Redonda Sobre Cultura Maker e EducaçãoMesa Redonda Sobre Cultura Maker e Educação
Mesa Redonda Sobre Cultura Maker e Educação
 
Princípios Gerais para o Design de Interfaces
Princípios Gerais para o Design de InterfacesPrincípios Gerais para o Design de Interfaces
Princípios Gerais para o Design de Interfaces
 
Técnicas de inteligência artificial em jogos eletrônicoss
Técnicas de inteligência artificial em jogos eletrônicossTécnicas de inteligência artificial em jogos eletrônicoss
Técnicas de inteligência artificial em jogos eletrônicoss
 

Similar to Doutrado | Andamento do Projeto

Design de Interação em Produtos Eletrônicos
Design de Interação em Produtos EletrônicosDesign de Interação em Produtos Eletrônicos
Design de Interação em Produtos EletrônicosUTFPR
 
Design de Interação em Produtos Eletrônicos
Design de Interação em Produtos EletrônicosDesign de Interação em Produtos Eletrônicos
Design de Interação em Produtos EletrônicosEdyd B. Junges
 
TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...
TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...
TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...tdc-globalcode
 
Desenvolvimento Ágil de Software
Desenvolvimento Ágil de SoftwareDesenvolvimento Ágil de Software
Desenvolvimento Ágil de SoftwareMassimus CT
 
No code – Caso Prático no App Inventor - BroTrip
No code – Caso Prático no App Inventor - BroTripNo code – Caso Prático no App Inventor - BroTrip
No code – Caso Prático no App Inventor - BroTripeurosigdoc acm
 
UI Design para Desenvolvimento Mobile & Games
UI Design para Desenvolvimento Mobile & GamesUI Design para Desenvolvimento Mobile & Games
UI Design para Desenvolvimento Mobile & GamesSérgio Bezerra da Silva
 
Inovação Centrada no Usuário
Inovação Centrada no UsuárioInovação Centrada no Usuário
Inovação Centrada no UsuárioMourylise Heymer
 
Domain Driven Design: como modelar uma aplicação em Node.js com DDD
Domain Driven Design: como modelar uma aplicação em Node.js com DDDDomain Driven Design: como modelar uma aplicação em Node.js com DDD
Domain Driven Design: como modelar uma aplicação em Node.js com DDDDaniel Baptista Dias
 
DNAD 2011 - Examinando a Arquitetura Evolucionária
DNAD 2011 - Examinando a Arquitetura EvolucionáriaDNAD 2011 - Examinando a Arquitetura Evolucionária
DNAD 2011 - Examinando a Arquitetura EvolucionáriaLeandro Daniel
 
III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE
III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE
III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE Cloves da Rocha
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de SoftwareLeinylson Fontinele
 

Similar to Doutrado | Andamento do Projeto (20)

Design de Interação em Produtos Eletrônicos
Design de Interação em Produtos EletrônicosDesign de Interação em Produtos Eletrônicos
Design de Interação em Produtos Eletrônicos
 
Design de Interação em Produtos Eletrônicos
Design de Interação em Produtos EletrônicosDesign de Interação em Produtos Eletrônicos
Design de Interação em Produtos Eletrônicos
 
TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...
TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...
TDC2018SP | Trilha Machine Learning - Automacao de Machine Learning - Do data...
 
Projeto de Douturado
Projeto de DouturadoProjeto de Douturado
Projeto de Douturado
 
Facetas do desenvolvedor agil
Facetas do desenvolvedor agilFacetas do desenvolvedor agil
Facetas do desenvolvedor agil
 
Desenvolvimento Ágil de Software
Desenvolvimento Ágil de SoftwareDesenvolvimento Ágil de Software
Desenvolvimento Ágil de Software
 
No code – Caso Prático no App Inventor - BroTrip
No code – Caso Prático no App Inventor - BroTripNo code – Caso Prático no App Inventor - BroTrip
No code – Caso Prático no App Inventor - BroTrip
 
Computação no Desenvolvimento de Jogos Digitais
Computação no Desenvolvimento de Jogos DigitaisComputação no Desenvolvimento de Jogos Digitais
Computação no Desenvolvimento de Jogos Digitais
 
P2_Aula1-convertido.pptx
P2_Aula1-convertido.pptxP2_Aula1-convertido.pptx
P2_Aula1-convertido.pptx
 
UI Design para Desenvolvimento Mobile & Games
UI Design para Desenvolvimento Mobile & GamesUI Design para Desenvolvimento Mobile & Games
UI Design para Desenvolvimento Mobile & Games
 
Inovação Centrada no Usuário
Inovação Centrada no UsuárioInovação Centrada no Usuário
Inovação Centrada no Usuário
 
Aula1.pdf
Aula1.pdfAula1.pdf
Aula1.pdf
 
Domain Driven Design: como modelar uma aplicação em Node.js com DDD
Domain Driven Design: como modelar uma aplicação em Node.js com DDDDomain Driven Design: como modelar uma aplicação em Node.js com DDD
Domain Driven Design: como modelar uma aplicação em Node.js com DDD
 
Engenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - IntroEngenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - Intro
 
Aula1 dia 22 02 2022.pdf
Aula1  dia 22 02 2022.pdfAula1  dia 22 02 2022.pdf
Aula1 dia 22 02 2022.pdf
 
jogo
jogojogo
jogo
 
DNAD 2011 - Examinando a Arquitetura Evolucionária
DNAD 2011 - Examinando a Arquitetura EvolucionáriaDNAD 2011 - Examinando a Arquitetura Evolucionária
DNAD 2011 - Examinando a Arquitetura Evolucionária
 
III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE
III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE
III CAFÉ e CODE - PROVOCAÇÕES DO MESTRE
 
[Ci2015] sim rva
[Ci2015] sim  rva[Ci2015] sim  rva
[Ci2015] sim rva
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de Software
 

Doutrado | Andamento do Projeto

  • 1. PROGRAMAÇÃO EXPLORATÓRIA Recursos para prototipação digital de games David de Oliveira Lemes PUC-SP / TIDD 1
  • 2. Agenda • Projeto de pesquisa • Percurso / organização temática da pesquisa • Relacionamento da disciplina com a pesquisa • Considerações finais • Comentários 2
  • 4. Projeto de pesquisa Os jogos digitais são multidisciplinares por natureza e este projeto de pesquisa transita dentro desta área, contudo, busca um ponto muito específico: como uma idéia pode ser transformada em código. Em outras palavras: como a linguagem natural pode ser transformada em linguagem de máquina para ter como resultado final um jogo digital? Como a percepção se transforma em computação? 4
  • 5. Projeto de pesquisa O processo de criação, formulação e desenvolvimento é conhecido como design de jogos, que segundo Schell (2010) é o ato de decidir o que um jogo deve ser. Desenvolvimento ≠ Implementação 5
  • 6. Projeto de pesquisa Como se dá o dialogo da percepção do criador de jogos com o desenvolvedor técnico (engenheiro de software e programador) para que o projeto original não sofra distorções e deterioração em função da tecnologia empregada em sua implementação? 6
  • 7. Projeto de pesquisa Como o desenvolvedor técnico (programador) entende os requisitos do jogo a fim de transformar a linguagem natural (concepção do jogo) em linguagem de máquina (programação)? 7
  • 8. Organização temática da pesquisa O código do jogo Introdução Criação de Games GDD Conceitual Processo (forma de trabalho) Refinamento da etapa do processo O projeto de um game GDD Tecnológico Análise dos requisitos com base na criação Protótipo de baixa fidelidade Projeto com base na análise de requisitos Programação Exploratória Brainstorm e mapas conceituais Implementação de um protótipo digital (programação exploratória) Criação e abdução (Pierce) Estilos de projetos Experimentação (tentativa e erro) Nível do conhecimento Intuição Taxonomia de Bloom Conhecimento prévio da codificação Allen Newell - The Knowledge Level Programação exploratória Produção do código Programação linear Programação de computadores Prototipação digital Prototipagem digital Programação modular Conceitos elementares Ferramentas de desenvolvimento Programação estruturada Programação da máquina Programação orientada a objetos 8
  • 9. Projeto de um game • Análise de requisitos com base na criação • Projeto com base na análise de requisitos • Implementenção de protótipo digital funcional Falhas de projetos Processos de desenvolvimento • Supervisão infantil • Waterfall, Royce • Construção da coisa errada • Spiral, Boehm • Ofuscamento tecnológico 9
  • 10. Projeto de um game Estilos de projetos O GDDt e o GDDc impõe um estilo de projeto orientado a documento que • Calendário pode mudar logo depois da etapa • Requisitos inicial de produção / criação. • Documentos • Qualidade • Arquitetura O projeto de um game, depois de sua concepção criativa pode (ou deve?) que ser conduzido por um engenheiro de software. 10
  • 11. Projeto de um game O engenheiro de software usará a metodologia apropriada para o processo do projeto de um jogo digital. 11
  • 12. D Programação exploratória en 12
  • 13. Programação exploratória Programação exploratória • Criação e abdução (C. S. Pierce) • Experimentação (tentativa e erro) • Intuição • Conhecimento prévio da codificação • Produção de código experimental • Prototipagem digital • Ferramentas de desenvolvimento 13
  • 14. Programação exploratória E o que significa explorar? Uma das definições diz que explorar significa: examinar, analisar, estudar e pesquisar. 14
  • 15. Programação exploratória A programação exploratória trabalha na construção de um código fonte de forma que este ato de construção seja objeto de análise, pesquisa e estudo. É um código artesanal, monilítico e não pode ser encarado como o código final de projeto de software. É um artefato que sofre alterações ao longo do tempo de estudo e desenvolvimento. Dentro do escopo deste projeto de pesquisa, é um código que tem como finalidade a construção de um protótipo digital de um game. 15