domingo, 29 de novembro de 2015

Atividades realizadas


  • O integrante Alex finalizou o manual técnico e concluiu a modelagem do banco de dados;
  • A justificativa para se usar o banco de dados orientado a grafos também foi finalizada pelo Alex;
  • As métricas foram finalizadas ontem pelo Alex também, e já foram incluídas na documentação;
  • Houve teste de funcionalidades do sistema, e o que foi pontuado para ser executado pelo Raphael, foi feito e testado hoje, em uma reunião do grupo em que constava os seguintes integrantes: Alex, Gabriela, Luis e Raphael;
  • A documentação já está a um passo de ser finalizada só precisando ser feita uma consolidação dos testes funcionais executados e dos cronogramas previstos e realizados finalizados.
  • As telas foram entregues com algumas modificações e também foram testadas pelos integrantes da equipe;
  • Após a reunião ficou definido que o Raphael teria que tratar de um erro do javascript que não havia sido sanado pela Yasmin, e isso já foi feito.
A fazer:
  • A Yasmin ficou responsável pelo teste de usabilidade, embora haja pouco tempo;
  • Raphael verificará questões relativas as máscaras;
  • Devo fazer uma revisão detalhada da documentação e do manual técnico;


segunda-feira, 23 de novembro de 2015

Justificativa para o banco de dados orientado à Grafos - Graph Database (GDB)

Ficou acertado ontem, 23/11, que precisamos investir um tempo considerável para construirmos uma melhor defesa para o uso de banco de dados orientado à grafos em nossa solução.
Já pesquisamos por artigos de diversas partes do mundo, em especial os indianos. Esta defesa será feita por mim, Alex e pelo Vedolin, que sairá do desenvolvimento por dois dias, tempo julgado suficiente pela nossa equipe para construir um texto condizente com nossa realidade, visto que já pesquisamos por diversas fontes bibliográficas.

Reunião 23/11/2015

Fizemos (Alex, Gabriela, Vedolin e Yasmin) nova reunião ontem, 23-11, para avaliar quais tarefas foram entregues conforme o prazo combinado. O quadro abaixo é o mesmo apresentado no post da reunião do dia 19-11, com a coluna do status adicionada.
Foi efetuado teste funcional durante a aula, onde conseguimos mostrar alguns avanços em relação à última reunião:

Testes realizados:

  • Cadastro de voluntário;
    •  Teste com inserção de dados corretos.
    •  Teste com inserção de dados inválidos.
  • Cadastro de ONG;
    • Teste com inserção de dados corretos.
    • Teste com inserção de dados inválidos.
  • Autenticação;
  • Pesquisa por voluntários;
  • Pesquisa por ONGs.

Resultados 
  • O website ainda não tem a opção para cadastrar tarefas pela interface;
  • O cadastro de voluntário apresentou um problema no atributo gênero, mas efetuou o cadastro. Esta falha já está sendo tratada;
    • O cadastro ainda não faz tratamento de erros para inserção de dados inválidos.
  • A autenticação funciona, mas é preciso inserir na tela mais um campo de confirmação de senha, no momento do cadastro;
  • Não foi possível testar as restrições de acesso por determinado tipo de usuário;
  • Não há controle para os dados inseridos em cada campo. Ao inserir um dado que o campo não espera, o mesmo apresenta erro e o website cai. Não envia resposta ao usuário apontando o motivo;
  • Uma função que não era aguardada para esta entrega e foi implementada é a ‘Declarar interesse por uma tarefa’. Esta opção já funciona para o voluntário, enviando e-mail com o aviso do interesse manifestado;
  • Todas as pesquisas estão operacionais, mas não enviam mensagens de aviso quando um campo é preenchido com dados inválidos;
  • Os itens que estão ok ainda aguardam tratamento na aparência das telas, através de javascript e css. A aparência das telas ainda não está de acordo com o solicitado pelos demais integrantes da equipe;


Atividades
Prioridade
Responsável
Data de entrega prevista
Status
Cadastrar ONG
1
Raphael
23/nov
Ok
Cadastrar tarefa
1
Raphael
23/nov
Não Ok
Cadastrar voluntário
1
Raphael
23/nov
Não Ok
Autenticação
1
Raphael
23/nov
Não Ok
Restrições de acesso (cadastro de tarefa liberado só para ONG)
1
Raphael
23/nov
Não Ok
Busca geolocalização ONG
1
Vedolin
23/nov
Ok
Busca geolocalização Voluntário
1
Vedolin
23/nov
Ok
Busca filtro ONG
1
Vedolin
23/nov
Ok
Busca filtro Voluntario
1
Vedolin
23/nov
Ok
Busca campo livre ONG
1
Vedolin
23/nov
Ok
Busca campo livre Voluntário
1
Vedolin
23/nov
Ok
Quantidade de tarefas ONG
1
Vedolin
23/nov
Ok
Quantidade de tarefas Voluntário
1
Vedolin
23/nov
Ok


sexta-feira, 20 de novembro de 2015

Reunião 19/11/2015

Fizemos uma reunião ontem, 19/11, no IFSP, para atribuir os responsáveis pelas tarefas no desenvolvimento do website. 

O seguinte quadro foi elaborado para facilitar o entendimento de todos os envolvidos.
Atividades
Prioridade
Responsável
Data de entrega prevista




Cadastrar ONG
1
Raphael
23/nov
 * Mensagem de obrigatoriedade
1
Raphael
23/nov
Cadastrar tarefa
1
Raphael
23/nov
Cadastrar voluntário
1
Raphael
23/nov
Autenticação (falta a senha)
1
Raphael
23/nov
Restrições de acesso (cadastro de tarefa só par ONG)
1
Raphael
23/nov
Busca geolocalização ONG
1
Vedolin
23/nov
Busca geolocalização Voluntário
1
Vedolin
23/nov
Busca filtro ONG
1
Vedolin
23/nov
Busca filtro Voluntario
1
Vedolin
23/nov
Busca campo livre ONG
1
Vedolin
23/nov
Busca campo livre Voluntário
1
Vedolin
23/nov
Quantidade de tarefas ONG
1
Vedolin
23/nov
Quantidade de tarefas Voluntário
1
Vedolin
23/nov

Atividades que dependem das anteriores e ainda não possuem responsável:
  • Declarar interesse e disparar alerta
  • Batch automático
  • Inicializar buscas com características do usuário
  • Avaliação do voluntário pela ONG e o contrário também
  • Utilizar filtros inseridos por usuários previamente para novas pesquisas


quinta-feira, 19 de novembro de 2015

Limitação da view contornada

Uma ação que deve ser resolvida na view estava atrapalhando o desenvolvimento de controllers e models. Por causa dessa limitação a inserção de dados só ocorria por script.

Resolvi o problema de receber e devolver os dados para a view. Falta replicar e especialmente formatar.
E sim, eu estava ouvindo Iron Maiden no VLC.

Andamento do projeto

Ontem, 18-11, fizemos uma reunião entre as apresentações dos grupos de PGP, para alinhar os avanços que o projeto teve após nossa apresentação.

Sobre o desenvolvimento do site, não houve avanços desde 11-11, dia em que apresentamos nosso projeto aos professores. Para esclarecer o que temos funcionando até o momento, seguem os requisitos funcionais com seu devido detalhamento:


Sobre a documentação, os avanços foram os seguintes:

Gabriela:

1. Gerenciamento: Cronogramas já feitos, com modelo mais "visual" pelo excel.

2. Recursos Humanos: Finalizado, com mais tabelas explicando mais sobre as atividades desenvolvidas por cada integrante
3. Escopo: Requisitos atualizados, com nova EAP. Ainda em pesquisa para descrever melhor a estrutura.

4. Riscos: Ainda não reformulado, vai conversar comigo sobre umas questões. Mas já está elaborado e possivelmente terá uma tabela central e outras tabelas falando sobre cada risco especificamente.
5. Dificuldades e falhas: Transcrita cada dificuldade/falha encontrada para tabelas também. 
6. Lições aprendidas: reformulado o que havia na documentação.

--> Atividades futuras
* terminar gerenciamento de riscos.
* fazer as correções pontuadas na documentação (início na sexta-feira, término no domingo. Lembrando que temos em mãos os documentos do Ivan e da Julia. O professor Bernardo utilizará o dele para posterior comparação às alterações.)

Alex:

1. Cuidarei do manual técnico, com apoio no desenvolvimento junto ao Vedolin. Ainda em construção.
2. Métricas - Estão com os gráficos e estrutura prontas, mas ela é atualizada conforme o avanço do projeto. Logo, ficará pronta no último dia de desenvolvimento.

3. Inclusão de ítens faltantes do referencial teórico:
        Estou trabalhando junto ao Vedolin para levantarmos bibliografias que justifiquem os motivos quais utilizamos um banco de dados orientado à grafos.
        Será incluído ao referencial teórico uma explicação sobre: Organogramas e Milestones.
        






Requisito funcional completado

Requisito funcional completado: o sistema deve informar a quantidade de tarefas existentes a partir dos filtros optados.


quarta-feira, 18 de novembro de 2015

Diagramas de Bachman



Ontem descobri coisas bem interessantes sobre manipulação de dados na "idade do byte lascado". A novidade da multiprogramação, Codd, Bachman, IBM, GE, Turing Awards...

"Data Structure Diagrams", de Bachman em 1969; "A Relational Model of Data for Large Shared Data Banks", por Codd em 1970; "The Programmer as Navigator", novamente Bachman, em 1973 e "The Entity-Relationship Model - Toward a Unified View of Data", de Chen, em 1976. Tive apenas um vislumbre. Sinto-me Kedalion, ainda servo de Hefaistos.


terça-feira, 17 de novembro de 2015

Disco da máquina virtual ocupando mais espaço do que o esperado?

Ok, eu criei o disco virtual como dynamic expanding, podendo chegar no máximo a 30GB. Ele está agora ocupando 15GB de esoaço real, mas seguramente isso não está ocupado "de verdade".

Após o shrink o disco virtual passou a ocupar 9GB.

As  instruções estão aqui: https://www.maketecheasier.com/shrink-your-virtualbox-vm/

Nota: Atenção ao sistema de arquivos. O exemplo mostra ext3; o meu é ext4.

segunda-feira, 16 de novembro de 2015

Filtros de restrição implementados

Conversa no whatsapp; aviso de que o problema está contornadoFiltro por Vacinação ou Programação, cypher correspondente exibidaDepois de um atraso grande para consertar o problema da integração dos maps e do SVN e fazer o sistema voltar a funcionar (custou mais de um dia de trabalho), finalmente os filtros de restrição estão funcionando.

Ainda estão meio frágeis, mas já podem ser utilizados. Precisam de proteções de funcionamento.

O atraso vai se refletir nas tarefas posteriores...
Anyway, o mais importante é criar modelos que possam ser replicados o mais rápidamente possível.
Neo4j mostrando resultados de query para relações do criador da tarefa 'Leitura'



domingo, 15 de novembro de 2015

Reunião 15/11/2015

Fizemos uma reunião (Alex, Gabriela e Vedolin) hoje, 15/11 entre 11:00hs e 12:00hs, onde definimos algumas atividades pendentes para conseguir entregar o projeto até a data limite.
Sobre os questionamentos dos professores e o que consideramos ainda incompleto, seguem as definições:

Atribuição: Vedolin
  • Modelo Implementação físico - início em 15/11 e término em 16/11
  • Diagrama de Classes - início em 17/11 e término em 17/11
  • Diagrama de Sequência: sem data prevista até o momento para início.

Atribuição: Alex
  • Justificar os motivos que nos levaram a utilizar o banco de dados orientado à grafos, com referências. Foi acertado que as pesquisas serão por temas de Engenharia de Software, trazendo para nossa aplicação a justificativa que nosso website é vivo, com evolução constante e potencial para crescer.
  • Início em 16/11 e término em 20/11.


Atribuição: Gabriela
  • Gerar e atualizar cronogramas conforme as atividades forem sendo cumpridas, delegar tarefas à equipe de desenvolvimento e acompanhar o progresso.
  • Trabalhar mais focada na documentação do gerenciamento, uma vez que essa função foi transferida para ela.
Atribuição: Raphael
  • Dar continuidade ao desenvolvimento:
    • Implementar o Login;
    • Replicar as pesquisas de Tarefas para Voluntário e ONGs;
    • Filtros por restrição;
    • Gerar alertas aos usuários;
    • Declarar interesse por tarefas;
    • Avaliar ONGs 
    • Executar batches automáticos.
  • Sem data definida para término, mas o desenvolvimento já se iniciou.
Testes
Será efetuada uma reunião amanhã, 16/11, para definir como serão executados os testes funcionais, automatizados e unitários.

Os demais integrantes foram avisados por email, enviado pela Gerente.


Entrega de Atividades

Em nossa última reunião, ficou acertado que as telas seriam entregues até ontem, 14-11 às 17:00hs, com os templates já em funcionamento, comunicando com o modelo.

  • A atividade foi entregue pela responsável (Yasmin), porém ao acessar as telas alteradas, não houve mudanças em relação à última entrega (a mesma apresentada aos professores em 11-11), então o teste não foi possível.
    • Foi enviado email à Yasmin pelo Vedolin solicitando auxílio nas adequações dos códigos novos ao website. Até o momento, não houve resposta.
  • O SVN esteve fora do ar por algum tempo, então estivemos controlando as versões pelo Google Drive, com as alterações sendo feitas em cada máquina dos integrantes individualmente. 




sexta-feira, 13 de novembro de 2015

quinta-feira, 12 de novembro de 2015

Alinhamento após apresentação

Hoje conversamos todos sobre as críticas recebidas após a apresentação do projeto. De fato, ocorreu uma má distribuição de tarefas para a equipe do desenvolvimento, onde deixamos a responsabilidade em cima de um único integrante, e os outros dois atuando como coadjuvantes. 
Sendo assim, os comentários dos professores a respeito do nível em que estava o desenvolvimento do projeto era fundado.
O fato é que conseguimos nos acertar, e as responsabilidades foram passadas da seguinte forma:

  • Yasmin cuidará do layout da página, sob responsabilidade de encontrar um template apresentável para nossa solução.
  • Raphael assumirá a parte de desenvolvimento, para atingirmos mais metas e chegarmos num nível aceitável para levar aos clientes.
  • Alex, Gabriela e Luis à Pretendemos elaborar nova proposta com o que temos e o que possivelmente teremos pronto até a data da entrega final do projeto, apresentar aos orientadores, solicitar sugestões quanto às prioridades e entender o que falta realmente.
    • No demais, foco no documento, elaboração de métricas o mais fidedigno possível à realidade, um modelo melhor representado para justificar a opção por banco de dados orientado à grafos e correção dos erros apontados ao longo do documento.

Por que Neo4j?

Preciso embasar a minha opção por um modelo de banco de dados diferente do usual, em especial no contexto do projeto.

Tenho vários motivos, mas a maioria são de autoria do grupo criador do Neo4j. Estou à procura de trabalhos acadêmicos sobre o tema. E estou indo e vindo no rascunho. Preciso adotar um modelo de construção de argumentação, ou acabarei com uma colcha de retalhos, em vez de uma pesquisa dirigida e referenciada.

O que eu pensei foi no que a plataforma poderá fornecer posteriormente: insights sobre como as pessoas envolvidas no voluntariado se relacionam; que tipos de tarefas,ONGs, locais elas preferem? Há um padrão? Uma vez descoberto um suposto padrão, será possível melhorar os resultados obtidos pelas ONGs? Será possível encontrar padrões que resultem em voluntários aceitarem tarefas em áreas que não foram explicitamente escolhidas por eles?

É claro que o material publicado pelo fabricante favorece seu produto. Parte do meu trabalho será verificar as informações publicadas de maneira científica.

Mehak Gupta parece ter trilhado boa parte do caminho. Ainda não li com calma: http://dspace.thapar.edu:8080/dspace/bitstream/10266/2800/1/801231017_mehak_gupta.pdf

Temos acesso ao IEEE a partir do IFSP?

http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=7154801&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D7154801
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=true&tp=&arnumber=6691765&url=http%3A%2F%2Fieeexplore.ieee.org%2Fstamp%2Fstamp.jsp%3Farnumber%3D6691765
 http://search.proquest.com/openview/d2f859b043e1763566aca21bc177c8a7/1?pq-origsite=gscholar
http://dspace.thapar.edu:8080/dspace/handle/10266/2800


E estes são os artigos:

http://neo4j.com/developer/graph-database/
http://neo4j.com/blog/why-graph-databases-are-the-future/
http://neo4j.com/blog/database-model-comparison/
http://neo4j.com/blog/why-nosql-databases/
http://neo4j.com/blog/acid-vs-base-consistency-models-explained/
http://neo4j.com/blog/data-modeling-basics/
http://neo4j.com/developer/guide-data-modeling/ 
http://neo4j.com/blog/data-modeling-pitfalls/

http://neo4j.com/blog/five-signs-to-give-up-relational-database/
http://neo4j.com/blog/rdbms-sabotage-query-performance/
http://neo4j.com/blog/nasa-lesson-learned-database-using-neo4j-linkurious/
http://neo4j.com/blog/the-secret-to-more-efficient-data-science-with-neo4j-and-r/ 
http://neo4j.com/blog/navigating-heart-failure-map-with-neo4j/
http://neo4j.com/blog/history-and-future-of-graph-data/
http://neo4j.com/blog/predict-information-system-incidents-neo4j/
http://graphgist.neo4j.com/?_ga=1.259849293.611163778.1439578342#!/gists
https://strendly.wordpress.com/2015/04/01/graph-database-neo4j-on-aws/
http://www.healthmgttech.com/using-graph-technology-to-fight-cancer