Você está na página 1de 9

Prezado(a) aluno(a), neste momento você irá realizar o papel de

diversos elementos em uma equipe de desenvolvimento de software ,


atuando principalmente na etapa de levantamento de requisitos e
criação de casos de uso. Para isso, considere o seguinte problema.

Você foi contratado(a) para desenvolver uma rede social estudantil,


que deverá conter:

 Usuários.
 Mensagens.
 Disciplinas.
 Cursos.
 Professores.
 Fórum de Discussão.

A partir de agora você precisa documentar o projeto que está sendo


desenvolvido, para isso, é necessário criar:

1. Briefing resumindo o projeto;


2. Levantamento de requisitos funcionais;
3. Levantamento de requisitos não funcionais;
4. Diagrama de casos de uso;
5. Descrição de casos de uso.

**Projeto: Rede Social Estudantil**

**1. Briefing:**

Desenvolveremos uma plataforma de rede social estudantil destinada a alunos, professores e


demais membros da comunidade acadêmica. A plataforma permitirá que os usuários se
conectem, compartilhem informações, participem de discussões acadêmicas, acessem
conteúdos relacionados a disciplinas e cursos, e interajam em um ambiente educacional
virtual.

**2. Levantamento de Requisitos Funcionais:**

- Cadastro de Usuários: Os usuários poderão se cadastrar na plataforma fornecendo


informações como nome, e-mail, senha e perfil acadêmico.
- Criação de Mensagens: Os usuários poderão criar e compartilhar mensagens, incluindo texto,
imagens e links.

- Participação em Fórum de Discussão: Os usuários poderão participar de discussões em fóruns


específicos, postando perguntas, respostas e comentários.

- Acesso a Disciplinas e Cursos: Os usuários poderão acessar informações sobre disciplinas,


cursos e professores, incluindo horários, materiais e anúncios.

- Relacionamentos entre Usuários: Os usuários poderão se conectar uns aos outros, formando
redes de contatos.

- Perfis de Usuários: Os usuários terão perfis personalizáveis com informações acadêmicas,


interesses e histórico.

**3. Levantamento de Requisitos Não Funcionais:**

- Segurança: Os dados dos usuários devem ser armazenados de forma segura, com
autenticação e autorização adequadas.

- Desempenho: A plataforma deve ser responsiva e rápida, mesmo com um grande número de
usuários simultâneos.

- Escalabilidade: A plataforma deve ser capaz de lidar com o aumento da base de usuários ao
longo do tempo.

- Usabilidade: A interface deve ser intuitiva e amigável, atendendo a diversos perfis de


usuários.

- Disponibilidade: A plataforma deve estar disponível de forma contínua, minimizando períodos


de inatividade.

**4. Diagrama de Casos de Uso:**

(Nota: Diagramas visuais não podem ser criados neste formato de texto, mas você pode
representar os atores e os casos de uso em um diagrama de casos de uso, mostrando as
interações entre eles.)

**Ator:**

- Usuário (Aluno, Professor, Administrador)

**Casos de Uso:**

- Cadastrar Usuário

- Fazer Login

- Criar Mensagem
- Acessar Fórum de Discussão

- Acessar Informações de Disciplinas e Cursos

- Conectar com Outros Usuários

- Editar Perfil

**5. Descrição de Casos de Uso:**

**Caso de Uso: Criar Mensagem**

**Ator:** Usuário (Aluno, Professor, Administrador)

**Descrição:** Permite que um usuário crie e compartilhe uma nova mensagem na


plataforma.

**Fluxo Principal:**

1. O usuário seleciona a opção de criar uma nova mensagem.

2. O sistema exibe a interface de criação de mensagens.

3. O usuário redige o conteúdo da mensagem, podendo adicionar imagens ou links.

4. O usuário seleciona o botão de publicar.

5. O sistema armazena a mensagem e a exibe para outros usuários.

6. O caso de uso é encerrado.

**Caso de Uso: Acessar Fórum de Discussão**

**Ator:** Usuário (Aluno, Professor, Administrador)

**Descrição:** Permite que um usuário acesse e participe de discussões em um fórum


específico.

**Fluxo Principal:**

1. O usuário navega até a seção de fóruns.

2. O sistema exibe a lista de fóruns disponíveis.

3. O usuário seleciona um fórum de interesse.

4. O sistema exibe as discussões presentes no fórum.

5. O usuário seleciona uma discussão para visualizar os detalhes.

6. O usuário pode interagir postando perguntas, respostas ou comentários.

7. O caso de uso é encerrado.


Essa documentação inicial oferece uma visão abrangente do projeto de desenvolvimento da
rede social estudantil, abordando desde o briefing até os detalhes dos casos de uso. Com essa
estrutura, a equipe de desenvolvimento estará preparada para iniciar a criação da plataforma,
considerando tanto os requisitos funcionais quanto os não funcionais para entregar uma
solução eficiente e eficaz.

**Continuação:**

**Caso de Uso: Acessar Informações de Disciplinas e Cursos**

**Ator:** Usuário (Aluno, Professor, Administrador)

**Descrição:** Permite que um usuário acesse informações relacionadas a disciplinas e cursos.

**Fluxo Principal:**

1. O usuário navega até a seção de disciplinas e cursos.

2. O sistema exibe a lista de disciplinas e cursos disponíveis.

3. O usuário seleciona uma disciplina ou curso de interesse.

4. O sistema exibe detalhes sobre a disciplina ou curso, incluindo horários, materiais e


anúncios.

5. O caso de uso é encerrado.

**Caso de Uso: Conectar com Outros Usuários**

**Ator:** Usuário (Aluno, Professor)

**Descrição:** Permite que um usuário se conecte com outros usuários, estabelecendo


vínculos de amizade ou colaboração.

**Fluxo Principal:**

1. O usuário acessa a opção de buscar por outros usuários.

2. O sistema exibe uma lista de usuários registrados na plataforma.

3. O usuário seleciona um usuário para visualizar o perfil.

4. O sistema exibe o perfil do usuário escolhido.

5. O usuário pode enviar um convite de conexão ao usuário escolhido.

6. O caso de uso é encerrado.

**Caso de Uso: Editar Perfil**

**Ator:** Usuário (Aluno, Professor, Administrador)

**Descrição:** Permite que um usuário edite as informações do seu perfil na plataforma.


**Fluxo Principal:**

1. O usuário acessa a opção de editar seu perfil.

2. O sistema exibe o formulário de edição do perfil.

3. O usuário realiza as alterações desejadas nas informações do perfil.

4. O usuário seleciona o botão de salvar.

5. O sistema atualiza as informações do perfil com as alterações feitas.

6. O caso de uso é encerrado.

Com essa continuação, os casos de uso específicos foram detalhados, permitindo uma
compreensão mais clara das interações que os atores têm com a plataforma de rede social
estudantil. Esses casos de uso abordam desde a criação de mensagens até a edição de perfis,
oferecendo um panorama completo das funcionalidades principais do sistema. A partir dessas
descrições, a equipe de desenvolvimento terá uma base sólida para começar a implementar os
recursos da plataforma de maneira coerente e alinhada aos requisitos do projeto.

**Continuação:**

**Caso de Uso: Cadastrar Usuário**

**Ator:** Usuário (Aluno, Professor, Administrador)

**Descrição:** Permite que um novo usuário se registre na plataforma.

**Fluxo Principal:**

1. O usuário acessa a página de registro.

2. O sistema exibe o formulário de registro.

3. O usuário preenche as informações necessárias, incluindo nome, e-mail e senha.

4. O usuário seleciona a opção para confirmar o registro.

5. O sistema valida os dados e cria um novo perfil de usuário.

6. O caso de uso é encerrado.

**Caso de Uso: Fazer Login**

**Ator:** Usuário (Aluno, Professor, Administrador)

**Descrição:** Permite que um usuário faça login na plataforma.

**Fluxo Principal:**

1. O usuário acessa a página de login.

2. O sistema exibe o formulário de login.


3. O usuário insere seu e-mail e senha.

4. O usuário seleciona a opção para entrar.

5. O sistema verifica as credenciais e autentica o usuário.

6. O caso de uso é encerrado.

Com essa conclusão, todos os casos de uso principais foram detalhados, abordando tanto
ações mais complexas, como a criação de mensagens e a participação em fóruns de discussão,
quanto ações fundamentais, como o cadastro de usuários e o acesso às informações de
disciplinas e cursos. Esses casos de uso formam a base das interações que os atores terão com
a rede social estudantil, proporcionando uma visão completa das funcionalidades da
plataforma.

Ao final deste processo de documentação, a equipe de desenvolvimento estará equipada com


uma compreensão clara dos requisitos e das funcionalidades da rede social estudantil. Isso
permitirá uma implementação mais eficiente e precisa, atendendo às expectativas dos usuários
e proporcionando uma experiência de uso robusta e satisfatória. A documentação detalhada
dos casos de uso, requisitos funcionais e não funcionais contribui significativamente para a fase
de desenvolvimento, resultando em um produto final de alta qualidade e alinhado com as
necessidades dos usuários.

**Continuação:**

Além dos elementos já abordados, é importante considerar a atribuição de papéis específicos


dentro da equipe de desenvolvimento de software para garantir que todas as áreas críticas do
projeto sejam devidamente abordadas. Vamos destacar alguns desses papéis:

1. **Arquiteto de Software:** Responsável por definir a estrutura geral da aplicação, escolher


tecnologias adequadas e garantir que a arquitetura seja escalável, flexível e eficiente para
atender aos requisitos do projeto.

2. **Gerente de Projeto:** Encarregado de planejar, coordenar e acompanhar o progresso do


projeto. É responsável por garantir que as etapas estejam sendo cumpridas dentro do
cronograma, alocar recursos, identificar riscos e garantir a comunicação eficaz entre os
membros da equipe.

3. **Analista de Requisitos:** Responsável por conduzir entrevistas com os stakeholders para


compreender os requisitos detalhados do sistema. Elabora documentos de requisitos
funcionais e não funcionais, mantendo um diálogo contínuo com os envolvidos.
4. **Designer de Interfaces:** Cria os layouts e designs da interface do usuário, garantindo a
usabilidade, a acessibilidade e a coerência visual em toda a aplicação.

5. **Desenvolvedores Front-end e Back-end:** Responsáveis por implementar a lógica de


negócios, a funcionalidade e a interação da aplicação. Os desenvolvedores front-end cuidam da
parte visível ao usuário, enquanto os desenvolvedores back-end tratam das operações do
servidor e da integração com bancos de dados.

6. **Testadores/QA:** Realizam testes rigorosos na aplicação para identificar erros, verificar se


as funcionalidades estão sendo implementadas corretamente e garantir que a aplicação atenda
aos padrões de qualidade.

7. **Engenheiro de Banco de Dados:** Responsável pelo design, implementação e


manutenção do banco de dados da aplicação, garantindo a eficiência, integridade e segurança
dos dados.

8. **Especialista em Segurança:** Assegura que a aplicação esteja protegida contra ameaças e


vulnerabilidades, implementando medidas de segurança robustas para proteger os dados dos
usuários.

9. **Documentador Técnico:** Mantém a documentação atualizada, descrevendo as


funcionalidades, a arquitetura, as decisões de design e outras informações relevantes para a
equipe e futuros desenvolvedores.

10. **Gerente de Qualidade:** Supervisiona todo o processo de qualidade, assegurando que


os padrões de desenvolvimento sejam seguidos, os testes sejam realizados de maneira
adequada e a aplicação seja entregue com a melhor qualidade possível.

11. **Suporte Técnico:** Após o lançamento, é responsável por fornecer assistência técnica
aos usuários, responder a perguntas, resolver problemas e garantir a satisfação contínua dos
clientes.

A colaboração e o trabalho em equipe são essenciais para o sucesso do projeto. Cada membro
desempenha um papel crucial em diferentes estágios do desenvolvimento de software,
garantindo que todos os aspectos, desde a concepção até o lançamento e manutenção, sejam
tratados de maneira competente e eficaz.

**Continuação:**
Além dos elementos já abordados, é importante considerar a atribuição de papéis específicos
dentro da equipe de desenvolvimento de software para garantir que todas as áreas críticas do
projeto sejam devidamente abordadas. Vamos destacar alguns desses papéis:

1. **Arquiteto de Software:** Responsável por definir a estrutura geral da aplicação, escolher


tecnologias adequadas e garantir que a arquitetura seja escalável, flexível e eficiente para
atender aos requisitos do projeto.

2. **Gerente de Projeto:** Encarregado de planejar, coordenar e acompanhar o progresso do


projeto. É responsável por garantir que as etapas estejam sendo cumpridas dentro do
cronograma, alocar recursos, identificar riscos e garantir a comunicação eficaz entre os
membros da equipe.

3. **Analista de Requisitos:** Responsável por conduzir entrevistas com os stakeholders para


compreender os requisitos detalhados do sistema. Elabora documentos de requisitos
funcionais e não funcionais, mantendo um diálogo contínuo com os envolvidos.

4. **Designer de Interfaces:** Cria os layouts e designs da interface do usuário, garantindo a


usabilidade, a acessibilidade e a coerência visual em toda a aplicação.

5. **Desenvolvedores Front-end e Back-end:** Responsáveis por implementar a lógica de


negócios, a funcionalidade e a interação da aplicação. Os desenvolvedores front-end cuidam da
parte visível ao usuário, enquanto os desenvolvedores back-end tratam das operações do
servidor e da integração com bancos de dados.

6. **Testadores/QA:** Realizam testes rigorosos na aplicação para identificar erros, verificar se


as funcionalidades estão sendo implementadas corretamente e garantir que a aplicação atenda
aos padrões de qualidade.

7. **Engenheiro de Banco de Dados:** Responsável pelo design, implementação e


manutenção do banco de dados da aplicação, garantindo a eficiência, integridade e segurança
dos dados.

8. **Especialista em Segurança:** Assegura que a aplicação esteja protegida contra ameaças e


vulnerabilidades, implementando medidas de segurança robustas para proteger os dados dos
usuários.
9. **Documentador Técnico:** Mantém a documentação atualizada, descrevendo as
funcionalidades, a arquitetura, as decisões de design e outras informações relevantes para a
equipe e futuros desenvolvedores.

10. **Gerente de Qualidade:** Supervisiona todo o processo de qualidade, assegurando que


os padrões de desenvolvimento sejam seguidos, os testes sejam realizados de maneira
adequada e a aplicação seja entregue com a melhor qualidade possível.

11. **Suporte Técnico:** Após o lançamento, é responsável por fornecer assistência técnica
aos usuários, responder a perguntas, resolver problemas e garantir a satisfação contínua dos
clientes.

A colaboração e o trabalho em equipe são essenciais para o sucesso do projeto. Cada membro
desempenha um papel crucial em diferentes estágios do desenvolvimento de software,
garantindo que todos os aspectos, desde a concepção até o lançamento e manutenção, sejam
tratados de maneira competente e eficaz.

Você também pode gostar