Por que eu devo ler este artigo:Este artigo é útil para desenvolvedores front-end que trabalham com o framework Bootstrap na criação de layouts modernos e responsivos, bem como para desenvolvedores back-end que utilizam o ASP.NET MVC para codificação Server Side.

Este artigo tem como propósito desenvolver um projeto web para um fórum de discussão, dividindo as responsabilidades entre as partes front-end e back-end, de forma que leitor possa entender melhor como deve ser essa divisão de trabalho em projetos reais.

Organizar os processos para o desenvolvimento de software não é uma tarefa fácil, muito menos escolher o melhor ciclo de vida para um determinado contexto de um projeto de software a ser desenvolvido.

Embora os processos de desenvolvimento de software tenham amadurecido com surgimento de metodologias, guias para gestão, frameworks e ferramentas para acompanhamento de tarefas durante o projeto e o desenvolvimento do software, a formação de equipes e separação de responsabilidades ainda pode ser uma tarefa árdua e complexa.

Outro ponto chave em um projeto é a escolha de qual tecnologia usar, isso é sem dúvida uma tarefa difícil e depende muito do tipo de projeto a ser desenvolvido e qual o grau de familiaridade da equipe de desenvolvimento com determinas tecnologias candidatas à utilização.

Pensando no contexto proposto por este artigo, o projeto do web site para fórum de discussão tem como objetivo mostrar os passos do desenvolvimento nas etapas do back-end e front-end, assim sendo, será utilizado o ASP.NET MVC no back-end e Bootstrap no front-end da aplicação. Após separadas as responsabilidades e definidas quais tecnologias serão utilizadas, vamos iniciar o projeto e mostrar a integração entre o desenvolvimento back-end e front-end.

O Visual Studio é muito importante neste projeto, pois o mesmo proporciona que a equipe de desenvolvimento trabalhe simultaneamente em partes distintas no desenvolvimento do software sem uma afetar a outra.

Com a escolha do ASP.NET MVC fica bem mais simples separar as responsabilidades dentro da aplicação utilizando o padrão Model-View-Controller, desta forma a equipe de front-end trabalha na camada View, enquanto a equipe back-end trabalha nas camadas Controller, Model e Vew quando necessário.

Requisitos para o projeto do Fórum de discussão

Antes de iniciar a implementação de qualquer software sempre será necessária alguma documentação e especificações do que deve ser desenvolvido, para que se possa guiar o processo em direção ao produto final desejado. A documentação deve conter os requisitos do software a ser desenvolvido, informações sobre funcionalidades do sistema, escopo, regras de negócio da empresa a ser aplicada no sistema, requisitos funcionais, requisitos não funcionais, fluxo principal, fluxo alternativo dentre outros dados.

A forma de documentação de um software e os artefatos que serão gerados dependem muito da metodologia e guia que serão utilizadas no projeto e no desenvolvimento. Entre essas metodologias destacam-se o SCRUM, XP, Kanban, PMBOK, dentre outras.

Podemos então começar listando alguns requisitos funcionais que devem estar presentes no fórum de discussão que criaremos:

1. O sistema deve possibilitar a autenticação de usuários para poderem fazer postagens no fórum, ou seja, não será possível postar algo sem estar devidamente autenticado no sistema;

2. O web site deve ter uma página para o usuário fazer login ou se cadastrar;

3. O web site deve ter uma página para manter os tópicos do fórum;

4. Uma postagem deve pertencer a um tópico, assim sendo, deve ter uma página para cadastro de novos tópicos no fórum;

5. O sistema deve possibilitar a postagem de posts pelos usuários cadastrados no sistema.

Assim temos descritas de forma clara e objetiva as principais funcionalidades do sistema, além de também especificarmos algumas regras de negócio, como a obrigatoriedade de autenticação de usuário para realizar postagem no fórum.

Com base nesses requisitos iniciaremos o desenvolvimento da aplicação, realizando desde as etapas de modelagem do domínio até a implementação da interface com o usuário, sempre objetivando atender as especificações.

Modelagem e implementação do banco de dados

Tendo sido definidos os requisitos iniciais, podemos modelar nosso banco de dados, que será a primeira representação do domínio da nossa aplicação e no qual nos basearemos para implementar as classes de negócio no ASP.NET MVC.

A sugestão deste artigo é que seja utilizada a ferramenta gratuita DBDesigner Fork ( ...

Fim do trecho gratuito • continue abaixo
CONTEÚDO EXCLUSIVO

Desbloqueie toda a DevMedia

  • +2000 artigos e vídeos
  • +40 trilhas sobre Front-end, Back-end, IA e muito mais
  • +5000 exercícios práticos
  • Mentorias ao vivo individuais
até 50% OFF
A partir de
R$ 69 /mês
Assinar agora