Thank you Pedro, a useful and informative article. The sections on the Abstraction, Expand and Contract, and Feature Toggles patterns are particularly interesting. I am, however, surprised by your statement: "Trunk-Based development is the recommended branching strategy for Continuous Delivery". There are many expert software teams using branching as a core component of their CI/CD strategy. Indeed, in some situations branching is a necessary approach to avoid such anti-patterns as code freezes. One example of a branching strategy which is recommended by some ALM practitioners (e.g. Marcel de Vries) is Vincent Driessen's 'A successful Git branching model', which can be found here: http://nvie.com/posts/a-successful-git-branching-model/.