Funções do projeto GOD:

1: E/S Emails 

Integrantes: Gabriel Ferreira Guilhoto (GFG), Luiz Fernando da Silva Armesto (LFSA), Renan Fichberg (RF), Rafael Campos Cruz

Nome: GODEmail

Sigla: MAIL

Líder: Luiz Armesto (luiz.armesto@gmail.com)

Plano de trabalho:

Dois módulos:

  1. recebimento de e-mails: se conecta a um servidor e encaminha as mensagens para o core do GOD
  2. envio de e-mails: a pedido do core do GOD, envia o conteúdo já processado para os respectivos destinatários

Possíveis dependências: filtros e processadores

 

2: Facebook/Twitter

Nome: SocialNetIO

Sigla: SNET

Integrantes: Thiago Araujo (TA), Eduardo Barreto Alexandre (EA), Leonardo Haddad (LH) e Aline Borges (AB)

Líder: Thiago Araujo (thd.araujo@gmail.com)

Plano de trabalho:

  • Definir uma interface para ser utilizada pelos outros componentes do GOD que forem buscar no Facebook ou Twitter
  • Definir um objeto padrão para o retorno de informações (e.g.: uma lista de posts filtrados do serviço desejado, ordenados por data de criação)
  • Criar um aplicativo GOD no Facebook Developer e no Twitter, para que possamos utilizar as APIs
  • Criar um mecanismo de busca de posts do Twitter e do Facebook por palavras-chave ou hashtags
Dependências:
  • API para consumo de webservices REST
  • Classe de tratamento de JSON

 

3: Arquivos de texto (pdf, odf, doc, txt)

Nome: TextIO

Sigla: TXT

Integrantes: João Paulo Burin de Camargo, John Gardenghi (jlcg), José Euripedes (JE) e Marcello Souza de Oliveira (mso)

Líder: John Gardenghi (john@ime.usp.br)

Plano de trabalho:

1 - Implementar um processador de textos que, dado um arquivo de entrada (pdf, odt, doc, txt), gere um arquivo de saída de acordo com um protocolo e com as necessidades de cada aplicação.
2 - Implementar um processador que, dado um arquivo de entrada em um determinado padrão, gere um arquivo de saída (pdf, odt, doc, txt) de acordo com a necessidade de cada aplicação.
3 - Verificar com os demais grupos as necessidades de processamento de arquivos texto. Desenvolver uma classe de processamento de arquivos texto.
Precisaremos saber dos demais grupos:

1 - Qual será o padrão do arquivo de saída que devemos gerar a partir do processamento do arquivo de entrada. Esperamos receber um padrão para este arquivo e a necessidade de informações de cada aplicação.
2 - Quais serão as necessidades de arquivos de saída que as aplicações precisarão. Podemos criar um padrão específico da entrada que desejamos receber para podermos gerar um arquivo de saída, se for o caso.

 

4: Planilhas (ods, xls, csv)

Nome: Spreadsheet

Sigla: SS

Integrantes: Diogo Haruki, Jackson, Fernando Omar

Líder: Diogo Haruki <dkykuta+poo2014 arroba gmail ponto com>

Plano de trabalho:

  • Implementar uma classe para armazenar os dados de uma planilha;
  • Implementar um "extrator", que vai tirar os dados da planilha e colocá-los em um objeto da classe acima;
  • Se planilha for um tipo de saída, então precisaremos criar um modo inteligente de gerar a planilha com os dados (provavelmente um builder);
  • Imaginamos que as planilhas serão da forma: primeira linha é o cabeçalho, cada coluna correspondendo a um atributo da classe; as próximas n linhas são n objetos, contendo os atributos do cabeçalho. Pode ter varias abas, cada aba uma lista diferente;

Perguntas para os outros grupos

  1. Planilha será um dos modos de saída?
  2. Para todos os grupos que pensam em usar planilha (tanto como entrada como saída): a forma da planilha se enquadra no seu caso? Caso não se enquadre, precisamos de uma descrição de como estariam organizados os dados nela e, se possível, um ou mais exemplos.

 

5: Gráficos

Integrantes: Paulo Mei (PM), Willian Constâncio (WC), Renan Teruo (RT)

Nome: Graph Generator

Sigla: GG

Líder: Paulo Mei (paulo.mei@usp.br)

Plano de trabalho:

  1. Definir objetos e interfaces do gerador
  2. Implementar o gerador de grafícos para gráficos de barra.
  3. Implementar o gerador para outros tipos de gráficos (torta, linha, etc...)
  4. [+] Implementar um serviço que mescla/cruza gráficos de um mesmo tipo. Este provavelmente involverá o grupo de processadores.

 

6: Web

Integrantes: José Rodrigues, Bruno Endo, Gustavo Caparica, Julio Delgado

Líder: Gustavo Caparica (gustavo.caparica@gmail.com)

Plano de trabalho:

  • Conversar com os outros grupos e definir como será a entrada e a saída e a API para requisição e geração de páginas.
  • Verificar e estudar bibliotecas existentes do Squeak para manipulação, geração e requisição de páginas web (por exemplo Seaside).
  • Conversar com os outros grupos para definir se precisamos criar outros métodos auxiliares (por exemplo para selecionar o conteúdo de um tag específico da página).
Nota: Se o seu grupo precisa de algo relacionado à web, que não foi mencionado acima, mande um email para o Gustavo.

 

7: Filtros

Integrantes: Larissa Moraes (LM), Yoshio Mori (YM), Carlos Ribas (CR)

Líder: Larissa Moraes (larissam@ime.usp.br)

Nome: GODFilter

Sigla: GF

Plano de trabalho:

  • Obter os dados que foram coletados pelos grupos dos mecanismos de entrada. 
  • Identificar quais serão os filtros necessários pelas equipes de aplicações. 
  • Pesquisar métodos de filtragem (ex: expressões regulares).
  • Criar um padrão para filtrar informações de diferentes entradas para que elas possam alimentar as consultas realizadas pelas aplicações.
  • Definir quais atributos serão necessários para filtrar informações de redes sociais (ex: data, hashtag). 

Dependências:

- Dados gerados pelos seguintes mecanismos de entrada:

  • Emails Facebook/Twitter 
  • Arquivos de textos 
  • Planilhas 
  • WEB/RSS 

 

8: Processadores

Integrantes: Fábio Kaspar (FKP), Fernando Bizzotto (FB), Thiago Dias (TD)

Líder: Fernando Bizzotto (fernando.bizzotto@usp.br)

Nome: GODProcessor

Sigla: PCS

Plano de trabalho:

  • Definir especificamente os tipos de processamento a serem realizados

  • Definir os fluxos de dados para a comunicação (entrada e saída) com as aplicações (o que receber dos filtros, o que enviar para as aplicações) e com os possíveis formatos de entrada (E-mails, arquivos texto, planilhas) 
  • Definir técnicas estatísticas para uso das aplicações (desvio-padrão, média, intervalo de confiança, histograma, testes de hipótese [ex: teste z, teste t, teste dos sinais, teste de soma de rankings de wilcoxon])

Grupos associados:

  • Filtros: Os filtros recebem diretamente da entrada ou trabalham juntos com os processadores? O que difere a atuação dos dois ?

  • Análise de sentimento para consumo
  • Análise de redes sociais para sentimento político
  • Banco de Dados: O processamento é feito sobre o BD? Precisaremos gravar no BD as informações processadas ?

 

9: Banco de Dados

Integrantes: Lucy Choque Mansilla(LACM), Silvia Scheunemann(SS), Luciana Souza(LS)

Líder: Lucy Choque Mansilla (lucyacm2@gmail.com)

Nome: GODBases 

Sigla: GDB

Plano de trabalho:

- Identificar e organizar a informação  a ser armazenada no banco de dados.
- Identificar objetos, tipos de informações para cada objeto e  relações entre eles.
- Modelar a estrutura do banco de dados. 
- Implementar o banco de dados, considerando um controle de acesso aos dados.
- Criação e testes de backup para garantir a recuperação dos dados.

Grupos associados:

- Todos os grupos do GOD, pois todos vão precisar armazenar e/ou fazer uso de informação relevante.


 10: Análise de sentimento para consumo

Nome: ConsumptionAnalysis (pacote SentmentAnalysis)

Sigla: CA

Integrantes: Ana Luísa de Almeida Losnak (ALAL), Daniel Paulino Alves (DPA), Rafael Batista Carmo (RBC)

Líder: Ana Losnak (ana.losnak@usp.br)

Plano de trabalho:

0. Definir uma convenção para o recebimento de dados obtidos por outros grupos e a formatação dos resultados da nossa análise de consumo.

1. Receber dados extraídos de redes sociais, etc formatados segundo tal convenção previamente definida.

2. Repassar os dados para filtragem referente ao produto especificado pelo usuário.

3. Receber os dados filtrados e enviá-los junto com um dicionário de sentimentos positivos e negativos para os processadores.

4. Gerar grafos e planilhas com os resultados obtidos.

Grupos associados:

  • Facebook/Twitter: 1
  • Filtros: 2
  • Processadores: 3
  • Gráficos e Planilhas: 4

 

11: Análise de redes sociais para sentimento político

Nome: PoliticalAnalysis (pacote SentimentAnalysis)

Sigla: PA

Integrantes: Arthur Branco Costa (ABC), Daniel Costa Bucher (DCB) e Diego de Araújo Martinez Camarinha (DAMC)

Líder (e-mail):

Daniel Costa Bucher (daniel.bucher88<arroba>gmail<ponto>com)

Plano de trabalho:

  1. Definir um dicionário com o nome dos candidatos e dos partidos políticos (dados do TSE)
  2. Definir um dicionário de termos que representam sentimentos positivos e negativos
  3. Receber nome de um partido ou candidato, rede social e formato de saída
  4. Receber postagens de redes sociais (Twitter e Facebook)
  5. Filtrar uma combinação dos itens anteriores, com base no candidato ou partido escolhido pelo usuário
  6. Analisar os resultados obtidos
  7. Gerar saídas padronizadas para futura visualização dos dados

Grupos associados:

  • Web: 3
  • Twitter/Facebook: 4
  • Filtros: 5
  • Processadores: 6
  • Planilhas e Gráficos: 7

 

12: Agregador de Informações Acadêmicas

Integrantes (sigla): Ígor Bonadio (IB), Renato Cordeiro (RCF), Ruan Costa (RMC)

Líder: ígor Bonadio - ibonadio <arroba> ime <ponto> usp <ponto> br

Nome do grupo (sigla): God Academics (Acad)

Plano de trabalho:

  1. Extrair dados de 4 fontes na Web (Google Scholar, Web of Science, Microsoft Academic Search, CAPES WebQualis);
  2. Cruzar os dados com base no perfil do Google Scholar (passado pelo usuário);
  3. Gerar estatísticas de citações, fator de impacto, etc;
  4. Criar uma representação visual das informações.
Grupos associados:
  • Web/RSS: 1 e 4
    - Acessar o código-fonte HTML das páginas web;
    - Fazer requisições (buscas de um artigo dentro de um site);
    - Exibir página gerada.

  • Gráficos: 4
    - Gerar um gráfico (em formato de imagem) a partir de tabela com dados.  

 

13: GOD's Call

Integrantes: Fabrício Caluza Machado (fabcm), Camila Miyuki de Sousa (cms), Phablo Fernando Soares Moura (pfsm)

Líder: Fabrício Caluza Machado  fabcm <arroba> ime <ponto> usp <ponto> br

Nome do grupo (sigla): God's Call (Call)

Plano de trabalho:

[1]. Combinar as informações de diferentes fontes (WikiCFP, ConfSearch, Microsoft Academic Search, lista de classificação da CAPES-Qualis) e criar uma lista de conferências com informações como Deadline, Palavras-Chave, Área, Ratings, Conceito Qualis. Permitir buscas por nome de conferência, período de deadline e data de realização.

[2]. "Nuvem de palavras-chave" de uma conferência. Gerar uma núvem de palavras a partir das palavras-chave das publicações que são apresentadas na conferência.

[3]. Gráficos de conferências com número de citações, de artigos publicados, etc...

[4]. "Grafo de conexão" de conferências. As conferências são vértices, e existe uma aresta entre dois vértices se as conferências correspondentes possuem palavras-chave em comum. 

[5]. Fornecer histórico do tempo (Wikipedia), hotéis (Booking.com) e pontos turísticos (TripAdvisor) perto do local da conferência.

Grupos associados:

-- Web: Obter informação sobre as conferências (local, prazos, palavras-chave, número de publicações e de citações) nas fontes mencionadas em [1] e [5] e gerar a página web para exibir os dados.

-- Banco de dados: Salvar e buscar dados de conferências.

-- Gráficos: [2], [3] e [4].