Baixe o app para aproveitar ainda mais
Prévia do material em texto
As vantagens e desvantagens dos modelos tradicionais. Modelo cascata: Trata-se de uma espécie de roteiro que determina, de forma sequencial, as etapas para desenvolvimento de um projeto. Seu principal objetivo é garantir que as ideias sejam analisadas sob todos os aspectos, de modo que nada fique de fora. Normalmente, tudo começa com um levantamento dos requisitos do cliente. Depois disso, vêm as estimativas, o cronograma e o acompanhamento. O projeto é então analisado, construído, testado e finalmente, implantado. Aplicar corretamente o modelo em cascata significa seguir esses passos na sequência proposta, de modo que cada etapa concluída leve automaticamente à próxima. A sequência é basicamente a seguinte: requerimento — projeto — construção — integração — testes — implantação — manutenção. Vantagens: Uma das principais vantagens do modelo é que, quando bem utilizado, ele não permite pular fases. A etapa seguinte só é iniciada após concluída a anterior. Com isso, é possível garantir que não haverá falhas de aplicação do modelo no decorrer do projeto. É importante ter em mente que todas as fases são igualmente importantes. Escolher não segui-lo totalmente pode comprometer o funcionamento de toda a estrutura. Aí está outra vantagem: tudo o que modelo pede é realmente necessário, nada deve ser considerado perda de tempo. Cada fase é bem definida e deixa claro o que precisa ser feito para passar por ela. Além disso, a sequência determinada também foi pensada: existe uma razão pela qual as etapas acontecem na ordem determinada. Dessa forma, o foco no planejamento aumenta e o projeto se torna algo realmente estruturado. Desvantagens: Um ponto que pode ser considerado como desvantagem por alguns clientes é que o modelo em cascata exige que todos os requisitos sejam definidos no início do projeto, já na primeira fase. Além disso, só é possível visualizar algo quando as fases já estão bem avançadas, quase no final de tudo. Não existe uma obrigatoriedade de feedback entre as fases e não é possível simplesmente voltar para corrigir possíveis falhas. Isso transmite a sensação de que é necessário ter atenção redobrada para que nenhuma etapa seja concluída com erros. Os requisitos determinados também não podem ser modificados e, por isso, é necessário seguir o modelo à risca. Quando implantado em equipe, pode ser que nem todos os integrantes acompanhem o ritmo. Nesse caso, é necessário esperar que todos alinhem suas fases para só então avançar. Isso pode fazer que o projeto fique travado por um tempo porque um integrante ainda não concluiu sua parte na fase em que se encontra. Por isso, considera-se que o modelo em cascata exige grande sincronização entre os participantes e pode ser afetado por qualquer atraso ocorrido no desenvolvimento. Muitas vezes, o modelo não funciona como o esperado por falhas em sua própria implantação. É preciso sempre lembrar que pular ou inverter fases não é permitido. Portanto, se algum erro ocorrer em decorrência dessas ações, não se trata de uma desvantagem do modelo. Modelo espiral: O objetivo do modelo espiral é prover um megamodelo que pode acomodar diversos processos específicos. Isto significa que podemos encaixar nele as principais características dos modelos vistos anteriormente, adaptando-os a necessidades específicas de desenvolvedores ou às particularidades do software a ser desenvolvido. Este modelo prevê prototipação, desenvolvimento evolutivo e cíclico, e as principais atividades do modelo cascata. Sua principal inovação é guiar o processo de desenvolvimento gerado a partir deste megamodelo com base em análise de riscos e planejamento que é realizado durante toda a evolução do desenvolvimento. Riscos são circunstâncias adversas que podem surgir durante o desenvolvimento de software impedindo o processo ou diminuindo a qualidade do produto. São exemplos de riscos: pessoas que abandonam a equipe de desenvolvimento, ferramentas que não podem ser utilizadas, falha em equipamentos usados no desenvolvimento ou que serão utilizados no produto final, etc. A identificação e o gerenciamento de riscos é hoje uma atividade importantíssima no desenvolvimento de software devido à imaturidade da área e à falta de conhecimento, técnicas e ferramentas adequadas. Vantagens: Desenvolvimento repetida ou contínua ajuda na gestão de riscos. Os desenvolvedores ou programadores descrever as características com alta prioridade em primeiro lugar e, então, desenvolver um protótipo baseado sobre estes. Mudanças Este protótipo é testado e desejada são feitas no novo sistema. Esta abordagem contínua e constante minimiza os riscos ou as falhas associadas com a alteração no sistema. Adaptabilidade no projeto do modelo em espiral em engenharia de software acomoda qualquer número de mudanças, que podem acontecer, durante qualquer fase do projeto. Desde que o edifício protótipo é feito em pequenos fragmentos ou bits, a estimativa de custo torna- se mais fácil eo cliente pode ganhar o controle sobre a administração do novo sistema. Como o modelo continua em direção a fase final, a experiência do cliente no novo sistema cresce, permitindo bom desenvolvimento das necessidades do cliente reunião produto. Desvantagens: Modelos espiral *funcionam melhor para grandes projetos só, onde os custos envolvidos são muito maiores e requisitos de sistema pré envolve maior nível de complexidade. Modelo espiral precisa de habilidade extensa na avaliação de incertezas ou riscos associados ao projeto e sua redução. Modelos espiral elaboração de um protocolo, que deve ser seguido estritamente para o seu bom funcionamento. Às vezes torna-se difícil seguir esse protocolo. Avaliar os riscos envolvidos no projeto podem disparar o custo e pode ser maior que o custo para a construção do sistema. *Há uma exigência para mais explicações das etapas envolvidas no projeto, tais como avanço, blueprint, postos de controle e procedimento padrão. Modelo espiral serve como a melhor opção para empresas com objetivos de negócio voláteis, mas onde há uma necessidade de um protótipo para lidar com as complexidades dos processos de negócio. Este foi sobre as vantagens e desvantagens do modelo espiral e as etapas espiral de desenvolvimento do modelo. Espero que este artigo tenha ajudado com prós e contras do modelo espiral Modelo RUP: RUP (Rational Unified Process), traduzido em Processo Unificado Rational ou comumente falado “Processo Unificado” foi criado pela Rational Software Corporation, mas em 2003 foi adquirida pela IBM. A metodologia RUP utiliza uma abordagem de orientação a objetos em sua concepção e é projetado e documentado utilizando o UML para ilustrar os processos. Tem como principais características ser incremental e iterativo. Incremental significa que aquele software é construído e entregue em pedaços, constituindo um conjunto de funcionalidades completas. Através de pequenos ciclos de projetos - que correspondem a uma iteração - o software é melhorado através da adição de mais detalhes, o que resulta em um incremento no software. Iterações referem-se a passos e incrementos a evolução do produto. Vantagens: Processo robusto e bem definido com a geração de artefatos importantes; Os maiores riscos são atacados primeiro, diminuindo as chances de fracasso do projeto Desvantagens: Complexo e trabalhoso para projetos de pequeno porte; Exige experiência da equipe. Comparando métodos de desenvolvimento: A documentação de sistemas tem como foco os profissionais envolvidos na área de desenvolvimento e usuários de software. Várias metodologias já foram criadas para gerenciar documentações de projeto, entretanto, ainda restam dúvidas sobre o quanto se deve detalhar e qual a maneira prática e menos onerosa em relação ao tempo desprendido e até sobre a forma de disponibilização deste tipo de material para que fique de fácil acesso e interpretação.Neste artigo serão discutidas três abordagens distintas de apoio ao desenvolvimento de produtos de software. O modelo em cascata, que se caracteriza por suas fases, são totalmente dependentes uma da outra, ou seja, uma fase só começa depois que a anterior é finalizada. Este modelo se torna burocrático, pois não é permitida mudança dos requisitos no meio do processo de desenvolvimento. Com isso, uma funcionalidade não poderá sofrer alterações até que ela seja concluída. O RUP (Rational Unified Process) é uma metodologia de desenvolvimento iterativa evolutiva, que utiliza os conceitos de orientação a objeto e da UML para criar as notações gráficas através de diagramas. Por fim, será apresentado o Scrum, que se trata de uma metodologia com foco na gestão ágil de projetos. Ele segue os conceitos presentes no manifesto ágil, que foram elaborados para desburocratizar o processo de desenvolvimento e focar no resultado final esperado pelo usuário. Este artigo também indica como se pode evoluir a documentação de requisitos com user stories e casos de uso no Scrum. O foco é aprimorar a especificação sem perder a praticidade e a objetividade deste artefato. Em que situação o tema útil: A importância do entendimento sobre uma funcionalidade a ser desenvolvida é a principal justificativa para que se documente os requisitos do sistema. O entendimento do modelo de desenvolvimento adotado, assim como suas implicações nos artefatos, que serão elaborados torna-se essencial para a escolha adequada de qual processo seguir na elaboração de um produto de software. Metodologia agile: A metodologia Agile surgiu em 2001 após a divulgação do Manifesto para o Desenvolvimento Ágil de Software. Esse manifesto foi assinado por 17 desenvolvedores e tem um conjunto de fundamentos voltados para tornar a criação de sistemas mais rápida sem comprometer a qualidade do produto final. Graças ao sucesso que teve, ela tem sido adaptada para outros cenários, o que a tornou comum em ambientes para além dos projetos de TI. O manifesto que fundou a metodologia Agile trouxe um conjunto de princípios para orientar a mudança do ambiente corporativo e, com isso, garantir que os profissionais entreguem resultados em prazos menores. Seguir cada um deles é um passo chave para ter o sucesso ao implementar uma cultura ágil nas empresas. Os quatro mais importantes são os seguintes: • priorizar as interações e as pessoas acima de processos rígidos e ferramentas de uso obrigatório; • garantir que o software seja entregue e não ter tanto foco na criação de uma documentação abrangente; • ter uma rotina de trabalho pautada pela colaboração contínua com o consumidor e/ou o cliente e fazer da negociação de contratos algo secundário; • ter times preparados para lidar com transformações e mudanças sempre e não ter um planejamento abrangente como o principal fator que orienta as suas atividades. Quando esses princípios são seguidos, o fluxo de trabalho se modifica profundamente, e a empresa é capaz de alcançar melhores resultados. Um fluxo de feedback contínuo dos clientes permite que o produto final de cada projeto seja continuamente ajustado. Consequentemente, há mais satisfação e maior alinhamento de expectativas. As mudanças também passam pela rotina de trabalho das equipes, que se tornam mais integradas e flexíveis. Ou seja, os profissionais terão um fluxo operacional pautado pela flexibilidade e por orientações que podem ser modificadas sempre, o que exige mais preparo e ferramentas robustas. Investir na metodologia Agile pode mudar completamente o modo como a empresa lida com as demandas do mercado e de seus clientes. Os impactos passarão por todo o ambiente de trabalho, o que exige atenção para reduzir riscos e garantir engajamento das equipes. Se tudo for benfeito, será possível incorporar benefícios e melhorias como: • a priorização da satisfação do cliente em todos os processos internos; • mais flexibilidade para lidar com mudanças em projetos ou nas rotinas diárias; • entregas de resultados mais frequentes; • mais habilidade para entender as demandas de clientes e como elas podem ser atendidas; • criação de um ambiente de trabalho com alta colaboração e inovação; • comunicações diretas e em mais canais; • mais produtividade em todas as etapas da cadeia de trabalho; • menos dificuldades para executar rotinas diárias. Comparativo entre metodologia agile e tradicional: Para qualquer coisa que queremos desenvolver hoje em dia precisamos fazer um projeto. Em meio ao processo do projeto, devemos ficar atentos a algumas especificações, como os prazos, custos, qualidade e satisfação do cliente, pois o não cumprimento destes pode nos trazer alguns problemas mais à frente. Por isso, https://tegra.com.br/bem-estar-no-ambiente-de-trabalho/ https://tegra.com.br/3244/ https://tegra.com.br/equipes-ageis/ cada vez mais damos a devida importância ao gerenciamento de projetos e em como a utilização de metodologias podem nos ajudar a gerir melhor tudo isso. Atualmente temos dois tipos de metodologias que são bem conhecidas, principalmente se tratando de desenvolvimento de software: as metodologias tradicional e ágil. Metodologia Tradicional A metodologia tradicional tem etapas bem definidas sendo o planejamento do projeto, uma estimativa em termos de prazo e orçamento, a execução e entrega no final. Por exemplo, em um desenvolvimento de software financeiro, teríamos o seguinte fluxo: • Planejamento do software (como ele ficará no final) • Planejamento das atividades que serão necessárias (programação, design, etc) • Definição de prazos e custos • Execução • Testes • Implantação A metodologia tradicional segue um modelo sequencial, ou seja, uma etapa deve ser executada após a outra, sendo assim, uma tarefa não pode ser iniciada enquanto a anterior não for concluída. Também se espera que seja executado exatamente o que foi planejado, focando no resultado final. Para ser um sucesso, não basta apenas seguir essa ordem, é importante entregar no prazo, dentro do orçamento e da qualidade esperada. Na metodologia tradicional o produto só irá “fazer sentido” e ter valor quando o projeto estiver 100% concluído. Dentro dessa metodologia a mais conhecida é o modelo cascata. O principal receio dentro da metodologia tradicional é que ela não tem muita flexibilidade em relação a mudanças. Qualquer mudança no meio do caminho é vista com grande preocupação pelo gerente de projetos. Metodologia Ágil Apesar do nome, a palavra ágil aqui não significa agilidade e sim o poder de “quebrar” o projeto em partes menores. Ao contrário da metodologia tradicional que você faz apenas uma entrega já com o projeto final, aqui você faz entregas constantemente até entregar todo o projeto. A preocupação com custo, qualidade e prazos são as mesmas da metodologia tradicional, porém você consegue controlar e gerenciar as mudanças que provavelmente irão aparecer no decorrer do projeto. Na metodologia ágil o foco principal é a entrega de valor ao cliente, por isso é priorizado a entrega à documentação, por exemplo. Mas isso não quer dizer que não é documentado, não planejado, assim como na tradicional. Na metodologia ágil também existem esses aspectos, mas de maneiras diferentes. Por exemplo, o planejamento da metodologia ágil é de forma iterativa e incremental enquanto a da tradicional planeja com muita antecedência como será cada etapa do projeto. Dentro desta metodologia o mais utilizado e que provavelmente você já ouviu falar é o Scrum. Concluindo : Vale lembrar que a escolha da metodologia é importante não somente para se ter sucesso no processo, mas principalmente, na entrega do produto. As duas metodologias têm vantagens e podem ser utilizadas até mesmo de forma conjunta, convivendo perfeitamente bem, até mesmo porque o foco das duas é a otimização de projetos. A escolha entre a metodologia tradicionale ágil não precisa ser um conflito. Deve-se respeitar às premissas das duas metodologias e saber o que cada uma pode agregar aos objetivos de cada projeto. Google No Google, vários setores apostam em métodos ágeis de desenvolvimentos de softwares, como o Scrum, criando e testando serviços e produtos. Cada equipe escolhe a tecnologia o método que melhor pode ser aplicado para a resolução de problemas. Um dos projetos em que se utilizou a metodologia Scrum foi no desenvolvimento do Adwords , você confere uma palestra dada por Jeff Sutherland, durante uma Google Tech Talks, comentando a implementação na empresa. Como você pode perceber após a leitura deste post, muitas são as empresas de renome que adotam a metodologia Scrum. Mas saiba que essa metodologia também pode ser aplicada em pequenas empresas, sendo eficiente da mesma forma em negócios de pequeno e médio portes. Você provavelmente já conhecia as empresas que utilizam a metodologia Scrum, certo? Agora, que tal aplicar uma metodologia ágil como essa na sua empresa e se destacar no mercado? Conheça o Orange Teams, que usa uma metodologia baseada nas melhores práticas de cada metodologia ágil do mercado para desenvolver projetos de alta performance! https://www.treinaweb.com.br/blog/scrum-como-ferramenta-de-apoio-ao-gerenciamento-de-projetos/ Metodologia Tradicional Metodologia Ágil Google
Compartilhar