Postagens

Grandezas relacionadas a métricas

Imagem
Para a elaboração de uma boa métrica três grandezas podem ser utilizadas, são elas: A combinação das unidades dessas grandezas é uma opção interessante para elaborar a métrica ideal para seu propósito. Abaixo segue alguns exemplos de composição de métricas. Fonte: Slides do Profa. Dra.  Debora Maria Coelho Nascimento. 2019. Slides da Profa. Dra. Elisa H. M. Huzita. 2006. Slide do Profa. Dr. Fábio Levy Siqueira. 2018.

Métricas: Importância e Características

Para o engenheiro americano Tom DeMarcos “ Você não pode controlar o que você não pode medir", pois "Uma métrica é uma indicação mensurável de algum aspecto quantitativo de um sistema". A relevância dos pensamentos de DeMarcos pode ser compreendida quando aplicamos eles no contexto do desenvolvimento de software. Afinal, na construção de uma aplicação é de suma importância saber mensurar não apenas o desempenho do produto, mas também os custos e prazos necessários para o seu desenvolvimento. Através dessas métricas é possível embasar decisões e antever características importantes relacionadas a qualidade do produto em todas as etapas de sua confecção. No contexto do desenvolvimento de software é possível dizer que existem três gêneros de métricas, são eles: Métricas de projeto permitem compreender o projeto que será desenvolvido. Exemplo: Custos; Métricas de produto ajudam a prever características de qualidade do produto. Exemplo: Número de linhas de código ...

Funcionamento do Scrum

Para finalizar nossa série de artigos sobre o Scrum iremos descrever o relacionamento entre os papéis, eventos e artefatos.  No Scrum um novo produto começa a ser desenvolvido a partir de uma requisição do Product Owner . O projeto a ser desenvolvido é dividido em um conjunto de funcionalidades que são compilados em uma única lista priorizada, denominada Product Backlog . A partir daí é feito uma reunião chamada Sprint Planning , para definir o Sprint Backlog , que contém todo o trabalho que será executado durante a Sprint - um ciclo iterativo de 2 a 4 semanas. Com tudo organizado é iniciada a Execução da Sprint. Todos os dias, durante a execução da sprint, é feita Daily Scrum entre os membros do Dev Team - é importante frisar que o Scrum Master não pode interferir nessa reunião. Sempre ao final de cada sprint é feita uma Revisão da Sprint e posteriormente a Retrospectiva da Sprint . Ao fim da primeira sprint todo o processo é reiniciado a partir do Sprint Planning até s...

Plano do Projeto "Sistema de Gerenciamento de Instrumentos"

Plano projeto(final) de Raul Vilar

Feature Driven Development (FDD)

Imagem
Criado em Cingapura, entre 1997 e 1999, o FDD é um método ágil que reúne as melhores práticas de outros métodos, como o Coad. A sua premissa básica tem o foco em funcionalidades, o que permite à equipe do projeto realizar um planejamento incremental, isto é, por fases. Esse tipo de atuação ajuda a dar agilidade ao desenvolvimento de soluções em ambientes de extrema incerteza, em que as mudanças são inevitáveis. A programação por FDD começa com a visão global do negócio, já que esse método considera a soma de tudo mais importante que cada uma das partes separadamente. Passa-se, então, para o detalhamento do produto com a subdivisão por áreas a serem modeladas, culminando na descrição de cada funcionalidade. Por se tratar de uma ferramenta com foco no desenvolvimento, o FDD pode ser perfeitamente integrado ao Scrum, outro método ágil muito utilizado que também tem foco no planejamento e na execução do projeto. Assim como todos os demais métodos ágeis, o FDD também apresen...

Microsoft Solutions Framework (MSF)

Imagem
O MSF é um dos métodos ágeis mais usados por se destinar ao desenvolvimento de soluções tecnológicas por equipes reduzidas, com foco na diminuição de riscos para o negócio e no aumento da qualidade do produto final. O propósito é identificar as falhas mais comuns em projetos de tecnologia, mitigando-as e aumentando as taxas de sucesso de cada iniciativa. Dessa forma, assim como o Scrum, o MSF tem mais foco na gestão do projeto do que no desenvolvimento da solução em si. As suas premissas são: - Alinhamento da tecnologia desenvolvida com os objetivos de negócio do cliente; - Escopo bem estruturado e detalhado; - Desenvolvimento iterativo; - Gerenciamento de riscos; - Agilidade na resposta a mudanças. Assim como os outros métodos ágeis, o MSF também tem melhores práticas que devem ser observadas pela equipe para atingir os níveis de excelência buscados: - Comunicação aberta e transparente entre todos os envolvidos; - Visão compartilhada do negócio; - Equipe capacitada;...

Artefatos do Scrum e Definição de Pronto.

Imagem
Artefatos do Scrum - Product Backlog, Sprint Backlog, Incremento; e Definition of Done - DoD. Vamos começar identificando os três artefatos do scrum. Artefato é algo que criamos, como uma ferramenta para resolver um problema. No Scrum esses três artefatos são: Product Backlog, Sprint Backlog, e um incremento com sua definição de “feito”. São as três constantes que uma equipe Scrum irá revisitar e investir hora extras. Product Backlog É a lista principal de tudo que deve ser necessário no produto. É uma lista dinâmica de características, requisitos, melhorias, e consertos que atua como entrada no Sprint Backlog. É essencialmente a lista de tarefas da equipe “To Do”.Gerenciado única e exclusivamente pelo Product Owner, que o faz a todo momento, o product backlog deve ser mantido longe do time de desenvolvimento, para evitar dispersão. Sprint Backlog Durante a segunda parte da reunião de Planejamento da Sprint, é construído o Backlog da Sprint. Esse artefato lista as tarefa...

LeSS

Imagem
O LeSS, Large-Scale Scrum ou Scrum em Larga Escala, foi criado por dois agilistas com grande experiência em ajudar organizações com dezenas, centenas e, em algumas ocasiões, alguns poucos milhares de pessoas a usar o Scrum, em muitos casos em mais de uma localização geográfica. A ideia principal do LeSS é aplicar, a um contexto de larga escala, o Scrum tal como ele é. Ou quase. LeSS adiciona pouquíssimos elementos ao framework básico, chegando até a remover alguns aspectos, como a Meta do Sprint e a definição de Time de Scrum. Assim como o Scrum, LeSS é deliberadamente incompleto e utiliza a abordagem empírica da transparência, inspeção e adaptação para o trabalho, em vez de buscar aquela previsibilidade ilusória que dita o funcionamento de muitas organizações. A organização gira em torno do trabalho de Times de Desenvolvimento, que são seus elementos mais importantes. Esses times geram, cada um, funcionalidades prontas, de ponta a ponta, eliminando assim dependências assínc...

Papéis no DAD

Assim como o DAD adota práticas e estratégias de diversos métodos, os papéis sugeridos pelo DAD também seguem essa abordagem híbrida considerando o tamanho dos times. Desde um time que tem até 15 pessoas até um time com 50 pessoas ou mais. Os papéis não são posições. Qualquer pessoa assume um ou mais papéis e pode-se mudar de papel ao longo do tempo, e qualquer papel pode ter zero ou mais pessoas em um determinado tempo. Os papéis no DAD se dividem em papéis primários que existem em todos os times independente da escala e os papéis secundários que tipicamente estão presentes quando há escala e somente por um determinado período. Papéis Primários:  - Team Lead: É responsável por facilitar as cerimônias do time, remove impedimentos, promove cooperação e garante que o processo é seguido. - Product Owner: Representa as partes interessadas. Essa é a única pessoa responsável em uma equipe pela lista de itens de trabalho priorizados (chamada de backlog de produto no Scrum), po...

Desenvolvimento Ágil Distribuído (DAD)

Imagem
O DAD (Disciplined Agile Delivery) surgiu em 2009 quando Scott Ambler era chefe de metodologia de TI na IBM Rational. Ele foi idealizado procurando endereçar os aspectos críticos do desenvolvimento de software que alguns frameworks intencionalmente deixam para você decidir. Por exemplo: -  Abordagem híbrida: Adotando práticas e estratégias de diversos métodos pois uma das grandes vantagens do desenvolvimento de software ágil e enxuto é a riqueza de práticas, técnicas e estratégias disponíveis. -  Cobrir todo o ciclo de vida da entrega: O foco está na entrega que é um subset do ciclo de vida do produto que vai desde o conceito inicial até a entrega para operações e suporte. A figura abaixo mostra uma visão de alto nível do ciclo de vida do DAD. É um ciclo de vida de três fases no qual você constrói incrementalmente um produto. - Inception: Aqui ocorrem as atividades de iniciação do produto/projeto. Grande maioria das equipes faz algum trabalho inicial de levantame...

Eventos do Scrum - Sprint, Daily Scrum, Sprint Review e Sprint Retrospective

Imagem
Eventos do Scrum - Iteração, Reunião diária, Revisão, Retrospectiva. Continuando nossa série sobre eventos do Scrum, nesse post abordaremos mais sobre eventos, introduzindo novos eventos e explicando cada um deles. Começaremos com o evento principal, o coração do Scrum: A Sprint. A Sprint A Sprint é o principal evento do Scrum, que significa em tradução literal como corrida de velocidade, arrancada. Esse evento trata-se de um ciclo de desenvolvimento (iteração), que tem um tempo determinado com dia para começar e dia para acabar. Esse tempo pode variar de 2 a 4 semanas, mas nunca exceder 30 dias. Uma Sprint começa ao final da Sprint anterior, sem intervalos. O objetivo deste evento é transformar os itens do Backlog do Produto (funcionalidades descritas) em um software ou parte dele, totalmente funcional e pronto para uso, dentro do período definido para a Sprint. A Sprint engloba todos os demais eventos, que devem ser realizados dentro do período de tempo da Sprint. ...

Eventos do Scrum - Introdução e Sprint Planning

Imagem
Scrum – Eventos essenciais na aplicação do Scrum Alguns dos componentes mais conhecidos da estrutura do Scrum são o conjunto de eventos sequenciais, cerimônias ou reuniões que as equipes do scrum realizam regularmente. Esses eventos são todos “Time-Boxed”, tem tempo máximo definido. Apenas o Sprint, uma fez definida a sua duração, ela é fixa e não pode ser encurtado e nem alongado, os demais eventos, podem ser encerrados antes, desde que o seu objetivo tenha sido alcançado. Esses eventos servem para manter os 3 pilares do Scrum, que são a transparência, inspeção e adaptação, não realizar ou realizar somente parte dos eventos, irão prejudicar esses 3 pilares. Os eventos são: Planejamento da Sprint ( Sprint Planning ) Sprint Reunião Diária ( Daily Scrum ) Revisão da Sprint ( Sprint Review ) Retrospectiva da Sprint ( Sprint Retrospective ) Abaixo iremos descrever cada um  desses  os eventos chaves em que uma equipe scrum pode participar: Planej...

Três papéis essenciais para o funcionamento do Scrum

Imagem
Os três papéis essenciais do Scrum: Product Owner, Scrum Master e Dev Team. Uma equipe Scrum precisa de três papéis específicos: Product Owner, Scrum Master, e o Dev Team. E como as equipes Scrum são multifuncionais, a equipe de desenvolvimento inclui: testadores, designers de UX, engenheiros de operação além de desenvolvedores.  Product owner: Definir um objetivo claro As equipes ágeis são, por design, flexíveis e responsivas, e é de responsabilidade do proprietário do produto(Product Owner) garantir que elas ofereçam mais valor. O negócio é representado pelo Product Owner que informa a equipe de desenvolvimento o que é importante entregar. A confiança entre esses dois papéis é crucial. O Product Owner não deve apenas entender o cliente, mas também ter uma visão do valor que a equipe do Scrum está entregando ao cliente. Ele(a) também equilibra as necessidades de outras partes interessadas na organização. É um Product Owner efetivo aquele que: -Cria e gerenc...

O Scrum

Imagem
O Scrum é um framework dentro do qual pessoas podem tratar e resolver problemas complexos e adaptativos, enquanto produtivamente e criativamente entregam produtos com o mais alto valor possível. Muito parecido com uma jogada de uma equipe de rugby (de onde vem o nome). O framework foi criado por Ken Schwaber e Jeff Sutherland no final da década de 90. Os autores fundamentaram o Scrum no empirismo – corrente filosófica que afirma que o conhecimento vem da experiência e de tomada de decisões baseadas no que já é conhecido. Por conta disso, essa metodologia é receptiva ao emprego de processos e técnicas que possam melhorá-la.  Segundo Denisson Vieira, professor do Centro Universitário UMA, existe uma relação entre o conhecimento dos requisitos e da tecnologia – o gráfico abaixo mostra a relação. Para o professor quanto mais se conhece os requisitos e as tecnologias envolvidas mais previsíveis são as atividades necessárias para realizar o projeto. Nesse cenário metodologias com ...

As Vantagens de Utilizar o Kanban

Imagem
A utilização do kanban em desenvolvimentos de software apresenta algumas vantagens. Nesse post serão apresentados alguns: A autonomia de cada colaborador definir qual tarefa é interessante para si, além de ter um fácil entendimento do status das entregas e do que precisa ser feito. A priorização de um tarefa que pode ser feita por meio de um sistema de cores, garantindo o foco da equipe, para que ela entregue as tarefas que realmente são importantes. O aumento da produtividade é desencadeado pela priorização das tarefas que aumenta o foco e a equipe passa a ter mais certeza sobre o que precisa ser entregue e quando precisa ser entregue tudo fica mais fácil. Com um quadro kanban é mais fácil gerenciar o tempo que a equipe despende em cada tarefa, assim, ao entender como o tempo está sendo gasto é possível direcionar a equipe para solucionar problemas de produtividade com alternativas como delegar tarefas. O kanban é responsável por centralizar todo o trabalho de uma equipe...

Kanban: Para Que Serve e Quais os Seus Tipos ?

Imagem
No kanban tem três principais funções que servem para: - Gerenciar o fluxo de trabalho e permitir que os gestores tenham uma dimensão do que está sendo produzido e em que ritmo está sendo produzido; - Equilibrar os processos que vêm antes e depois, para que uma atividade não seja interrompida pela falta de uma outra que deveria ter sido entregue anteriormente; - Limitar a quantidade de trabalho que deve ser realizada pela equipe, respeitando a capacidade produtiva. Outra curiosidade do kanban é que existem tipo de diferentes de kanban, os principais são:  - Kanban de Produção:  aplicado ao longo da linha de produção com o objetivo de fazer gestão de tarefas.  Ele funciona basicamente em três colunas “A Fazer”, “Em Execução” e “Feito” Cada coluna possui uma série de cartões que representam as tarefas que precisam ser executadas e a equipe vai “puxando” as tarefas conforme o fluxo de trabalho, por isso o nome produção: cada cartão ...

Uma Introdução ao Kanban

Imagem
O Kanban teve seu surgimento nos anos 60, no Japão. Durante uma crise de recursos na montadora Toyota, ela teve que mudar sua metodologia de gestão. Nessa crise foram desenvolvidos dois sistemas de gestão, o JIT, que é um sistema de administração de produção e o outro foi o Kanban que teve como base o sistema de organização e funcionamento dos supermercados americanos.  O termo significa "tabuleiro", e o sistema utiliza post-its em um quadro para o fluxo da produção nas empresas. O objetivo do método é buscar a evolução, não a revolução com um poder de adaptação para qualquer tipo de negócio. Nesse sistema um novo item só pode ser iniciado quando o item em andamento é finalizado ou quando uma função automática inicia o mesmo instantaneamente.  O quadro é dividido como mostra a imagem abaixo: - To Do — atividades que precisam ser realizadas; - Doing — atividades que estão sendo realizadas; - Done — atividades que já foram finalizadas, avaliadas e...

MEME DA SEMANA

Imagem

Lean

Imagem
Mais que uma metodologia, a filosofia Lean é inspirada em práticas e resultados da indústria automotiva japonesa dos anos 80, principalmente a montadora Toyota, que visavam o “Lean Manufacture”, cuja tradução literal é Manufatura Enxuta.  E enxuto traduz muito bem as ideias do Lean, que institui o uso de nada além do que os recursos necessários para a realização de um determinado trabalho, etapa ou processo, de forma a evitar desperdícios. Tendo como principais vertentes: evitar desperdícios continuamente, reduzir custos e resolver problemas de forma sistemática, agregando valor para o cliente e superando os resultados esperados num primeiro momento. O Lean envolve vários pilares, como pessoas e processos e pode ser aplicado em diferentes áreas de uma empresa ou indústria, permitindo aos gestores aproveitar melhor o tempo dos colaboradores e aumentar a produtividade de suas equipes.  Contudo o Lean, apesar de ser muito antes do manifesto ágil, incorpora muito dos...

Por Que Usar Metodologias Ágeis?

Imagem
Normalmente associadas ao setor de tecnologia, elas são fundamentais para equipes que necessitam responder rapidamente às demandas de seus clientes. Portanto, é interessante que todo gestor conheça as principais metodologias ágeis, especialmente no cenário atual, em que a tecnologia está acelerando as operações de todo o setor. Quando são bem implementadas, elas conseguem orientar os profissionais a terem menos problemas para executar as suas atividades. As metodologias ágeis trazem uma série de benefícios para qualquer empresa. O principal deles é o aumento da velocidade com que resultados são entregues.  Além disso, há mais flexibilidade nas operações. Com maior autonomia, os gestores podem tomar decisões ousadas e que se alinham facilmente às necessidades dos clientes. Com as metodologias ágeis as entregas dos produtos são mais rápidas, o software fica mais flexível e com uma qualidade melhor, se tem uma maior proximidade com os stakeholders e uma melhora no g...