Como criar uma boa definição de requisitos

15 respostas Resolvido
arquitetura
L

Bom dia pessoal,

Gostaria de saber se existe algum sistema que eu possa escrever a ideia que tenho antes de começar a escrever o código.

15 Respostas

D

Microsoft Word.
Se prefere open source, tem o LibreOffice Writer.

Brincadeiras à parte, como assim, escrever?

L

kkkk, exemplo um passo a passo.

Tipo cadastrar item:
1º criar função XYZ
2º …

Na verdade minha dificuldade e começar , fico perdido no que fazer primeiro.

D

Isso que você está se referindo pode ter vários nomes, dependendo de qual abordagem você pretende seguir.
Pode ser uma especificação de casos de uso, pode ser uma user story e assim por diante.
A minha brincadeira deu certo, afinal, não conheço um sistema pronto para receber esse tipo de coisa. Ainda se usa o bom e velho word (ou writer) mesmo.

L

Blza, Só mais uma coisa, como vc faz quando tem que desenvolver um sistema do zero?

J

Primeiro entender qual a necessidade deve ser atendida, conhecer o processo, coletar requisitos, pensar em uma possível solução, apresentar a possível solução, discutir ideias, coletar mais requisitos e ir ajustando conforme necessário, e esse ciclo vai se repetindo até chegar na ideia base que vai atender o problema, depois é escolher a melhor tecnologia, desenvolver por partes, pequenas partes entregáveis e de acordo com as entregas ir coletando feedback e ajustando o produto.

Mas isso é relativo, existem “N” formas diferentes de se fazer, esse exemplo que te disse acima é a ideia que eu geralmente sigo.

D

De novo, depende de qual abordagem você quer seguir.
Abordagem é o modelo no qual você pretende desenvolver um sistema.
Existem 2 visões bem distintas: a clássica (cascata) e a moderna (ágil).
Depois que escolher uma delas, independente de qual, o próximo passo é levantar requisitos.
Basicamente, colher tudo o que o usuário/dono do sistema irá precisar/querer. Depois, levantar tudo o que existe sobre legislação a respeito daquele negócio (afinal, você quer um sistema que esteja de acordo com a legislação nacional). Depois, cada abordagem segue um caminho, que, no final, culminam no mesmo: entrega do sistema, implantação, homologação, manutenção.

D
Solucao aceita

Esse é um exemplo de modelo ágil: você define um escopo inicial, define o que vai ser feito primeiro (sprint) e, conforme for entregando, vai ajustando as próximas entregas, até ter tudo pronto, testado e apto a ser implantado.

L

Eu imaginava que teria um sistema que informasse quais passos seguir, mas depois do que foi falado entendo que devo entender a necessidade e ir encontrando soluções e etc… Muito obrigado…

R

Não é tão difícil assim iniciar, pelo menos eu acho, o mais difícil é ter a ideia. Depois que você teve a ideia, escreve em um papel de forma organizada o que você quer que seu sistema tenha/faça e aí depois é só você ir aplicando o que vc quer

D

Tudo começa como receita de bolo: ingredientes e o passo a passo de como fazer.
É óbvio que se você conhecer técnicas, fica melhor, mas, dá para se virar sem.

F

Além das dicas dos companheiros, recomendo que dê uma estudada nos princípios básicos da Engenharia de Software. Pode te ajudar a pensar de forma mais organizacional. :slight_smile:

D

Na abordagem clássica, chamada de modelo cascata, você seguirá passos ordenados e organizados para que, ao final de todos eles, entregue o produto.
Como assim?
Basicamente, você tem:

ideia/problema/solicitação> definição dos requisitos > levantar requisitos > modelagem funcional > modelagem de dados > diagramação > desenvolvimento > testes > correções de bugs > implementação.

É um modelo engessado, visto que, se um requisito precisa ser adicionado ou alterado, precisa esperar que todas as etapas sejam concluídas, um novo levantamento seja feito e o processo recomece.
Mas, é o modo mais simples, ainda.

Abordagem ágil (aí tanto faz de XP, SCRUM, whatever): trabalha partes entregáveis e, na teoria, funciona com todos os membros da equipe envolvidos, ao mesmo tempo: levanta-se requisitos, modelam-se as histórias, quebra-se em histórias menores, desenvolve-se, testa-se, corrige o que precisa, entrega uma parte. Esse processo é dividido em partes, chamadas sprints, que duram de 2 a 3 semanas (nunca mais que isso).

A questão da abordagem ágil é que aproxima o cliente do produto, em todas as etapas do desenvolvimento. Garantindo assertividade e minimizando impactos referentes a mudanças de escopo (aumento, alteração ou diminuição).

L

Aprendo mais aqui do que fazendo o curso! Vou me aprofundar no assunto para ganhar mais conhecimento, pegar as dicas que me foram dadas e investir mais tempo nesse assunto.

D

Então já mude a chave desse pensamento: um curso/graduação te abre portas, Networking, novas possibilidades.
Comunidades, trabalho e fóruns te darão solidez.
Experiência consolida tudo isso.

L

@darlan_machado Sim, sem dúvida!

Criado 8 de fevereiro de 2019
Ultima resposta 8 de fev. de 2019
Respostas 15
Participantes 5