domingo, 31 de maio de 2015

Alterações necessárias no banco de dados, e possíveis soluções para alguns problemas encontrados.

Como já mencionado anteriormente pela aluna Vanessa Hayashida, eu (Márcia Ortiz), juntamente com a mesma, fizemos algumas alterações que se faziam necessárias no Banco de Dados e, junto com o Vitor Guastala e o professor André Bicudo, procuramos soluções para resolver alguns problemas encontrados.
O principal problema era sobre os relacionamentos entre as tabelas arquivo, publicacao_livro, proposta_estagio e notificacao, e a possível solução que encontramos, é criar uma tabela publicacao com um id próprio e que receba as id's das tabelas relacionadas a algum tipo de publicação.

Continuação da camada Model

Essa semana eu e o Vítor (principais responsáveis pela programação do projeto) continuamos o desenvolvimento da camada model do nosso sistema, camada essa que terá quando terminada todos os métodos getters e setters das entidades do banco de dados.

Teste da força da senha

Nesta semana fizemos a consistência com Javascript para testar a força da senha, onde não é permitido senhas "fracas".
As senhas precisam ter mais que 6 caracteres, e classificam como fraca senhas que contenham apenas números consecutivos como "123456".

Finalização do DFD

Durante essa semana foram realizadas as devidas correções no DFD, para que coloquemos o mesmo na pasta de TSPD. E nessa semana também foi realizada um previa da apresentação do sistema para o professor Rodrigo.

Conclusão de DFD e início de produção da pasta de TSPD

Durante essa semana redefinimos o tamanho do DFD para caber em apenas uma página da pasta. 
Também fizemos a avaliação dos textos que estarão presentes no sistema. 

Levantamento de problemas, possíveis soluções e mudanças do banco de dados.

      Nessa semana houve o levantamento do seguinte problema, como relacionaríamos as tabelas arquivo, publicacao_livro, proposta_estagio e notificacao, já que o usuário(aluno) receberia notificações se um arquivo fosse postado para ele, quando um livro fosse publicado e fosse para sua série e quando algum professor publicaria algum estágio que fosse para sua turma.
      A possível solução para esse problema foi criar uma tabela(publicacao) que teria um id proprio, e os id's da tabelas arquivo, livro(que foi a mudança de nome da tabela publicacao_livro) e estagio(que foi a mudança de nome da tabela proposta_estagio).
      Com essa possível solução foi incrementado banco a tabela publicacao, a mudança de nomes de tabelas, publicacao_livro para livro e proposta_estagio para estagio.

Sistema de envio de fotos com corte

Nessa semana, finalizamos a parte da página de cadastro onde será possível enviar uma foto representativa para o perfil de usuário. Implementamos um sistema de corte de imagens e upload diretamente para um diretório presente no servidor.

Clique em detalhes para ver as imagens:

sábado, 30 de maio de 2015

Correção de Slides da Apresentação



Após nossa primeira apresentação, o professor Rodrigo nos informou alterações que deveriam ser feitas nos slides, e algumas dicas para a apresentação do grupo. As alterações nos slides consistiam na ampliação das imagens, que não conseguiam ser enxergadas pelo público. Já as dicas de apresentação foi não utilizar gírias, nem consultar papel durante a apresentação.

domingo, 24 de maio de 2015

Alterações no DER e Finalização do Script

Nesta semana, eu (Márcia Ortiz), juntamente com a Vanessa Hayashida, fizemos algumas alterações e inserimos novos atributos que se faziam necessários no DER do nosso sistema. Depois disso, acrescentamos essas informações no script do mesmo, que já havia sido começado anteriormente e o finalizamos. 

Início da programação.

Após várias discussões com os professores, eu e o Vitor (principais responsáveis por essa área do projeto) decidimos que as IDEs Zend Studio e Notepad++ serão as utilizadas para o desenvolvimento, tal que, a primeira nos computadores pessoais e a segunda nas máquinas do colégio. Outra pendência que foi decidida foi a não utilização de um framework, e que o sistema terá a estrutura MVC (Model, View, Control).
Com tudo decidido, nessa semana se deu o efetivo inicio da programação. As classes que estão sendo trabalhadas no momento são as da camada Model.

Finalização do DFD.

Durante essa semana eu(Giovanna Aquino) junto com a aluna(Maria Cecília) tivemos que fazer vários alterações no Diagrama de contexto a partir dele refizemos o nível zero e um, e finalizamos o nível dois. Dessa forma finalizamos o DFD, que será colocado na pasta de TSPD.

Conclusão do DFD

Durante essa semana terminamos o diagrama de contexto, nível zero, nível um e nível dois do projeto, com devidas alterações. 

sábado, 23 de maio de 2015

Consistência dos campos email e cpf

Nesta semana foi feito a consistência do campo email, onde e obrigatório ter apenas um "@" e pelo menos um "." após o arrouba.


Já no campo do CPF existe todo um algoritmo para obter os números, por exemplo, não pode existir registros com todos os números iguais (111.111.111.-11). Assim seguimos o algoritmo oficial, todas as regras estão presentes no link (http://www.geradorcpf.com/algoritmo_do_cpf.htm)



Finalização do script do banco de dados

Nessa última semana que se passou, desenvolvemos e terminamos o script da banco de dados. Durante o seu desenvolvimento, houve alterações que deveriam e foram realizadas. Essas alterações foram inclusões de campos nas seguintes tabelas: publicacao_livro, arquivo e proposta, e os campos que foram inclusos são de definições de data e hora.

Elaboração de Brainstorms

Nesta semana, eu (Kelvin Medeiros) e o líder (Vitor Guastala) começamos a elaboração do brainstorm bruto das páginas que estarão presentes no projeto. Precisamos nos organizar dessa maneira para garantir que não irá faltar nada e para facilitar o desenvolvimento de todas as partes que compõem sistema. Acreditamos que esse seja o ponta-pé inicial para definirmos como o sistema se comportará.

Clique em detalhes para ver as imagens:

Programação e Brainstorms de Páginas

Nesta semana, junto com o integrante do grupo Gabriel Moreli, ficou decidido que não usaremos nenhuma framework para a programação em PHP Orientado à Objetos, porém, utilizaremos o método MVC manualmente na programação. Para isso, estamos vendo vídeo-aulas para entender melhor esse método.

Segue a primeira vídeo-aula da série que estamos vendo:


Além disso, junto com o integrante Kelvin Medeiros, fizemos alguns brainstorms de algumas telas, os professores Celso e André Bicudo olharam os brainstorms e deram dicas para melhorá-los. As fotos desses brainstorms se encontram no post do Kelvin da semana.

domingo, 17 de maio de 2015

Diagrama de fluxo de dados - Nível zero

Durante a semana, finalizei o diagrama de contexto, que apresentava alguns erros na semana passada. 
Comecei, também, o nível zero do nosso DFD, nele, apresentamos os processos principais ligados ao nosso projeto (cadastro, arquivos, livros e estágio) e as entradas de dados relacionadas a cada um. 
O diagrama foi terminado e será mostrado para o professor Dalastti na próxima aula. 

Finalização da consistência da página Index

Nesta semana terminamos toda a consistência da página index.php, utilizando o javascript. No campo Matricula, só são aceitos números, já no campo senha, fizemos a consistência para somente aceitar letras e números, sem acentos ou caracteres especiais.

Banco de Dados - DER e Script

Como já mencionado anteriormente, eu (Márcia Ortiz), juntamente com a Vanessa Hayashida terminamos o DER (Diagrama de Entidades e Relacionamentos) do nosso banco de dados e com isso, demos início a criação do script do mesmo. 

Discussão sobre uso ou não de framework e qual IDE utilizar

Nessa semana, eu e o Vitor (maiores responsáveis pela programação do projeto), discutimos juntamente com os professores Rodrigo, Bicudo e Celso sobre qual o papel do framework na programação e se nós utilizaremos alguma em nosso projeto. O que foi decidido é que estudaremos algumas frameworks e que caso for possível entender o mecanismo, implementaremos em nosso projeto, todavia caso não for possível faremos toda estrutura manualmente.
Outra discussão foi a respeito da IDE que será utilizada para a programação, assunto esse  que ainda não foi decidido, estamos estudando qual é a melhor para o nosso projeto.

sábado, 16 de maio de 2015

Banco de Dados - Diagrama de Entidade e Relacionamentos e Script.

      Nessa última semana o Diagrama de Entidade e Relacionamento foi finalizado, com suas devidas entidades, cardinalidades, atributos e relações.
      Com a finalização do diagrama houve a possibilidade do início do script do banco, ou seja, pudemos dar início a criação da base de dados baseado no diagrama. Com sua criação, houve um auxílio para aqueles que criaram os campos da tela de cadastro. Vale ressaltar que o script da base de dados não está completo.

Click aqui para visualizar o DER


Diagrama de Fluxo de Dados e Nível zero

Durante essa semana foi finalizado o Diagrama de fluxo de dados, que a partir dele foi criado o nível zero do diagrama representa basicamente a composição do sistema,  apresentar uma visão global (geral) de como será composto o sistema.
Após a finalização do nível zero, será feito o nível um do sistema que representa partes específicas que irão compor o sistema, assim apresentando pontos do sistema que necessitam de mais detalhes. Logo abaixo segue foto do diagrama de fluxo de dados. 

 

Página de Cadastro

Nesta semana, iniciamos o design da página de cadastro e estamos averiguando como faremos para definir a bifurcação que será feita em relação ao cadastro de professores e alunos. Definimos que uma unica página servirá para ambos os tipos de pessoas e que os campos serão preenchidos de acordo com os dados presentes no banco. Segue o que temos até agora:



Framework e Vistoria

Nesta semana, eu (Vitor Fabrile Guastala), juntamente com Gabriel Moreli conversamos sobre como faríamos a programação PHP do projeto, uma vez que nos recomendaram utilizar algum framework para auxiliarmos, porém não sabíamos o que era, e nem como utilizá-lo. Portanto conversamos com os professores André Bicudo, Rodrigo Carvalho e Celso Kawashima, e eles nos explicaram. Ao fim, nos recomendaram utilizar o framework Laravel, e estamos estudando-o.
Além disso, averiguei o andamento do projeto em outras áreas, como design, banco de dados, diagrama de fluxo de dados, e consistência de dados, tirando as dúvidas dos integrantes do grupo e dando dicas para um melhor desenvolvimento.

domingo, 10 de maio de 2015

Padronização do Banco de Dados e discussão sobre o DER

Durante essa semana, eu (Márcia Ortiz), juntamente com a Vanessa Hayashida e Vitor Guastala, estabelecemos qual será o padrão das nomenclaturas utilizadas no nosso banco de dados e tivemos acesso ao banco similar ao do NSAC, banco de dados utilizado pelo colégio. 
Essa disponibilização nos auxiliou no processo de criação e discussão do nosso DER (Diagrama de Entidade e Relacionamento), e durante ele surgiram várias dúvidas. Então, nos reunimos com o professor Vitor Simeão, que nos deu uma visão mais ampla do nosso banco, tirando algumas duvidas a respeito das entidades e relacionamento que poderíamos utilizar por exemplo, e também com o professor André Bicudo, que nos deu uma visão mais simples com relação ao banco de dados que nos foi disponibilizado, nos ajudando a compreender alguns pontos que estávamos com duvidas, chegando assim, quase ao final do DER que será utilizado em nosso sistema.

Diagrama de Fluxos de Dados

Durante essa semana, eu (Giovanna Aquino Martins), e a outra integrante do grupo Maria Celia Gatti iniciamos a construção do diagrama de fluxo de dados referente ao nosso sistema, inicialmente estudamos o sistema para retirar conclusões das entradas e saídas do sistema, depois fizemos o diagrama de contexto, nele representamos o sistema recebendo e enviando informações (entradas e saídas) estudadas anteriormente.
Também foi finalizada a analise dos questionário, que a  partir deles foram criados gráficos que nos mostram o que os alunos e professores do CTI julgam referente a atual forma de venda de livros, upload de arquivos e divulgação de estágios.
 

Javascript

Está semana demos início a consistência de dados, feito através do Javascript. Assim, todos os campos que serão preenchidos pelo usuário no sistema, terá a consistência feita através do mesmo.
A página index.php já está quase pronta, exceto pela falta do bloqueio de caracteres especiais no momento do login.
Algumas dificuldades surgiram no uso da sintaxe de uso de funções, assim as dúvidas serão reunidas para os membros do grupo e professores ajudarem.

Estudo e análise da situação problema a ser abordada

Durante essa semana, em conjunto com a integrante Giovanna, filtramos os dados obtidos com os questionários e desenvolvemos gráficos.
O que esses gráficos abordam?
As dificuldades dos alunos em obter um bom serviço de disponibilização de arquivos, de venda de livros e de recebimento de propostas de estágio. Segue exemplo dos gráficos desenvolvidos:



Além disso, começamos o desenvolvimento do Diagrama de Contexto do nosso Diagrama de Fluxo de Dados. O Diagrama de Contexto tem como finalidade principal apontar todos os dados que entram ou saem do sistema e para onde cada um vai. Encontramos, entretanto, grande dificuldade para organizar os dados, levando-se em conta que possuímos 4 sistemas a serem representados (Livros, Arquivos, Estágio e o Cadastro do nosso sistema).

Banco de Dados - Diagrama de Entidade e Relacionamentos e Nomenclatura de Campos

No início da semana foi solicitado ao professor Celso a disponibilidade de banco de dados do colégio, o mesmo nos enviou um banco similar, com algumas tabelas do colégio e algumas com dados e outras sem.
Com essa disponibilização poderíamos terminar o Diagrama de Entidade e Relacionamento.
O DER ainda não foi finalizado, mas já está quase no fim.
Além do termino do diagrama pudemos estabelecer qual será o padrão utilizado em nosso banco, ou seja, qual será o padrão da nomenclatura dos campos do banco de dados.

Análise do design e banco de dados do sistema e início do desenvolvimento da programação

Nessa semana, eu (Gabriel Moreli) juntamente com o Vitor, analisamos o design feito pelo Kelvin, além do banco de dados, para que assim, pudéssemos dar inicio ao trabalho de programação.
Logicamente, a programação necessita de todo um projeto de lógica por trás, por isso só iniciamos a parte mais mecânica da programação, que seria a criação dos atributos e encapsulamento dos mesmos.

Estudo da Programação e Discussões Sobre o DER

Nesta semana, eu e o Gabriel, responsáveis pela programação até o momento, começamos a estudar a programação em PHP orientada a objetos, e percebemos que talvez não seja tão difícil, pois já sabemos programação orientada a objetos em outras linguagens, como Java e C#.
Porém não terminamos nossos estudos pois o DER não está pronto e, consequentemente, nosso banco também não está, então junto com a Vanessa e Márcia, discutimos sobre o DER. Encontramos diversas dúvidas, que foram tiradas com professores, e acreditamos já estar quase no fim do DER.

Logo Oficial Definida

Depois de algumas semanas com nossa logo provisoria, desenvolvemos mais algumas opções para verificar qual seria a que mais se enquadra na nossa equipe. Fizemos alguns testes encaixando-as no papel timbrado que iremos usar para a representação de nossos documentos e escolhemos a que mais se encaixou no quesito simplicidade, expressividade e significância. O resultado foi uma ideia que uniu a proposta inicial com algo bem mais enigmático.

Logo Oficial


Propostas Apresentadas


sábado, 2 de maio de 2015

Questionários

Com o objetivo de obter  maior clareza sobre as dificuldades que os alunos encontram na forma atual da divulgação de estágio, venda e compra de livros, e disponibilização dos materiais utilizados  pelos professores na sala de aula, criamos questionários diferenciados, para alunos e para professores. 
Para a elaboração destes questionários, dividimos nosso grupo em duas equipes: uma para os questionário dos professores e outra para o questionário para os alunos. Feito isso, entregamos para os mesmos responderem aqui no colégio, e estamos analisando as informações para saber qual será resultado.

A Liderança e a Divisão de Trabalho

Liderar um grupo é um trabalho complicado, sempre para realizar uma atividade em aula é preciso ter conhecimento do que será feito e ter conhecimentos de todos os membros do grupo, para que assim a atividade se encaixe com a pessoa que a realizará. Isso porque algumas pessoas possuem mais facilidade em relação à alguns tipos de atividades, e outras possuem mais dificuldade. É por isso que referente às atividades realizadas nesta semana, como líder, não obtive dificuldade na separação, uma vez que o grupo possui fortes e fracos que se completam.
As atividades realizadas nessa semana foram: correção da pasta de TSPD, distribuição dos questionário para alunos e professores, manipulação dos questionários respondidos, criação do DER, desenvolvimento do logotipo da empresa, além de reuniões com o grupo e com professores para definição do sistema.
Nesta semana, também definimos com o que cada pessoa ficará responsável em nosso projeto de modo geral, o grupo optou por dividir as tarefas, porém, apesar da divisão, é bem provável que todos os alunos participem de todas as funções listadas abaixo, principalmente na programação.

Segue abaixo o membro do grupo e sua principal função no projeto:

Gabriel Moreli: Programação em PHP do sistema.
Giovanna Aquino: Criação de conteúdo para pasta de TSPD.
Kelvin Medeiros: Desenvolvimento do Design do site e montagem da pasta de TSPD.
Márcia Ortiz: Administração do Banco de Dados, principalmente na retirada de dados do Banco para uso no sistema.
Maria Cecília Gatti: Busca de informações para desenvolvimento do sistema e para uso na pasta de TSPD.
Milena Veronezi: Consistência de dados em Javascript do site.
Vanessa Hayashida: Criação do DER e do Banco de Dados, além da administração do mesmo.
Vitor Guastala: Programação em PHP do sistema.

Sobre a definição do funcionamento final do sistema

Durante essa semanas, entramos no dilema de decidir como e com quais dados nosso programa funcionaria. Como, a priore, o sistema seria rodado em conjunto com o sistema da escola já existente (NSAC), decidimos por nos reunir com o responsável pela manutenção dele.
Marcamos, então, uma reunião com o Anderson, secretário da escola, para obter os dados necessário para iniciarmos a programação.

Ao conversarmos, ficamos sabendo, porém, que o sistema atual da escola passaria por uma atualização. Atualização essa que passaria a ser rodada em EXT (programação não aprendida durante o curso). Ficamos, então, com 3 opções de desenvolvimento:

  • Aprender e programar em EXT para desenvolver o sistema para implantação junto com o Anderson;
  • Programar um sistema semi-independente em php, html e Bootstrap (com programação de interface já iniciada) utilizando apenas alguns dados do banco do cti (tais como: nome, número de matrícula e classe/série) criando uma tabela de logins e senhas próprias, tendo que o aluno cadastrar no seu primeiro acesso uma senha para utilização. O link de redirecionamento para a página inicial estaria disponível dentro do NSAC;
  • Programar um sistema completamente independente, não utilizando nenhum dado do CTI, com linguagem igual à da proposta anterior, porém sem verificação possível de real matrícula do aluno na escola;

Ao termos resposta da banca do TCC, porém, foi escolhida uma quarta opção.
Como fica nosso programa, então?

Programado em PHP, HTML e Bootstrap, um sistema a parte ao da escola, com apenas um link dentro do NSAC e com dados da escola, mas não vinculados diretamente ao NSAC, cedidos pelo professor Celso, de PHP. 


Banco de dados/Diagrama de Entidades e Relacionamentos

Durante o primeiro bimestre deu-se início nosso Diagrama de Entidade e Relacionamento, porém como a ideia inicial era desenvolver o sistema e implementar ao sistema do colégio, o NSAC, teríamos que ter uma base do banco de dados do devido sistema.  Então para a resolução desse problema, entramos em contato com o professor Celso Kawashima para que o mesmo nos disponibilizasse os dados que precisaríamos.
Enquanto espera-se o retorno no professor, desenvolvemos o DER como se o sistema fosse totalmente independe do NSAC.

No momento, como ainda não temos os devidos dados, o nosso diagrama está incompleto.

Histórico Geral, Blog e Software para administrar tarefas

Com o intuito de ter todos os passos registrados, estamos desenvolvendo um Histórico Geral, onde o que aconteceu desde o princípio e o que está acontecendo em nosso projeto ficará registrado.
Outra forma de registro, é o nosso Blog, criado em 27 de abril de 2015, onde em todos os finais de semana os membros do grupo ficarão responsáveis por postar o andamento do projeto realizado por sua parte.
Além disso, nosso Professor André Bicudo sugeriu a ideia de um software que gerencie as tarefas realizadas pelo grupo. Estamos em busca dessa ferramenta que se adeque no perfil do projeto para assim ter melhor organização e resultados.

Atualização da pasta de TSPD

          Durante o primeiro bimestre houve a criação da pasta com o conteúdo inicial sobre o projeto. O professor André Luiz Dalastti indicou as seguintes correções:
  • Foto do xerox do CTI onde os professores disponibilizam o material para os alunos.
  • Captura de imagens referentes a e-mails enviados por coordenadores sobre oportunidades de estágio.
  • Redução do tópico “Cargos e funções”.


         As correções foram aceitas e realizadas pelos integrantes do grupo, os erros foram subdivididos entre os componentes do grupo para que cada um realizasse as devidas alterações, cada dupla ficou responsável por um cargo/função e as devidas alterações foram realizadas em aula. Já a foto ferente ao xerox do CTI a captura de tela do e-mail enviado pelo coordenador de curso, foram tirados durante o processo. No tópico “Proposta de Sistema” foi inserido o questionário que foi passado para os alunos e professores do CTI, com o intuito de sabermos o que os docentes e discentes acham de como é atualmente a venda de livros, oportunidades de estágio e upload de arquivos.


Design do sistema

A interface é uma parte fundamental do sistema, quando bem projetada atrai visualmente o usuário além de se tornar fonte facilitadora, da qual ele se comunica para realizar as tarefas desejadas. Sabendo disso, nosso grupo focou inicialmente no design a ser utilizado em nosso sistema, buscando desenvolver um layout fluido e de fácil entendimento, que facilitasse ao máximo a utilização pelos futuros usuários, porém enquanto desenvolvíamos, recebemos a notícia de que não poderíamos utiliza-lo pois como seria um sistema para o colégio, teria que utilizar o modelo padrão de design dos sites da UNESP. Contudo, dias depois, foi decidido após uma reunião pela banca, que o sistema não seria implantado, e logo, poderia ser utilizado o design proposto. Abaixo imagens do layout:

Desenvolvimento de logotipo

Nessa semana tivemos algumas ideias para o logotipo. O seu desenvolvimento está feito basicamente se inspirando na ideia do número 8. Os desenhos foram feitos a partir de formas geométricas presentes no editor vetorial. Desenvolvemos mais algumas propostas e, a partir da avaliação do professor Rodrigo, reestruturamos alguns estilos de fonte, tamanho e espaçamento. Todo o processo foi feito a partir do software Inkscape.