olá pessoal aqui o fábio barbosa treinamentos neste vídeo vamos falar sobre levantamento de requisitos um tópico muito importante dentro da disciplina de engenharia de software bom gente é o seguinte no canal do panamá após o treinamento a gente tem muitos vídeos de linguagens de programação de vídeo sobre bancos de dados especialmente voltados pra eles kelly e outros vídeos do gênero e nós temos uma seqüência de vídeos muito legal de modelagem de dados um vídeo da parte teórica na construção de bancos de dados resolvi que seria interessante a gente ter vídeos também falamos sobre toda teoria
de desenvolvimento de software é esse vídeo piloto eu vou falar um pouco sobre levantamento de requisitos aproveitando o gancho de uma aula que eu dei um pouco tempo sobre esse assunto que o material 100 preparado e vou usar esse vídeo e aí conforme for a recepção do público eu vou gravar e postar mais vídeos sobre esse assunto sobrou esse e outros assuntos correlatos dentro do grande tópico do gigante tópico de engenharia de software então vamos falar sobre levantamento de requisitos especificamente que o levantamento de requisitos é a fase inicial e é uma das etapas mais
importantes no desenvolvimento de um sistema do projeto de desenvolvimento de um sistema então quando você vai trabalhar no desenvolvimento de um sistema um projeto de software existem várias etapas que devem ser cumpridas uma delas se chama levantamento de requisitos também chamada às vezes de análise de requisitos ou de licitação requisitos há vários nomes que o pessoal costumada levantamento de requisitos seu nome mas com um que é o levantamento de requisitos em si basicamente é entender o que o cliente precisa que ele quer para o software mail que ele possa querer ou achar que ele quer
levar em conta as regras dos processos de negócio tá então sempre antes de começar um projeto de software gente precisa saber a quais requisitos esse software deve atender até 6 óbvio isso na verdade você vai desenvolver um software você precisa saber o que vai ser colocado que vai a presente nesse software que você precisa desenvolver a que você precisa desenvolver não é algo que você decide isso depende da necessidade do cliente o principal objetivo do le mans no levantamento de requisitos é que os usuários no caso dos clientes e os desenvolvedores nós tenhamos a mesma
visão do problema que vai ser resolvido aqui é justamente isso que é desenvolvido o sol a gente vai tentar definir as necessidades dos usuários do sistema é bem conhecido na internet que em levantamento de requisitos está em nós uma coisa interessante pra gente já tem uma idéia geral da importância dessa disciplina é o seguinte primeiro quadrinho o cliente explicou que queria isso que a gente falou pro pro desenvolvedor para analista a gente olha eu quero isso aqui esse é o meu software o líder de projeto entendeu isso já é algo diferente o analista projetou isso
olha só totalmente diferente o programador fez isso o consultor de negócios descreveu isso o projeto foi documentado assim é interessante né tem nada ali é muito comum em projetos de software não têm documentação nenhuma errado isso as funcionalidades instaladas nada como cliente foi cobrado olha só como se tivesse feito um parque de diversões para uma montanha russa como ele foi mantido no fundo no fundo o que o cliente queria era só isso o pneuzinho que balançando inscreveu queria um balanço com três níveis ea gente teve todo esse problema aqui no meio do caminho traçado interessante
mas aí que representa bem mesmo que acontece na realidade quando a gente fala de requisitos de software nessas etapas que vocês veem aquelas realmente acontece infelizmente no mundo real no levantamento de requisitos deve ser realizado para evitar tudo isso aqui então pra que levantar os requisitos para identificar as necessidades reais dos usuários saber realmente o cara quer que o balanço de três o som pneu pendurado na árvore e verificar a viabilidade da implementação da pra fazer isso que o cliente quer ou não dá é impossível existe uma disciplina chamada estudo de viabilidade uma técnica chamada
estudo de viabilidade que a gente aplica para verificar se isso é possível inclusive promoveu vou fazer um vídeo falando especificamente só de estudos de viabilidade aloca as funções aos elementos participantes ou seja quem faz o quê é dentro do projeto criar um modelo do sistema e estabelecer cronograma as restrições não quando eu vou fazer o que eu vou fazer o que eu não vou fazer e assim sucessivamente é muito importante o levantamento de requisitos por conta de todas essas tarefas aqui e outras mais legal se pergunta not me entendendo aí a importância de levantar requisitos
mas o que é um requisito afinal de contas tecnicamente essa descrição de um requisito vamos ler a descrição técnica requisito é uma condição ou uma capacidade que um sistema ou um componente uma parte desse sistema deve alcançar ou possuir pra que para satisfazer um contrato padrão especificação ou qualquer outro documento imposto formalmente normalmente documentário basicamente a 15 que é algo que o software deve oferecer algo que deve estar presente no software ou uma função que o software deve executar a isso é um requisito que a gente identifica os requisitos então para saber o que é
um requisito que não aí a gente vai identificar os requisitos a partir de algas íntima de domínio do negócio a gente usa várias técnicas para isso para obter informações sobre os requisitos helsinque o sistema deve ter geralmente a gente tem que trabalhar em conjunto com os terroristas que são as pessoas interessadas no sistema todo mundo que é interessado no sistema porque eles têm um papel chave na hora de nos ajudar a nos auxiliar nossos desenvolvedores a descobrir os requisitos que quer tomar o domínio de negócio domínio do problema o da aplicação é a área específica
a coca em software vai ser desenvolvido condomínio negócio pode ser um software para a área de finanças para a área médica dá pra área de engenharia ou seja a atividade específica que é caracterizada pelos conceitos e tecnologias que só os especialistas da área consegue compreender se deve ter imaginado isso eu vou desenvolver um software para a área de finanças mas eu sou da área de uti eu entendo de finanças eu preciso saber alguma coisa de finanças para poder desenvolver software provavelmente você vai conversar com pessoas dessa área pelo menos para poder levantar os requisitos está
pelo menos pra conseguir entender o domínio de negócio no qual aquele software será aplicado por isso é muito importante entender esse conceito essa parte do mundo real relevante no desenvolvimento do software também chama isso de domínios negócio bom assim alguns problemas clássicos que a gente tenta resolver juntamente realizando a análise de requisitos ou que podem ser causados por uma análise mal feita a alguns deles comunicação do cliente com o analista isso é muito complicado e é crítico a comunicação do cliente com o analista ela tem que ser bem transparente e bem completa porque as informações
não forem trocadas não foram obtidas de forma satisfatória é bem provável que você tenha um levantamento de requisitos falho e mais para frente isso vai se traduzir um software com problemas a evolução dos requisitos também pode ser um problema porque eles podem mudar ao longo do tempo e você tem de gerenciar essas alterações requisito muda como eu faço para documentar e alterar isso durante o processo de desenvolvimento do software falta de conhecimento sobre o domínio é como eu acabei de explicar eu não sou da área de finanças mas vou desenvolver um software para financiar como
fazer eu por exemplo já trabalhei em projetos de software para a área da aeronáutica só que ninguém entendia nada de aeronáutica eu tive que aprender alguns conceitos chave naquela área para pelo menos entender o que estava fazendo ali na hora de desenvolver um banco de dados na hora de fazer o acesso ao banco criar uma tela tinha que entender que se tratava aquilo pra não desenvolveram fazer alguma coisa que não correspondesse será tá tão importante são problemas que a gente tem que combater para os requisitos sejam corretamente analisados o que a gente ganha levantando requisitos
então a gente vai obter no final das contas um documento esse documento é uma listagem dos requisitos que o sistema irá abarcar esse documento ele pode estar em linguagem informal ou seja um texto formal escrito a linguagem natural ou na forma de casos de uso eu aproveito para falar que os casos de uso são uma ferramenta domínio do ml ea gente vai ter um curso de web e também aqui no canal complementando essa nossa série grande de engenharia de software dessa forma pessoas que não são da área técnica consegue entender os requisitos lendo esse documento
se ele for inscrito em uma forma assim natural isso é importante porque quando você estiver discutindo com o cliente não é da área de uti ele não é da área de tecnologia não vai exatamente entender a tecnologia de tecnologia mas ele vai entender qualquer documento escrito em votação informal e até mesmo os casos de uso que são bastante simples de entender nesse documento que a gente obtém mantendo requisitos a gente não vai colocar soluções técnicas a gente vai colocar trechos de código específico algoritmos nada disso isso é papel lá na frente em outra fase do
desenvolvimento aqui a gente só vai estabelecer o escopo do sistema ou seja o que vai ter no sistema e que não vai ter um sistema bem simples assim tá bom a gente tem uma atividade importante no levantamento de requisitos que devem ser realizadas três principais fazendo aqui a licitação dos requisitos análise dos requisitos do registro os requisitos como a gente usar esses termos de licitação e análise de requisitos o mesmo significado de levantamento de requisitos não é errado as pessoas vão entender a com facilidade isso mas na prática elas têm pequenas diferenças entre si eles
citaram os requisitos é determinar os requisitos sistematicamente a um levantamento em si a análise é verificar esses êxitos que foram levantados se eles realmente corresponde ao que o sistema precisa verificar o estado deles vocês são incompletos amb ghosn uma coisa que você não consegue entender direito contraditórios e assim por diante e claro resolver esses problemas e o registro dos requisitos é fazer a documentação tá os 194 mais natural os casos de uso já citei ou ainda outros processos as suas principais atividades para o levantamento de requisitos muito bom dito isso a gente pode classificar os
requisitos tá em dois grandes grupos para facilitar o nosso levantamento do site de vídeos requisitos geralmente nesses grupos requisitos funcionais é f requisitos não funcionais rn fmd não são as duas placas teorias grandes de requisitos que nós temos vamos dar uma olhadinha no que são os requisitos funcionais e não funcionais que é um requisito funcional é um requisito que define uma funcionalidade do sistema daí o nome funcional de forma bem simples e claro um requisito funcional é um requisito que especificou que o sistema deve fazer cinema tem que fazer aquilo que foi especificado no quesito
funcional a gente não implementar o requisito funcional o sistema ele não vai funcionar como deveria e pode ser até que não funcione nada é muito importante o requisito funcional que isso não funcionou também tem a sua importância vamos ver alguns exemplos requisitos funcionais toque tem alguns exemplos é interessante quando você vai criar documentação como agente documentário exatamente dessa forma que você está vendo ali está em linguagem natural como você está vendo aqui e numerar os requisitos utilizando algum tipo de nomenclatura geralmente assim dentro de colchetes a sigla rf para indicar que o requisito funcional número
do requisito e você vai ele citando todos eles aqui alguns exemplos o sistema deve permitir que os professores realizem lançamento de notas e faltas dos alunos supõe um um sistema cadeia requisito funcional sistema acadêmico professor não consegue lançar notas as faltas dos alunos o sistema não funciona é obrigatório é isso o sistema deve permitir a emissão do histórico escolar ele deve ser possível calcular as notas médias das disciplinas não você não vai saber só não foi aprovado não deve ser possível emitir boletos para o pagamento das mensalidades em uma escola particular isso é extremamente importante
o sistema deve gerar nota fiscal dos serviços prestados obviamente são requisitos que entende estar obrigatoriamente presentes no sistema a não ser claro que o suplente diego não preciso disso como eu disse no começo do vídeo é quem diz o que vai realmente ser necessário dentro do sistema e wade durante série não preciso que me testou escola histórico escolar então não é quesito funcional tá o que são os requisitos não funcionais e não funcionais são requisitos que indicam na maioria dos casos características do sistema atributos do sistema que indicam qualidade do funcionamento do sistema eles estão
atreladas às funcionalidades do sistema mas eles não são as funcionalidades ou características como o desempenho do sistema confiabilidade escalabilidade portabilidade segurança usabilidade do sistema é muito comum e não só aqueles que dizem com rápido deve ser o sistema com fácil de usar e deve ser se reportava se ele pode ser executado em plataforma apercebeu e se ele escalava o seu possam ampliar o número base de usuários por exemplo do sistema simultaneamente ele continua funcionando esse tipo de coisa então esses critérios eles são mensuráveis no geral você consegue mensurar o desempenho consegue mensurar a estabilidade a
segurança é assim por diante a gente faz máscaras de requisitos não funcionais existem muitos deles como você já deve ter imaginado eles são inclusive classificados em requisitos de produto externo e organizacional antes dessas três subcategorias dos requisitos não funcionais ainda tem suas próprias subcategorias requisitos de usabilidade eficiência confiabilidade portabilidade para os requisitos de produtos entregue implementassem padrões para os organizacionais e interoperabilidade éticos e legais para os requeridos espera as coisas fora do sistema na prática a gente corre todos eles no mesmo documento basta levantar os eles carros por exemplo que alguns exemplos requisitos não funcionais
a mesma a gente vai sempre determinar e está esse que se utiliza uma linguagem natural o caso de uso no caso que estou usando linguagem natural entre colchetes a gente vai enumerando e qualificando os requisitos no caso do registo do êxito funcional rmf nascer a gente costuma usar alguns exemplos no histórico escolar pode ser impressa em pdf isso é único e não funcional se eu não conseguir implementar isso no sistema e continua funcionando ele só não vai ter estoque em pdf por exemplo eu posso conseguir imprimir na impressora o sistema deve ser implementado na imagem
python é que isto não funcional 10 outro aqui toda a sexta feira deve ser emitido um relatório de faltas dos alunos esse é um requisito não funcional não é uma funcionalidade essencial básica do sistema é algo que o cliente quer ele precisa a mais não é algo é incrivelmente importante para o sistema e se o aluno não poderá ter acesso aos dados dos outros alunos são requisitos de segurança ambiental isso o sistema ainda vai funcionar só que não vai funcionar da forma adequada tá então somos requisitos não funcionais aí a gente pode a gente pode
comparar os requisitos funcionais duas não funcionais olhando essa tabelinha dólares que os requisitos funcionais do lado direito os não funcionais e não funcionais eles são mandatórios obrigatórios a gente consegue visualizar nos casos de uso eles representam funcionalidades do produto o software no caso são relativamente fáceis de descobrir que são básicos não é um sistema escolar deve permitir cadastro das notas dos alunos é bem fácil de entender isso são verbos que a gente utiliza e eles representam as necessidades do negócio já os requisitos não funcionais não são mandatórios não significa que não seja importante eles podem
ser muito importantes mas não são mandatórios representam características e atributos propriedades do produto de software são um pouco mais difíceis de descobrir geral por conta disso e apresentam expectativas do negócio ao que se espera do negócio mas não é essencial ao negócio essa diferença básica entre requisitos funcionais e não funcionais ótimo de posse desse conhecimento a pergunta que vem aí como é que eu faço pra descobrir os requisitos levando esses requisitos existem muitas técnicas que a gente pode empregar eu tenho uma lista com algumas das técnicas aqui nas quais eu não conheço nenhuma delas como
funciona neste vídeo mas devo explicar o funcionamento de algumas dessas técnicas em outros vídeos exemplos workshop requisitos é uma técnica comum entrevista com este roubo é muito comum essa técnica questionário brainstorm etnografia jade é muito comum também utilizar o método board e assim porque existem outras técnicas além dessa é muito comum também a gente combinar essas técnicas por exemplo combinar brainstorm com questionário com a entrevista ou então fazer um jardim com a etnografia não é possível combinar técnicas desde que você domine para conseguir levantar os requisitos objetivos dessas técnicas todas basicamente o mesmo arrancado o
seu cliente a informação necessária completa e correta sobre o que você vai precisar para desenvolver o seu sistema beleza gente nesse primeiro vídeo expliquei rapidamente o que que é o levantamento de requisitos o que são requisitos a importância de levantar os requisitos e ele se tem algumas técnicas específicas para levantamento que a gente vai estudar em outros vídeos eu tenho uma pequena bibliografia recomendada e se aprofundando o tema a eduardo bezerra princípio de análise e projeto de sistemas sombra eo próximo deve emitir um artigo muito legal também dentro em produtores sobre requisitos de um livro
direito só que na prática que é muito legal que provavelmente vou fazer uma análise desse livro em breve colocar aqui nunca no item todo nos outros materiais disponíveis e se daqui são os que eu utilizei a na pesquisa pra criar esse material pra vocês beleza gente isso aí espero que vocês tenham gostado aproveite para se inscrever aqui no canal da voz um treinamento se você não se inscreveu ainda e também para estão no site não sei que o site ou www.barmadalena.com.br obrigado e até a próxima só também gostaria de agradecer a todos que têm contribuído
com a bola são treinamentos na forma de doações seus nomes estão aparecendo aqui no lado esquerdo do meu lado direito e sou profundamente grato a todos vocês e se você quiser contribuir com a bola nos treinamentos pode nos fazer uma doação via paypal ou então o nosso projeto no que cante aqui embaixo na descrição do vídeo nós temos os links para que você possa fazer a sua contribuição é isso aí muito obrigado pessoal e até mais