Olá sejam bem-vindos ao canal engenharia de software com ênfase uml Eu sou professor ganes gues e eu já atuo na área de modelagem de software há vários anos eu tenho quatro livros publicados sobre o assunto e eu já ministrei diversas palestras e cursos técnicos sobre modelagem de software utilizando a linguagem uml na aula de hoje eu vou dar continuidade ao tema sobre negociação de requisitos dessa vez eu vou apresentar o modelo em espiral ganha ganha Então vamos iniciar a nossa aula Então essa é a terceira aula sobre negociação de requisitos como eu falei nós vamos
trabalhar sobre o winwin spiral Model ou modelo espiral ganha ganha ah na verdade esse modelo ele foi proposto pelo autor do modelo de negociação ganha ganha o boen que também era o criador do modelo de desenvolvimento espiral um processo de desenvolvimento fortemente focado em riscos então ah esse modelo então ele é uma combinação do modelo de negociação ganha ganha e do modelo de desenvolvimento espiral ele tenta combinar as duas vantagens as boas características tanto do modelo como do processo então de acordo com os autores o boen e o kipt e o kipt ã uma dificuldade
o ou uma deficiência do modelo em espiral era determinar qual ela qual era a origem dos objetivos e restrições das partes interessadas bem como as alternativas elaboradas para solucionar eh conflitos ou contornar mitigar riscos então ah com a criação do modelo espiral ganha ganha isso é solucionado por meio da adição de três ATIV idades que são colocadas que são posicionadas ã Logo no início de cada ciclo espiral antes das atividades particulares do do processo de desenvolvimento espiral então Essas atividades elas são primeiramente identificar as partes interessadas da chave relacionadas a cada ciclo Quais são as
partes interessadas que são mais afetadas ou que mais afetam mais influenciam a aquele ciclo de desenvolvimento Lembrando que o modelo de espiral ele possui vários ciclos de desenvolvimento ah a segunda atividade é identificar Quais são as condições de ganho dessas partes interessadas Lembrando que condições de ganho são as condições de Vitória elas identificam os objetivos a as necessidades as restrições que determinadas partes interessados desejam alcançar ou precisam atender e a terceira atividade é negociar reconciliações ganha ganha das condições de ganho das partes interessadas ou seja chegar a situações em que o mínimo essencial das condições
de ganho de cada parte interessada em conflito é satisfeito para que todas as partes interessadas saiam satisfeitas da negociação ou minimamente satisfeitas que a essência de seus objetivo seja atendido pelo menos o objetivo de uma negociação é que todos saiam satisfeitos não se trata de uma vitória de uma parte interessada sobre as outras é que todas as partes interessadas se sintam vencedoras Isso é uma vitória real Caso contrário é uma imposição bom continuando Aqui nós temos uma figura que representa o o modelo espiral ganha ganha Então as primeiras três atividades são inseridas hã na frente
das outras atividades do modelo espiral Lembrando que o processo de modelo espiral ele possui diversos ciclos e ele é fortemente focado em identificar riscos então o objetivo disso é garantir que os riscos mais complexos sejam identificados Logo no início para garantir a viabilidade do projeto e se vale a pena realmente desenvolvê-la então Além disso quando se mescla o modelo ganha ganha com modelo espiral também se foca ah na necessidade de resolver conflitos de satisfazer as partes interessadas em termos que as suas condições de ganho as suas necessidades sejam satisfeitas pelo menos em sua essência então
a primeira atividade é colocada Logo no início do ciclo onde são identificadas as partes interessadas do próximo nível o próximo nível pode ser o primeiro nível próximo nível ou próximo ciclo obviamente depois se identificam as condições de ganho das partes interessadas e depois se rec cons siriam as condições de ganho Quando existirem conflitos e aí depois se inicia o ciclo de desenvolvimento espiral propriamente dito onde se estabelece objetivos restrições e alternativas para o próximo nível se avaliam alternativas de produtos e processos se resolvem riscos se define o próximo nível do produto e processo e se
validam as definições de produto e processo se revisa o ciclo e se compromete-se com o que Foi estabelecido bom então essa figura foi inspirada em bo em 2006 ah então ah vamos falar sobre a atividade de identificar as partes interessadas do próximo nível então o primeiro passo sempre antes de sempre no início de cada ciclo é identificar Quais as partes interessadas críticas Ah que vão ser diretamente afetadas ou influenciarão ou serão influenciadas serão de alguma forma terão alguma alguma forma de decisão alguma ã importância para aquele ciclo ã Então essas partes elas podem dependendo de
cada ciclo de cada interação Ah e é importante incluir todas as partes críticas para garantir que as suas necessidades sejam consideradas e seus possíveis conflitos sejam resolvidos não se deve deixar partes críticas de um determinado ciclo eh para trás ou não envolvê-las porque isso pode e provavelmente fará com que determinados erros determinados problemas determinados conflitos não sejam tratados e isso vai gerar riscos que poderão afetar gravemente o projeto bom em seguida nós temos a atividade de identificar as condições de ganho das partes interessadas então ah eu devo entender as condições de ganho ou seja os
objetivos as necessidades as restrições que as partes interessadas precisam ou desejam ser atendidos então isso ajuda a garantir que as expectativas de todas as partes interessadas sejam Claras e estejam alinhadas desde o início do ciclo depois nós passamos para a atividade de reconciliar as condições de ganho Então essa atividade é realizada se ocorrerem conflitos O que é relativamente comum então podem surgir conflitos conflitos entre as condições de ganho das partes interessadas Então nesse momento é necessário identificar a questão identificar o conflito e reconciliar esse conflito Então deve se encontrar compromisso entre as partes interessadas ou
soluções que satisfaçam a todas as partes interessadas de maneira minimamente aceitável então o processo de reconciliação ele pode envolver negociação trocas de concessões ceder de um lado ganhar de outro e a criação de soluções inovadoras aqui nós vamos apresentar um exemplo simples de aplicação do modelo espiral ganha ganha então nós temos o seguinte cenário novamente nós vamos trabalhar com a empresa a empresa global de Entregas de Encomendas Então essa empresa ela está desenvolvendo um novo sistema de controle de encomendas para gerenciar suas operações internacionais a empresa possui muitas filiais espalhadas pelo Globo e utiliza distribuidoras
parceiras nas regiões em que ela não atua então a organização ela possui uma divisão que é denominada gerência de encomendas que por sua vez possui dois departamentos que são o departamento de filiais e o departamento de distribuidoras parceiras Esses departamentos são eh subordinados à gerência de encomendas e a gerência de encomendas ela precisa trabalhar em conjunto com o departamento de Tecnologia de informação para garantir para segurar assegurar que o novo sistema ele irá atender as necessidades de todos os envolvidos bom então a gerência de encomendas era responsável como o nome já diz por coordenar todas
as operações de entrega de encomendas pelo Globo e ela precisa garantir que o sistema irá funcionar de forma eficiente tanto nas filiais como nas distribuidoras parceiras o departamento de filiais ele coordena as diversas filiais da empresa que são responsáveis pela entrega direta e pelo raste momento das encomendas para determinar em que local em que situação se encontra determinada encomenda o departamento de distribuidoras parceiras o nome já diz ele coordena as diversas distribuidoras parceiras que precisam de acesso ao sistema o objetivo é fornecer informações sobre as encomendas e também garantir que as encomendas atribuídas aos distribuidoras
parceiras sejam devidamente entregues no prazo estabelecido finalmente o departamento de Tecnologia da Informação ele é é responsável pela infraestrutura técnica da empresa e pelo desenvolvimento e manutenção desse sistema bom então no primeiro ciclo nós vamos identificar as partes interess do próximo nível Lembrando que nesse exemplo nós vamos eh identificar dois ciclos Na verdade o nosso Interesse nessa aula é identificar as atividades ganha ganha mas nesse primeiro ciclo Nós também vamos falar brevemente sobre as atividades do processo espiral no segundo ciclo somente vamos a ter as três atividades ganha ganha ã desse modelo então o gerente
de projetos na atividade de identificar as partes interessadas do próximo nível determinou que as partes interessadas críticas deste primeiro ciclo são gerência de encomendas o departamento de filiais o departamento de distribuidoras parceiras e o departamento de Tecnologia de Informação bom a segunda atividade é identificar as condições de ganho das partes interessadas a condição de ganho para a gerência de encomendas ela precisa de um sistema eficiente que permita monitorar o status das encomendas em tempo real e alocar recursos de forma otimizada entre filiais e distribuidoras parceiras já o departamento de filiais a sua condição de de
ganho é ele precisa de um sistema que permita a cada filial gerenciar o envio e recebimento de encomendas sem sobrecarregar a infraestrutura local e a condição de ganho para o departamento distribuidoras parceiras é que ela ele necessita de acesso ao sistema para coordenar entregas em áreas onde à Não há cobertura de filiais da empresa então é necessário entrar em contato com uma distribuidora parceira então ã ele precisa de informações Claras sobre prazos e alocações de rota para que a as encomendas alocadas para as distribuidoras sej entregues de maneira adequada e finalmente com relação ao departamento
de Tecnologia de Informação as condições de ganho são que ele precisa de um sistema estável com alta escalabilidade e faça manutenção bom ah agora vamos à atividade reconciliar condições de ganho e estabelecer objetivos Lembrando que essa atividade só ocorre se houver conflito mas nessa situação houve um conflito o conflito identificado foi o departamento de filiais deseja um sistema local robusto de tal forma que ele possa lidar com a carga de trabalho já o departamento de distribuidoras parceiras ele quer acesso a informações centralizadas e flexíveis de forma que ele possa coordenar as operações de forma mais
eficiente com as distribuidoras parceiras poré o departamento de Tecnologia de Informação Ele está preocupado com a possibilidade de sobrecarga principalmente se houver um aumento muito grande no volume de transações agora nós vamos trabalhar então com a reconciliação Então se negociou se garantiu que o mínimo das condições de ganho seja atendido Então se chegou a uma solução a solução foi então desenvolver uma infraestrutura escalável em nvel em nuvem Então dessa forma as filiais elas conseguem lidar com grandes volumes de transações sem sobrecarregar a estrutura local já as distribuidoras parceiras elas podem acessar informações em tempo real
sobre o prazo e dessa forma o departamento de Tecnologia de Informação ele aceita implementar o monitoramento ativo da carga do sistema com soluções automáticas para ajuste de capacidade em caso de Picos de demanda então o objetivo deste primeiro ciclo é desenvolver a primeira versão do sistema com funcionalidades básicas que permitam rastreamento de encomendas e alocação de recursos de maneira que seja possível garantir estabilidade e acessibilidade para todas as partes agora com a atividade de avaliar alternativas de produto e processo Isso já é uma atividade do ã processo de desenvolvimento espiral propriamente dito Como já foi
falado ele é fortemente focado em riscos Então se avaliaram diversas arquiteturas baseadas em servidores locais comparadas com arquiteturas baseadas em nuvem Então se concluiu que eh o o risco de sobrecarga em servidores locais é alto demais dessa forma a solução em nuvem foi escolhida levando em consideração a sua flexibilidade e a sua escalabilidade ah depois nós temos ainda no primeiro ciclo a atividade de definir o próximo nível do produto e processo e solucionar riscos então o desenvolvimento inicial vai ser focado nos módulos de rastreamento de encomendas e alocação de recursos haverá um painel de controle
Centralizado para gerência de encomendas e acesso distribuído para filiais e distribuidoras parcelas finalmente vão ser validadas as as definições de produto e processo e todas as partes interessadas irão se comprometer com essa solução então os departamentos eles validaram As definições estabelecidas para o produto e para o processo garantiram que as condições de ganho foram abordadas então todas as partes elas concordaram em dar seguimento ao desenvolvimento do software levando em consideração o que foi definido e estabelecendo compromisso de revisar e ajustar o produto se isso se mostrar necessário quanto a segundo cinco Bom primeiramente deve-se identificar
as partes interessadas do próximo nível nessa situação específica elas são as mesmas gerência de encomendas departamento de filiais departamento de distribuidores parceiros departamento de Tecnologia de Informação Bom agora vamos identificar as condições de ganho das partes interessadas do segundo ciclo com relação à gerência de comentas ela precisa melhorar o sistema de alocação automática de recursos que podem ser veículos motoristas entregadores com base na demanda Regional já o departamento de filaris ela ele tem necessidade de ferramentas de previsão de demanda de tal forma que ele consiga prever e organizar melhor os horários de envio e otimizar
o uso de veículos algo não muito fácil de se conseguir já o departamento de distribuidoras parceiras ele quer acesso a relatórios detalhados que cubram desempenho das entregas tempos de resposta de forma que o planejamento Logístico possa ser melhorado e o departamento de Tecnologia de Informação ele deseja garantir que a expansão das funcionalidades possa ocorrer sem comprometer a segurança e o desempenho do software bom E aí nós passamos à atividade reconciliar condições de ganho e estabelecer objetivos Lembrando que essa atividade só ocorre se houver conflito nessa situação houve um conflito o conflito identificado foi a gerência
e o departamento de filiais eles estão solicitando funcionalidades bastante complexas de forma que seja possível prever e alocar recursos automaticamente prever a necessidade de recursos e alocá-los automaticamente o departamento de distribuidores parceiras deseja relatórios mais detalhados e maior previsibilidade nas entregas e isso causa preocupações ao departamento di porque a complexidade é grande isso deixa ele bastante preocupado porque complexidade muitas vezes não pode ser totalmente prevista o nível de dificuldade é difícil de medir ah e o tempo e recursos necessários pode ser muito alto e ele também teme que as novas funcionalidades interfiram no desempenho do
sistema bom e agora nós vamos paraa fase de reconciliação então após eh identificar as condições de ganho de cada parte interessada ã resolveu-se integrar Inteligência Artificial ao sistema de tal forma que serja possível prever as demandas e alocar recursos automaticamente assim serão atendidas as necessidades da gerência de encomendas e do departamento de filiais e o departamento de distribuidoras parceiras e irá obter relatórios detalhados do que precisa através de uma camada de análise de dados que será intermediada pela Inteligência Artificial o departamento de Tecnologia de Informação ele concordou em implementar a nova funcionalidade em fases começando
com uma região Piloto para testes então o objetivo desse ciclo é desenvolver o módulo de alocação de recursos integrado com inteligência artificial de forma que seja possível otimização automática de rotas e previsões de demanda e melhorar os relatórios para as distribuidoras parcelas bom agora nós vamos falar das vantagens desse modelo então ele tem quatro vantagens principais que são foco em soluções colaborativas flexibilidade foco na mitigação de riscos integração de requisitos de diferentes partes interessadas vamos falar um pouco sobre cada um deles foco em são colaborativas Então esse modelo A exemplo do modelo de negociação ganha
ganha ele também incentiva fortemente a colaboração entre as partes interessadas ele promove a negociação Para que sejam alcançadas soluções que beneficiem todas as partes interessadas que as suas condições de ganho sejam minimamente satisfeitas Ah ele costuma melhorar o relacionamento entre as partes interessadas os conflitos uma vez que eles são solucionados de forma colaborativa eh aumentam o relacionamento entre as partes interessadas ao invés de eh que ao invés de manter insatisfações e conflitos então ele aumenta a satisfação Geral com o produto final porque todas as partes interessadas serão satisfeitas ou minimamente satisfeitas o essencial das suas
condições de ganho serão satisfeitas Uma Outra vantagem é a flexibilidade Então esse modelo é facilmente adaptável a contextos diferentes projetos diferentes então a as condições de ganho e os ciclos eles podem ser ajustados à medida que o projeto evolui Hum mas esse eh tipo de modelo espiral ele é mais adequado para sistemas complexos que exigem muitas iterações e que podem possuir muitos riscos inerentes a ele Lembrando que o modelo espiral foi projetado foi criado para situações de identificação e mitigação de riscos Ah bom esse modelo Então como foi falado ele tem um foco na mitigação
de riscos Ah então uma vez que os riscos eles são identificados e resolvidos ã principalmente no início de cada ciclo então a probabilidade de que esses R ocorram que falhas graves ocorram em etapas mais avançadas eh do projeto elas são bastante diminuídas então a a possibilidade que ocorra um risco que cause grande impacto no cronograma e no orçamento eh é bem menor então Eh os problemas maiores costumam ser identificados no início e eles podem ser corrigidos juntamente com os conflitos mais importantes também Logo no início do processo de desenvolvimento Ah e ele permite também a
integração de requisitos de diferentes partes interessadas Então e se o modelo ganha ganha ele permite que as partes interessadas eh que todas as partes interessadas que TM mesmo que que tenham diferentes expectativas e condições de ganho sejam ouvidas e sejam consideradas então tenta-se fazer com que o sistema atenda às necessidades essenciais de todos então os o produto final ele vai atender ã o maior número de partes interessadas preferencialmente todas agora nós temos as desvantagens as desvantagens são complexidade na negociação demandas de tempo e custo riscos de estagnação necessidade de envolvimento constante das partes interessadas e
dificuldade de implementação em ambientes altamente competitivos vamos falar um pouco sobre cada um complexidade na negociação bom ah isso acontece Principalmente quando existem muitas partes interessadas envolvidas então às vezes é difícil conseguir reconciliar todas as condições de ganho ah Além disso Como já foi falado eh os modelos de negociação funcionam no momento em que as partes interessadas elas estão dispostas a negociar elas estão dispostas a trabalhar colaborativamente para encontrar situações e que atendam as condições de ganho de todos então é necessário que para se alcançar um consenso então que a negociação se Estenda durante um
tempo bastante longo e que pode gerar atraso no desenvolvimento ah demandas de tempo custo uma vez que é uma abordagem bastante demorada eh ela pode exigir mais tempo e recursos Que outros métodos principalmente em projetos que tenham muitos ciclos e Isso poderá e aumentar bastante os custos do projeto então em situações em que o orçamento ou o cronograma não se muito extensos Ah pode ser difícil aplicar esse modelo Mas como já fal já foi falado o modelo em espiral é mais voltado para projetos complexos com Possivelmente altos riscos e altos e muitos conflitos então ele
tem que ser aplicado em situações que que exista um cronograma em um orçamento razoável bom existe também o risco de estagnação que ocorre eh quando as partes interessadas não chegam a acordo então aí o projeto pode entrar em impasse que vai prejudicar o progresso do do desenvolvimento software Ah então como eu falei é necessário que as partes interessadas estejam comprometidas com esse modelo queiram negociar queiram colaborar umas com as outras em situações em que ã as partes interessadas nenhuma das partes interessadas esteja disposta a ceder que quer impor a sua vontade em detrimento das outras
Ah isso pode causar problemas de aplicação desse modelo Ah então uma outra desvantagem eh é preciso o envolvimento constante das partes interessadas isso nem sempre é possível pelo custo eh que essas partes interessadas h t para a empresa e a sua importância elas são necessárias em outros em outros projetos em outras funções em outros departamentos então isso nem sempre é possível conseguir um envolvimento constante e o modelo para ser ser bem-sucedido ele precisa do envolvimento ativo e contínuo de todas as partes interessadas então se alguma parte interessada não puder se envolver ou não quiser se
envolver então isso pode causar um desequilíbrio Nas condições de ganho algumas condições de ganho podem ser melhor atendidas que outros então o resultado final pode não ser tão bom em termos de eh satisfação de todas as partes interessadas e dis solução de riscos Ah e existe a situação de ambientes altamente competitivos em que em determinadas organizações ou projetos existam grupos de partes interessadas que não aceitam H ceder em nada então eles não eles não querem adotar uma abordagem ganha ganha eles querem se impor então certos grupos ou certas partes interessadas individuais elas querem ã garantir
os seus próprios interesses sem levar em consideração os interesses das outras partes interessadas isso pode prejudicar a aplicação do modelo então como eu falei já ah algumas vezes esse modelo funciona se as partes interessadas estem estiverem comprometi as com com esse processo entenderem o seu a sua filosofia entenderem que não somente as suas condições de ganho tem que ser atendidas mas também a dos outros então em situações em que existem pessoas maduras e que estejam dispostas a negociar esse modelo funciona em situações onde tenham pessoas onde hajam pessoas que não estão dispostas a ceder que
possuem egos super alimentados que acham que estão sempre certas que querem impor sua vontade sempre fica um pouco mais difícil que esse modelo funcione Ah então basicamente esse modelo Ele É vantajoso em projetos complexos que envolvem uma grande quantidade de partes interessadas e que possam envolver eh riscos implícitos também que exijam eh bastante flexibilidade e que haja necessidade de mitigar esses riscos porém em consideração a sua complexidade a sua a sua exigência de tempo e o custo que esse modelo costuma demandar eh pode ser desvantajoso aplicar o modelo em projetos com recursos ah ou cronogramas
limitados e nós terminamos mais essa aula sobre negociação de requisitos eu espero que vocês tenham gostado dessa aula Se vocês gostaram eu peço que vocês curtam esse vídeo compartilhe com quem possa se interessar e se ainda não se estão se ainda não estão inscritos eu peço que se inscrevam no canal obrigado pela atenção nós nos vemos na próxima aula