O framework DORA Metrics destaca-se como uma abordagem abrangente e estratégica para avaliar o desempenho das equipes de desenvolvimento e operações. As quatro métricas essenciais – Deployment Frequency, Lead time for change, Mean time to restore e Change Failure Rate – não apenas oferecem insights valiosos sobre a eficácia operacional, mas também estão intrinsecamente interconectadas. Assim, ao adotar essas métricas, as organizações podem alcançar uma compreensão holística de seu ciclo de vida de desenvolvimento, promovendo uma cultura enraizada em qualidade, agilidade e melhoria contínua.
Tag: Gestão
Fuja da otimização prematura
À medida que exploramos os meandros da otimização prematura, torna-se evidente que essa prática pode ser uma armadilha sutil que pode prejudicar mais do que beneficiar o desenvolvimento de software. Infelizmente nem sempre a vaidade dos desenvolvedores se atém a isso. O renomado cientista da computação Donald Knuth nos alerta que a otimização prematura é a raiz de todos os males, destacando a importância de evitar decisões precipitadas e buscar um entendimento completo dos requisitos do projeto.
O básico de Apache Airflow
O Apache Airflow é uma ferramenta notável por sua flexibilidade e por trabalhar diretamente com python, que facilita bastante. O orquestrador de workflows de dados trabalha com diversas dags para cumprir o seu propósito. O artigo oferece uma visão geral tanto do conceito quanto de uma criação real em python.
A essência da Orientação a Objetos
Esse artigo traz as bases conceituais associadas ao paradigma Orientado a Objetos, mas não apenas as ideias de abstração, encapsulamento, etc. mas as consequências do seu uso. Por conta disso vemos, de modo geral, conceitos como Entropia de Software, Acoplamento e Coesão, e um pouquinho de código por que ninguém é de ferro.
Factory no Domain Driven Design
A Factory do Domain Driven Design (DDD) é um padrão tático que pode ser utilizado de modos diferentes, com o objetivo de facilitar a geração de novos agregados. Lembre-se que a instância de objetos tem que ser fácil, mas isso nem sempre é aplicado desse modo nos códigos que vemos no dia-a-dia.
Princípios e Acrônimos: SPOT, DRY, AHA, etc.
Essas siglas e acrônimos se espalham com muita facilidade por serem projetados para serem lembrados. Alguns soam bobos por forçarem muito a barra para gerar o encaixe do do explicação com o acrônimo. Além disso, alguns deles são simplesmente ideias gerais e outros são claros e definem pontos específicos na construção de projetos. Assim o artigo Princípios e Acrônimos: SPOT, DRY, AHA, etc. vai dar uma pequena visão geral sobre os mais utilizados hoje em dia. No mais, acho que eles nem sempre têm relação específica com o desenvolvimento, mas com a definição de projetos ou até mais longe: na condução das ações da vida.
Domain Driven Design tático
O DDD pode ser observado por dois grandes pontos de vista: o estratégico e o tático. O DDD estratégico oferece elementos conceituais robustos que ligam a estruturação do software com as características particulares do negócio. Já o Domain Driven Design tático dá meios para que implementações reais, independentes de linguagem de programação, consigam garantir a entrega das necessidades estratégicas. Muitos veem o DDD apenas do ponto de vista tático – com seu conjunto de Patterns – mas entenda que somente esse ponto sem a estratégia há um empobrecimento de seu uso e, de certo modo, destrói-se a implementação do DDD. Veja nesse artigo os 7 padrões do DDD tático e como eles podem ser utilizados.
Criando Context maps DDD com o VS Code
Um jeito simples e objetivo de criar um Context Map do DDD (Domain Driven Design) diretamente pelo VSCode. Ele possui uma linguagem CML que facilita a construção e já gera os diagramas como se espera.
Desvendando o Context Map
Entenda de uma vez por todas o que é Domain Driven Design estratégico e as nove possíveis relações entre os contextos. O DDD é uma abordagem completa para lidar com softwares grandes que tem como premissa o devido entendimento da complexidade do negócio utilizando a chamada Linguagem ubíqua. A partir daí se constrói mapas com domínios e sub-domínios. E continuando, a partir do mapa de domínios é possível extrair estruturas menores chamadas de contexto.
Domain Driven Design estratégico
Você também acha que usa DDD só porque tem pastinhas específicas organizando o código? Pensou errado!A estratégia da organização norteia tanto a estrutura corporativa (negócios existentes, modelos de negócio, fluxo de caixa, margens, etc.) quanto a própria estrutura do software, uma vez que ela tende a refletir tais características.Esse artigo vai da estratégia da organização até a estratégia associada ao DDD. Mas se seu objetivo é querer entender elementos como repository, agregações, value-objects ou mesmo estruturas de pastas comumente utilizadas em projetos desse tipo, entenda que esse artigo não entregará tais características. Pelo contrário, ele entregará os passos anteriores que fundamentam o uso do DDD numa empresa. Uma vez que entendo que esses elementos sem a estratégia não são DDD, mas tão somente nomes de pastas ou classes. De todo modo escreverei em algum momento um artigo sobre eles.