Otávio (discussão | contribs)
Linha 33: Linha 33:
* 2. Porque deve usar a tecnologia escolhida?
* 2. Porque deve usar a tecnologia escolhida?
** A tecnologia escolhida é:
** A tecnologia escolhida é:
**básica e essencial para o desenvolvimento web, ou seja, não é possivel utilizar outra;
***básica e essencial para o desenvolvimento web, ou seja, não é possivel utilizar outra;
**não essencial, mas de grande potencial, inovadora e de boa escalabidade;
***não essencial, mas de grande potencial, inovadora e de boa escalabidade;
* 3. Porque usar o hardware específico?
* 3. Porque usar o hardware específico?
**  
**  
Linha 63: Linha 63:


* 1. Onde os dados serão inseridos?  
* 1. Onde os dados serão inseridos?  
**Ele iniciará com uma parte parcial dos dados já em seu banco de dados e a cooperação posterior dos usuários será inserida através do próprio site.
** A plataforma iniciará com uma parte parcial dos dados já inserida no banco de dados e a cooperação posterior dos usuários será inserida através do próprio site.
* 2. Onde os dados serão externalizados, publicados?
* 2. Onde os dados serão externalizados, publicados?
** No site em questão.
** Os dados serão exibidos na plataforma em questão.
* 3. Onde esta aplicação poderá ser usada?  
* 3. Onde esta aplicação poderá ser usada?
** Em qualquer navegador disponível para o público.
** Em qualquer navegador disponível para o público.
* 4. Onde os dados serão armazenadas?  
* 4. Onde os dados serão armazenadas?  
** Em um banco de dados desenvolvido exclusivamente para uso do software.
** Em um banco de dados preparado exclusivamente para uso do software.
* 5. Onde o software deverá ser hospedado?  
* 5. Onde o software deverá ser hospedado?  
** Em um servidor.
** Em um servidor.
Linha 78: Linha 78:


* 1. Em quanto tempo pretende desenvolver o sistema?  
* 1. Em quanto tempo pretende desenvolver o sistema?  
** No nosso cronograma inicial planejamos concluir o protótipo do projeto em cerca de 4 meses.
** No cronograma inicial foi planejado concluir o protótipo do projeto em cerca de 4 meses.
* 2. Quais serão as fases e em quanto tempo cada uma?  
* 2. Quais serão as fases e em quanto tempo cada uma?  
** Pesquisa -> 3 semana
** Pesquisa -> 3 semanas
**Classificar questões -> 1 semana
**Classificar questões -> 4 semanas
**Criar a interface gráfica -> 1 semana
**Criar a interface gráfica -> 4 semanas
**Desenvolver a programação do site -> 2 semanas
**Desenvolver a programação do site -> 4 semanas
* 3. Qual o tempo de resposta do dispositivo ou do sistema?
* 3. Qual o tempo de resposta do dispositivo ou do sistema?
** Na ordem de segundos.
** Na ordem de segundos.
Linha 101: Linha 101:
**Desenvolver o código fonte;
**Desenvolver o código fonte;
**Desenvolver a interface gráfica;
**Desenvolver a interface gráfica;
**Configurar hospedagem e domínio;
**Realizar o deploy, ou seja, colocar o site no ar;
* 2. Como será feita a entrada de dados?  
* 2. Como será feita a entrada de dados?  
** Através do login e senha do usuário com privilégios de docente e do administrador, pois ambos podem anexar questões/provas ao sistema.
** Através do login e senha do usuário com privilégios de docente e do administrador, pois ambos podem anexar questões/provas ao sistema. Além disso, através de usuários com privilégios de aluno, para inserir a resolução de seus simulados.
* 3. Como será feita a saída de dados?  
* 3. Como será feita a saída de dados?  
** Através da saída das questões/provas e das notas para o usuário em questão.
** Através da saída das questões/provas e das notas para o usuário em questão.
Linha 108: Linha 110:
** Funcionalidades aplicadas a todos:
** Funcionalidades aplicadas a todos:
  ** Autenticar usuários;   
  ** Autenticar usuários;   
  ** Pesquisar questões/provas;
  ** Pesquisar questões/provas;
  ** Selecionar a categoria da questão/prova;
  ** Selecionar a categoria da questão/prova;
  ** Avaliar dificuldade da questão/prova em questão;
  ** Avaliar dificuldade da questão/prova;
  ** Ter acesso, quando permitido, ao gabarito da prova em questão.
  ** Ter acesso, quando permitido, ao gabarito da prova em questão.
** Funcionalidades aplicadas ao aluno:
** Resolver questões/provas;
** Visualizar relatórios de desempenho;


**Funcionalidades aplicadas ao docente:
**Funcionalidades aplicadas ao docente:
Linha 117: Linha 123:
  ** Criar grupos, internos ao site, de modo que ele possa enviar ou aplicar uma questão/prova para uma turma inteira;
  ** Criar grupos, internos ao site, de modo que ele possa enviar ou aplicar uma questão/prova para uma turma inteira;
  ** Inserir os alunos no grupo criado por ele;
  ** Inserir os alunos no grupo criado por ele;
** Visualizar relatórios de desempenho dos alunos da turma;


**Funcionalidades aplicadas ao administrador;
**Funcionalidades aplicadas ao administrador;
Linha 133: Linha 140:


* 1. Quanto custa cada parte do sistema?
* 1. Quanto custa cada parte do sistema?
** Estima-se que o custo do sistema sera basicamente com os operadores que vão desenvolve-lo, já que o sistema em questão é um site, além disso terá o custo com a hospedagem do mesmo em um servidor, que é um custo mensal que gira em torno de R$......
** Estima-se que o custo do sistema será, majoritariamente, com os operadores que vão desenvolvê-lo, já que o sistema em questão é um site. Além disso, existirá o custo com a hospedagem cloud do mesmo em um servidor, que é um custo mensal que gira em torno de R$250,00 e o custo com o domínio do site, que é um custo anual de R$30,00.
* 2. Quanto deverá custar todo o sistema?  
* 2. Quanto deverá custar todo o sistema?  
** O custo total do sistema ficará em torno de R$20.000.00.
** O custo total do sistema ficará em torno de R$85.000,00, uma estimativa para o salário médio da equipe durante os 4 meses + custos de domínio e hospedagem + margem de erro para possíveis necessidades técnicas.
* 3. Quantas pessoas deverão ser usadas (Equipe) ?   
* 3. Quantas pessoas deverão ser usadas (Equipe) ?   
**1 programador com domínio em interface gráfica;
**1 programador com domínio em interface gráfica;
Linha 142: Linha 149:
**1 programador com experiencia em desenvolvimento de websites;
**1 programador com experiencia em desenvolvimento de websites;
* 4. Quanto custa cada profissional?
* 4. Quanto custa cada profissional?
**1 programador com domínio em interface gráfica R$5.000.00;
**1 programador com domínio em interface gráfica R$5.000,00;
**1 programador com domínio em banco de dados R$5.000.00;
**1 programador com domínio em banco de dados R$5.000,00;
**1 programador com domínio em servidor R$5.000.00;
**1 programador com domínio em servidor R$5.000,00;
**1 programador com experiencia em desenvolvimento de websites R$5.000.00;
**1 programador com experiencia em desenvolvimento de websites R$5.000,00;
* 5. Qual deverá ser o preço de aquisição do seu software para o usuário final (Valor de mercado)?   
* 5. Qual deverá ser o preço de aquisição do seu software para o usuário final (Valor de mercado)?   
** O site não será vendido ao usuário, será disponibilizado de maneira gratuita, arrecadando fundos apenas com marketing/patrocínio.
** O site não será vendido ao usuário, será disponibilizado de maneira gratuita, arrecadando fundos com marketing/patrocínio ou, caso o professor deseje, pela opção de cobrar por simulados, onde a plataforma receberá uma porcentagem do valor cobrado.
<br>
<br>



Edição das 12h55min de 1 de outubro de 2015

5W2H


What


  • 1. Qual o nome do seu projeto?
  • 2. Qual o objetivo deste projeto?
    • O objetivo do projeto é auxiliar professores e instrutores a aplicarem simulados de exames e provas a seus alunos a partir de uma plataforma online e acompanharem o resultado de cada um de maneira mais fácil e rápida. Tudo isso, sem que o professor tenha custos altos ou até mesmo custo nenhum.
  • 3. Quais os maiores desafios, na sua opinião, para se realizar este trabalho?
    • Manter a conexão instantânea de notificações de alunos que realizaram o simulado;
    • Escalar o banco de dados para armazenar questões de simulados e permitir que diferentes professores compartilhem de mesmas questões e/ou provas inteiras;
  • 4. Quais os conhecimentos básicos que devemos ter para se implementar este projeto?
    • Entender como se dá a aplicação de simulados;
    • Tecnologias de desenvolvimento web (HTML5, CSS3, JavaScript, Frameworks, etc);
    • APIs;
    • Cloud hosting;
    • Configuração de domínio e DNS;
    • Tecnologias de Banco de Dados (NoSQL, SQL, etc) e Bancos de Dados existentes (MySQL, PostgreSQL, MongoDB, etc).
  • 5. Quais soluções similares existem no mercado?


Why


  • 1. Porque é interessante desenvolver este projeto?
    • Existem poucas soluções com o mesmo propósito;
    • As soluções existentes cobram caro e são inviáveis para professores/cursos com pequenas turmas.
  • 2. Porque deve usar a tecnologia escolhida?
    • A tecnologia escolhida é:
      • básica e essencial para o desenvolvimento web, ou seja, não é possivel utilizar outra;
      • não essencial, mas de grande potencial, inovadora e de boa escalabidade;
  • 3. Porque usar o hardware específico?
  • 4. Porque usar o sistema específico?
    • A plataforma web é a mais fácil de se disseminar o projeto, visto que todos os dispositivos que se conectam à internet são capazes de abrir páginas web;


Who


  • 1. Quem pode se beneficiar deste projeto?
    • Professores e instrutores;
    • Administradores de cursos/escolas;
    • Responsáveis por correção e análise de provas dos alunos;
  • 2. Quem poderá operar o sistema?
    • Qualquer usuário interessado em aplicar simulados, utilizando funções para este fim;
    • Alunos, utilizando funções para receber simulados e realizá-los;
    • Administradores do sistema, com privilégio de uso de qualquer função;
  • 3. Quem deverá participar do desenvolvimento do sistema?
    • Desenvolvedores back-end (lado do servidor) para web;
    • Desenvolvedores front-end (lado do browser) para web;
    • Administradores de banco de dados;


Where


  • 1. Onde os dados serão inseridos?
    • A plataforma iniciará com uma parte parcial dos dados já inserida no banco de dados e a cooperação posterior dos usuários será inserida através do próprio site.
  • 2. Onde os dados serão externalizados, publicados?
    • Os dados serão exibidos na plataforma em questão.
  • 3. Onde esta aplicação poderá ser usada?
    • Em qualquer navegador disponível para o público.
  • 4. Onde os dados serão armazenadas?
    • Em um banco de dados preparado exclusivamente para uso do software.
  • 5. Onde o software deverá ser hospedado?
    • Em um servidor.


When


  • 1. Em quanto tempo pretende desenvolver o sistema?
    • No cronograma inicial foi planejado concluir o protótipo do projeto em cerca de 4 meses.
  • 2. Quais serão as fases e em quanto tempo cada uma?
    • Pesquisa -> 3 semanas
    • Classificar questões -> 4 semanas
    • Criar a interface gráfica -> 4 semanas
    • Desenvolver a programação do site -> 4 semanas
  • 3. Qual o tempo de resposta do dispositivo ou do sistema?
    • Na ordem de segundos.
  • 4. Quanto tempo para responder a uma entrada?
    • Na ordem de segundos.
  • 5. Quanto tempo para gerar a saída?
    • Na ordem de segundos.


How


  • 1. Como será dividido o desenvolvimento do sistema?
    • Estudos de armazenamentos em bancos de dados;
    • Buscar questões/provas;
    • Classificar as questões/provas;
    • Desenvolver o código fonte;
    • Desenvolver a interface gráfica;
    • Configurar hospedagem e domínio;
    • Realizar o deploy, ou seja, colocar o site no ar;
  • 2. Como será feita a entrada de dados?
    • Através do login e senha do usuário com privilégios de docente e do administrador, pois ambos podem anexar questões/provas ao sistema. Além disso, através de usuários com privilégios de aluno, para inserir a resolução de seus simulados.
  • 3. Como será feita a saída de dados?
    • Através da saída das questões/provas e das notas para o usuário em questão.
  • 4. Descreva as funcionalidades?
    • Funcionalidades aplicadas a todos:
** Autenticar usuários;  
** Pesquisar questões/provas;
** Selecionar a categoria da questão/prova;
** Avaliar dificuldade da questão/prova;
** Ter acesso, quando permitido, ao gabarito da prova em questão.
    • Funcionalidades aplicadas ao aluno:
** Resolver questões/provas;
** Visualizar relatórios de desempenho;
    • Funcionalidades aplicadas ao docente:
** Inserir questões/provas;
** Criar grupos, internos ao site, de modo que ele possa enviar ou aplicar uma questão/prova para uma turma inteira;
** Inserir os alunos no grupo criado por ele;
** Visualizar relatórios de desempenho dos alunos da turma;
    • Funcionalidades aplicadas ao administrador;
** Excluir usuários; 
** Alterar usuários;
** Adicionar patrocinador; 
** Alterar patrocinador; 
** Excluir patrocinador; 
** Excluir questões/provas; 
** Alterar questões/provas;

How much


  • 1. Quanto custa cada parte do sistema?
    • Estima-se que o custo do sistema será, majoritariamente, com os operadores que vão desenvolvê-lo, já que o sistema em questão é um site. Além disso, existirá o custo com a hospedagem cloud do mesmo em um servidor, que é um custo mensal que gira em torno de R$250,00 e o custo com o domínio do site, que é um custo anual de R$30,00.
  • 2. Quanto deverá custar todo o sistema?
    • O custo total do sistema ficará em torno de R$85.000,00, uma estimativa para o salário médio da equipe durante os 4 meses + custos de domínio e hospedagem + margem de erro para possíveis necessidades técnicas.
  • 3. Quantas pessoas deverão ser usadas (Equipe) ?
    • 1 programador com domínio em interface gráfica;
    • 1 programador com domínio em banco de dados;
    • 1 programador com domínio em servidor;
    • 1 programador com experiencia em desenvolvimento de websites;
  • 4. Quanto custa cada profissional?
    • 1 programador com domínio em interface gráfica R$5.000,00;
    • 1 programador com domínio em banco de dados R$5.000,00;
    • 1 programador com domínio em servidor R$5.000,00;
    • 1 programador com experiencia em desenvolvimento de websites R$5.000,00;
  • 5. Qual deverá ser o preço de aquisição do seu software para o usuário final (Valor de mercado)?
    • O site não será vendido ao usuário, será disponibilizado de maneira gratuita, arrecadando fundos com marketing/patrocínio ou, caso o professor deseje, pela opção de cobrar por simulados, onde a plataforma receberá uma porcentagem do valor cobrado.


Modelo Estruturado

DFD

  • Processso
  • Depósitos
  • Fluxos

DER

  • Entidades
  • Relacionamentos
  • Chaves
  • Domínios

DD

  • Descritivos de cada item
    • Significado
    • Conteúdo (Dados compostos)
    • Restrições de integridade
    • Chave primária (Depósitos de Dados)


Modelo OO

Diagrama de Classes

Diagrama de Estado

Diagrama de Casos de Uso

Diagrama de Sequência

Diagrama de Objetos

Diagrama de Colaboração

Diagrama de Interfaces

Diagrama de Atividades

Diagrama de Componentes

Diagrama de Pacotes

Protótipo

  • Objetivo
  • Recursos utilizados
  • Funcionamento
  • Detalhamento (Imagens, vídeos, ...)
  • Resultados obtidos

Pesquisador