Linha 14: Linha 14:
** Precisamos ter conhecimento de como a Web funciona, quais os diferentes protocolos que ela opera (HTTPS por exemplo) e como desenvolver para ela. Precisamos ter conhecimento de arquitetura de software, para pensar como vamos estruturar o sistema e o escopo em que iremos trabalhar. Precisamos ter conhecimento de hospedagem, tipos de servidores, domínio na web e outros recursos para manter a aplicação no ar. Precisamos ter conhecimento de linguagens e frameworks, e qual stack seria mais recomendada para o nosso tipo de sistema (Angular, React, NodeJS, MongoDB). Por fim, precisamos ter o conhecimento de como manter a aplicação no ar sem que haja quedas ou falhas
** Precisamos ter conhecimento de como a Web funciona, quais os diferentes protocolos que ela opera (HTTPS por exemplo) e como desenvolver para ela. Precisamos ter conhecimento de arquitetura de software, para pensar como vamos estruturar o sistema e o escopo em que iremos trabalhar. Precisamos ter conhecimento de hospedagem, tipos de servidores, domínio na web e outros recursos para manter a aplicação no ar. Precisamos ter conhecimento de linguagens e frameworks, e qual stack seria mais recomendada para o nosso tipo de sistema (Angular, React, NodeJS, MongoDB). Por fim, precisamos ter o conhecimento de como manter a aplicação no ar sem que haja quedas ou falhas
* 5.  Quais soluções similares existem no mercado?
* 5.  Quais soluções similares existem no mercado?
** Não existem soluções similares com o mesmo propósito do Anonymous Help, mas pensando numa rede social, pode-se dizer que não seria muito diferente do Facebook, Instagram ou até mesmo o Twitter. O nosso diferencial é o foco: uma rede em que as pessoas pudessem interagir entre si, anonimamente, de forma a se ajudar compartilhando e ouvindo sobre experiências da vida e dificuldades que vêm vivenciando.
** Há o Anonymous Online Chat, porém não existem soluções similares com o mesmo propósito do Anonymous Help no Brasil, mas pensando numa rede social, pode-se dizer que não seria muito diferente do Facebook, Instagram ou até mesmo o Twitter. O nosso diferencial é o foco: uma rede em que as pessoas pudessem interagir entre si, anonimamente, de forma a se ajudar compartilhando e ouvindo sobre experiências da vida e dificuldades que vêm vivenciando.
<br>
<br>



Edição das 20h06min de 3 de setembro de 2020

5W2H


What


  • 1. Qual o nome do seu projeto?
    • Anonymous Help
  • 2. Qual o objetivo deste projeto?
    • Criar um ambiente onde as pessoas possam se ajudar anonimamente no que se trata de seus problemas/preocupações
  • 3. Quais os maiores desafios, na sua opinião, para se realizar este trabalho?
    • Pensando em marketing e engajamento, o desafio é fazer com que a comunidade web consiga aderir à plataforma de forma orgânica. Para isso, precisamos de uma plataforma inclusiva, responsiva e intuitiva, o que nos leva a pensar nos desafios técnicos do projeto. Como a maioria dos usuários de redes sociais interagem por meio de dispositivos móveis, precisamos desenvolver com o pensamento mobile-first, além de que, pensando nos mais diversos tipos de usuários, o desenvolvimento deverá ser feito pensando em inclusão digital. Quanto à linguagens, o desafio estará a cargo de compreender e dominar linguagens como HTML, CSS e JavaScript, além de frameworks e banco de dados que irão garantir a qualidade do projeto. Por fim, o sistema deve ser pensado de maneira escalável, para que, a medida que mais usuários forem captados, o sistema possa se comportar bem e de maneira eficiente. Além de policiar atitudes negativas (suporte 24 horas).
  • 4. Quais os conhecimentos básicos (teorias) que devemos ter para se implementar este projeto?
    • Precisamos ter conhecimento de como a Web funciona, quais os diferentes protocolos que ela opera (HTTPS por exemplo) e como desenvolver para ela. Precisamos ter conhecimento de arquitetura de software, para pensar como vamos estruturar o sistema e o escopo em que iremos trabalhar. Precisamos ter conhecimento de hospedagem, tipos de servidores, domínio na web e outros recursos para manter a aplicação no ar. Precisamos ter conhecimento de linguagens e frameworks, e qual stack seria mais recomendada para o nosso tipo de sistema (Angular, React, NodeJS, MongoDB). Por fim, precisamos ter o conhecimento de como manter a aplicação no ar sem que haja quedas ou falhas
  • 5. Quais soluções similares existem no mercado?
    • Há o Anonymous Online Chat, porém não existem soluções similares com o mesmo propósito do Anonymous Help no Brasil, mas pensando numa rede social, pode-se dizer que não seria muito diferente do Facebook, Instagram ou até mesmo o Twitter. O nosso diferencial é o foco: uma rede em que as pessoas pudessem interagir entre si, anonimamente, de forma a se ajudar compartilhando e ouvindo sobre experiências da vida e dificuldades que vêm vivenciando.


Why


  • 1. Porque é interessante desenvolver este projeto?
    • O Anonymous Help é um projeto que visa incentivar pessoas a ajudarem outras pessoas. O interessante de desenvolvê-lo é o fato dos usuários poderem interagir anonimamente, assim, em teoria, sentirão mais liberdade de expressar seus problemas pessoais, fazendo com que seja mais fácil de serem ajudados. Além disso, o fato de serem compartilhados diversos tipos de problemas e preocupações fará com que as pessoas comecem a se pôr no lugar mais umas das outras, havendo uma chance de que se tenha mais respeito entre as pessoas.
  • No seu projeto, precisará optar por algumas tecnologias, usar alguns hardwares e conversar com outros sistemas.

atuais ou não.

  • 2. Com relação às tecnologias, cite no mínimo 3 e explique a função de cada uma no seu projeto.
    • Com relação às tecnologias, por ser um desenvolvimento para web, teremos como base HTML, CSS e Javascript. A complexidade ficará a cargo dos frameworks e pré-processadores que darão estabilidade e segurança na codificação. Temos:
      • NodeJS: Node é um framework javascript que fará o papel do “backend” do sistema. Ele terá o papel de controlar acesso ao banco de dados, bem como processar entradas e gerar saídas para a camada de apresentação.
      • React: React é um outro framework baseado em JavaScript, mas que será utilizado na camada de apresentação. Como é muito famoso na construção de SPA’s, sendo usado em redes sociais como Instagram, utilizaremos esta solução.
      • Styled-Components: é um pré-processador de CSS. Sua função no nosso projeto será nos ajudar a desenvolver o estilo da página com mais agilidade e de forma padronizada, além de trabalhar bem com o React
      • PostgresSQL: Postgres é um banco de dados relacional gratuito. Por ser um projeto a principio acadêmico, este banco de dados suporta a carga e estresse gerado no sistema. Sua função no projeto será armazenar dados em tabelas que podem ou não ter relacionamentos entre si.
    • 3. Com relação ao hardware, cite no mínimo 3 e explique a função de cada um no seu projeto.
  • 4. Com relação aos sistemas, cite no mínimo 3 e explique a função de cada um no seu projeto.


Who


  • 1. Quem pode se beneficiar deste projeto?
  • 2. Quem poderá operar o sistema?
  • 3. Quem deverá participar do desenvolvimento do sistema?


Where


  • 1. Por onde (hardware ou sistemas), os dados serão inseridos?
  • 2. Onde (hardware ou sistemas), os dados serão externalizados?
  • 3. Onde (em que dispositivos ou ambientes) esta aplicação poderá ser usada?
  • 4. Onde os dados serão armazenados?
  • 5. Onde o software deverá ser hospedado?


When


  • 1. Em quanto tempo (em semanas) pretende desenvolver o sistema?
  • 2. Quais serão as fases e em quanto tempo cada uma?
  • 3. Qual o tempo de resposta do dispositivo ou do sistema, ou seja, quanto tempo acha razoável esperar por uma informação?
  • 4. Se tiver investimento, quanto tempo acha razoável para pagar o financiamento?
  • 5.


How


  • 1. Como será dividido o desenvolvimento do sistema?
  • 2. Como será feita a entrada de dados?
  • 3. Como será feita a saída de dados?
  • 4. Descreva a 1a. funcionalidade?
  • 5. Descreva a 2a. funcionalidade?
    • ............
  • n. Descreva a enésima funcionalidade?

How much


  • 1. Quanto custa cada parte do sistema?
  • 2. Quanto deverá custar todo o sistema?
  • 3. Quantas pessoas deverão ser usadas (Equipe) ?
  • 4. Quanto custa cada profissional?
  • 5. Qual deverá ser o preço de aquisição do seu software para o usuário final (Valor de mercado)?