Quer ter acesso a todos os cursos desse Guia?
Requisitos, Modelagem e UML
Neste guia você encontrará o conteúdo que precisa para saber como elicitar requisitos, gerenciá-los e modelar o software com as principais técnicas do mercado. Abaixo, confira os posts que te auxiliarão ao longo desse aprendizado.
Engenharia de Requisitos
Atividade fundamental no desenvolvimento de software, a Engenharia de Requisitos é a etapa na qual são elicitadas/identificadas as funcionalidades a serem implementadas, assim como as condições a serem atendidas pela aplicação. A partir deste tópico você aprenderá como coletar, especificar, detalhar e rastrear requisitos.
-
ArtigoEngenharia de Software - Introdução à Engenharia de Requisitos
-
ArtigoTrabalhando com Engenharia de Requisitos
-
ArtigoA importância da Engenharia de Requisitos
-
ArtigoRequisitos não funcionais
-
ArtigoCompetências essenciais ao engenheiro de requisitos
-
CursoSoluções Concretas para Problemas Práticos da Engenharia de Requisitos
Elicitação e gerência de requisitos
Como você já deve ter notado, a elicitação de requisitos é a fase na qual identificamos os requisitos do software e avaliamos como eles devem ser desenvolvidos. No entanto, não basta identificar. Também é importante que os requisitos sejam gerenciados. Para que você possa ter o primeiro contato com a elicitação de requisitos, e aprenda como fazer isso como gerenciá-los, confira os posts abaixo:
-
VídeoTécnicas para entrevista de coleta de requisitos
-
ArtigoTécnicas para levantamento de Requisitos
-
ArtigoColeta de requisitos de software usando questionários
-
ArtigoCanvas Req: Levantamento de requisitos de software com Canvas
-
ArtigoSistema de acompanhamento de requisitos
-
ArtigoGerenciamento e controle de mudanças de requisitos
-
ArtigoElicitação de Requisitos: Levantamento de requisitos e técnicas de Elicitação
-
ArtigoMetodologia JAD: Técnicas para elicitação de requisitos
-
ArtigoGerenciando requisitos com Kanban
-
ArtigoO BABOK e a elicitação de requisitos
Ferramentas para a gestão de requisitos
Para uma boa gestão dos requisitos, o mais indicado, obviamente, é o uso de uma boa ferramenta. Sem ela, torna-se inviável o controle daquilo que representa a base para qualquer projeto de software. Para conhecer algumas das opções mais utilizadas no mercado, acesse:
Boas práticas com Requisitos
Uma boa maneira de encurtar o caminho no aprendizado de qualquer ciência é conhecer boas práticas. Nesta seção, separamos alguns posts que abordam práticas e soluções recorrentes que podem lhe ajudar quando você estiver na fase de elicitação de requisitos. Confira:
Requisitos e os Métodos Ágeis
Independentemente de você adotar algum processo tradicional de desenvolvimento de software ou adotar alguma metodologia ágil, a engenharia de requisitos estará. Mas, existem diferenças na execução dessa fase quando estamos em um projeto ágil? Para obter essa resposta, indicamos as publicações a seguir.
-
ArtigoRequisitos para agilidade
-
ArtigoTrabalhando com requisitos ágeis
-
ArtigoLevantamento de requisitos utilizando o Scrum
-
ArtigoTrabalhando com requisitos no Scrum
-
ArtigoIntrodução a métricas de software
-
ArtigoScrum backlog: requisitos não funcionais
-
ArtigoDesenvolvimento Ágil: análise sobre requisitos tradicionais
Engenharia de Requisitos e o MPS.BR
E no que diz respeito ao MPS.BR? O que dita esse modelo que visa a melhoria de processos para o desenvolvimento no Brasil no que tange a Engenharia de Requisitos? Para abordar esse assunto, recomendamos os posts:
Engenharia de Requisitos na prática
Agora que você já conhece os principais fundamentos sobre a Engenharia de Requisitos e até mesmo se aprofundou no assunto, que tal pôr em prática todo esse conhecimento? Nos posts a seguir abordamos como documentar e detalhar os requisitos de software.
-
VídeoDocumentando requisitos de um sistema - Abordagem prática
-
ArtigoDetalhando os requisitos de um sistema de solicitações - Parte 1
-
ArtigoDetalhando na prática os requisitos de um sistema de solicitações – Parte 2
-
ArtigoProcesso de mudança de requisitos na práticas
E para que você possa ver como uma reunião de levantamento de requisitos é conduzida, bem como acompanhar o processo de amadurecimento das ideias que levam a concepção e, posteriormente a codificação de um programa, sugerimos o curso abaixo:
Tudo bem, agora que você tem os requisitos, o que fazer com eles? Por onde começar a programar a aplicação? Assista no DevCast abaixo uma conversa cheia de dicas sobre esse próximo passo.
Tópicos especiais sobre Requisitos
Como visto, a Engenharia de Requisitos é uma ciência ampla e que não para de evoluir. O avanço nessa área nos ajuda a identificar requisitos com mais precisão e, com isso, planejar software com maior grau de precisão para atender ao que realmente o cliente deseja.
Nos posts a seguir reunimos mais alguns tópicos que podem lhe ajudar a identificar com mais facilidade o que realmente é desejado para o sistema a ser desenvolvido.
-
ArtigoIniciando a Gestão de Riscos pela etapa de Engenharia de Requisitos
-
ArtigoGerenciando mudanças a partir de requisitos
-
ArtigoComo extrair os requisitos de usabilidade de uma aplicação
-
ArtigoUso de cenários para especificação de requisitos de qualidade e avaliação de arquitetura
-
ArtigoPrincipais Anomalias Arquiteturais de Software Novo!
-
ArtigoImpacto de requisitos não funcionais em projetos de software
Modelagem de Software
Tão importante quanto definir os requisitos e a arquitetura do software é estruturar essas informações de forma que arquitetos e programadores possam compreendê-las. Para intermediar esse processo utilizamos hoje diferentes opções de modelagem.
É sobre esse que trataremos a partir de agora. Assim, você terá uma introdução às técnicas mais utilizadas, com destaque para a Modelagem de Software com UML.
Com o intuito de introduzi-lo à modelagem de software, confira os posts abaixo:
Modelagem de Software com UML
A UML é a linguagem mais utilizada quando o assunto é modelagem de software. Definida de forma simples como um conjunto de diagramas que representam elementos, características e comportamentos de um software, essa opção traduz para o programador como ele deve transformar os requisitos do software em código, ao mesmo tempo em que respeita a arquitetura proposta.
Aprenda agora o que é UML e como realizar a análise e projeto de forma orientada a objetos, usando para isso diagramas UML, um recurso indispensável a todo profissional da área de desenvolvimento.
-
DevCastPor que eu preciso da UML?
-
ArtigoIntrodução a UML
-
CursoO que é UML?
-
CursoAnálise e Projeto Orientado a Objetos
-
ArtigoIntrodução à UML: Mecanismos gerais
-
ArtigoModelagem de software com UML
-
ArtigoO que é UML e Diagramas de Caso de Uso: Introdução Prática à UML
-
ArtigoUML e os diagramas de casos de uso, sequência e atividade
-
ArtigoConhecendo os diagramas da UML através de um estudo de caso
-
ArtigoPrincípios e técnicas para construção de bons modelos conceituais
Diagrama de Casos de Uso
Utilizado para representar os requisitos funcionais de um software, o diagrama de casos de uso é um importante elemento para a documentação do projeto, comunicação interna do time de desenvolvimento e, mesmo, comunicação com o cliente. Por isso, é um ponto fundamental a todo engenheiro, arquiteto, programador, entre outras ocupações que atuam em um projeto, compreender e saber criar diagramas de casos de uso.
Para começar a aprender sobre eles, acesse:
Casos de Uso na prática
Para saber como criar diagramas de casos de uso, confira os posts abaixo. Neles você poderá identificar uma relação direta entre a especificação de requisitos e o assunto tratado neste tópico. Ao utilizar diagramas de casos de uso estamos representando, de forma visual, requisitos funcionais do software a ser desenvolvido.
Diagramas de classes e de sequência
A UML não se limita ao diagrama de Casos de Uso. O diagrama de classes e o diagrama de sequência são mais duas opções. Dessa vez com um nível mais baixo de abstração, com esses diagramas representamos não mais funcionalidades, mas artefatos diretamente relacionados ao código do projeto em desenvolvimento.
Com os posts abaixo você aprenderá como criar e interpretar esses dois diagramas:
UML na prática
A seguir reunimos mais alguns posts que abordam a linguagem de modelagem unificada na prática:
Tópicos especiais sobre UML
Para se aprofundar em mais alguns assuntos nos quais podemos fazer uso de UML, acesse as seguintes publicações. Entre elas você aprenderá, por exemplo, como lidar com a UML quando utiliza o framework ágil Scrum.
Modelagem Ágil
Além da modelagem tradicional, com o advento dos projetos ágeis também foi criada a Modelagem Ágil. Se você está interessado em como ela funciona, seus princípios, valores, entre outros aspectos a ela relacionados, acesse os posts:
Modelagem de Serviços
E a modelagem de serviços? A UML oferece alguma ferramenta para nos apoiar nesse momento? Como você poderá notar nas publicações abaixo a UML também pode nos dar suporte à modelagem de projetos SOA.
Modelagem Orientada a Agentes
Também podemos utilizar técnicas de modelagem para modelar softwares orientados a agentes. Para aprender sobre a Engenharia de Software Orientada a Agentes e como se dá a modelagem de software que adotam essa proposta, confira os posts:
Mais sobre Engenharia de Software
Além dos vídeos e artigos contidos nesse guia, a DevMedia publica com frequência novos conteúdos sobre engenharia de software, os quais você encontra nos Guias de Consulta abaixo:
-
Guia de ConsultaGestão de Projetos
-
Guia de ConsultaTestes de Software
-
Guia de ConsultaScrum
-
Guia de ConsultaModelagem de Processos de Negócio
Você também pode listar todo o conteúdo de Engenharia de Software clicando aqui.
<Perguntas frequentes>