Methodology

Methodology

The case for writing (isolated) test cases – #1

Should we write unit tests or integration tests ? "There is hardly anything in the world that someone cannot make a little worse and sell a little cheaper, and the people who consider price alone are that person’s lawful prey. It’s unwise to pay too much, but it’s worse to pay too little. When you pay too much, you lose a little money — that is all. When you pay too little, you sometimes lose everything, because the thing you bought was incapable of doing…

Read more
Methodology

Breaking down Continuous Delivery on Power BI

Context In this blog post we want to share with you how we implemented DevOps practices in a data visualization tool (Power BI) during a delivery project. What was the aim of this project ? To make it short, we had to automate the process of collection, transformation and visualization of the data for a large organization with entities spread across the world. The foundation has to be built using software craftsmanship practices leading to a cultural change in the development process. The output was…

Read more
Methodology

Super Apps development model explained !

Introduction If you ever stumbled, lately, on a tech article talking about Super Apps, it would probably mention that they were first invented  in 1999, by Mike Lazaridis, the founder of Research in Motion (RIM), the manufacturer of the BlackBerry device. Mike has defined Super Apps  as applications which make use of all the BlackBerry resources available. From usage of notification pop ups, context menu integration right down to being able to access any application from within anywhere on the device. Deep integration across the…

Read more
Methodology

SLO: The unexpected power of metrics

When operating a product or building an infrastructure, it is normal to ask yourself the question "Is my application working well?" In general, it is common to have two answers in these kind of cases:  Use monitoring to check if the application is working properly. Set up an alerting system to be aware of possible problems in the system However, we rarely wonder if alarms are relevant in my specific context (ex: when a container restarts) or if the metrics on my pre-made dashboards will…

Read more
Methodology

A Journey To build a Business-Driven Data Science Capability

Introduction We live in a world in which data is becoming a key business asset, playing an increasingly central role in the success of a growing number of companies. Data and the ability to transform data into business will become critical in all sectors in the coming years. A good mastery of data and its exploitation can be an important competitive advantage. This means that companies need to equip themselves with the technological and human resources to develop a skill set capable of leveraging data,…

Read more
Methodology

New Year’s Resolutions: Shed those excess pounds (from my Google inbox)!

TL;DR → Smart links to quickly clear out your Gmail inboxes Do you know your Do you know your current GMail storage usage?   How much is dead weight? To ring in the new year, I decided to finally buckle down and clear out my GMail inbox. I spent a total of 10 minutes and, just by cleaning out old emails, my inbox dropped from a size 16GB to a mere 4GB!  There are more than 650 people at OCTO. If we all do a little…

Read more
Methodology

Thoughts about Scaled Agile Frameworks and how to consider them

Comment choisir son framework d'agilité à l'échelle ?

"What if we scaled agile to the entire company..." This is a phrase heard more often than not in companies that becoming more mature at Agile. But what does this sentence mean exactly? What does the idea of ​​"scaling up" imply? Are there solutions that can be applied quickly? Quick overview: Did you say Scaled Agile Framework? What triggers an Agile transformation "at scale"? SWARMing, what is it? A strategy for using scaled agile frameworks ==> Read the entire article (free) <==

Read more
Methodology

Hexagonal Architecture: three principles and an implementation example

Documented in 2005 by Alistair Cockburn, Hexagonal Architecture is a software architecture that has many advantages and has seen renewed interest since 2015. The original intent of Hexagonal Architecture is: Allow an application to equally be driven by users, programs, automated test or batch scripts, and to be developed and tested in isolation from its eventual run-time devices and databases. To explore the benefits of piloting an application by automated tests, or developing and testing in isolation from the database, we recommend that you read…

Read more
Methodology

The Test Pyramid in Practice 5/5

In prior articles (1, 2, 3, 4), we’ve implemented isolated tests which offer us precise and reliable feedback - and are more or less fast depending on whether we’re running unit tests or component tests which need to load a Spring context. But these tests have their limits, precisely because they’re isolated. In this article we’ll deal with tests that are even higher in the pyramid: integration and end-to-end tests. This article originally appeared on our French Language Blog on 29/06/2018.

Read more
Methodology

The Test Pyramid in Practice 4/5

In the last article we described component tests: tests which are half unit and half integration test, that allow us to validate both integration within our application (via dependency injection) and also with peripheral components. All of which while remaining sufficiently isolated, to limit friction during execution. Because this isolation works perfectly, our API client tests suffer from a major flaw: if and when the supplier changes the service signature we learn about it much too late. This is what contract tests attempt to avoid,…

Read more