Flaky tests (aka fragile, brittle or instable tests) are tests that fail or pass intermittently without any changes to the codebase. They are a common problem in software development and can be frustrating to deal with. However, it is important to be disciplined with flaky tests because they can lead to a number of issues. Why it is important to deal....

In the course of implementing a business requirement, I recently had to calculate the difference between two DateTime fields in SAP C4C for reporting which calculates ticket assignment time from the creation. However, I couldn’t find any straightforward blog that provided a simple solution to this problem. Fortunately, SAP provides a function called Delta() that....

Clean code é um termo usado para descrever software que é fácil de ler, entender, manter e testar. Neste blog, quero resumir alguns princípios importantes e fornecer uma introdução ao tópico para iniciantes. Além disso, o blog deve se conectar ao repositório de guias de estilo, aos livros e às iniciativas atuais em que os....

Clean Code: Wartbar, Lesbar und Testbar Clean Code ist ein Begriff, der Software beschreibt, die einfach zu lesen, zu verstehen, zu warten und zu testen ist. In diesem Blog möchte ich einige wichtige Prinzipien zusammenfassen, um Anfängern einen Einstieg in das Thema zu ermöglichen. Außerdem soll der Blog eine Verbindung zum Style Guide Repository, den....

Clean code is a term used to describe software that is easy to read, understand, maintain and test. In this blog I want to summarize some important principles and provide an entry into the topic for beginners. Besides, the blog shall connect to the style guide repository, the books and current initiatives where experts can....

This blog is about an important principle for improving the quality of documentation. It can also help to improve decision making, collaboration and more effectively use meeting time by leveraging written asynchronous communication. Documentation (e.g. Architecture Documentation, Good Practices and Product Documentation) should be treated as code, which means that it is: placed under version control very simple syntax changes undergo reviews....

An agile approach involves cross-functional teams where individual team members complement each other’s skills. With the move to cloud-based development, teams must often deal with increasing complexity and must learn quickly. Both aspects bring up new challenges when it comes to growing the necessary skills. This blog introduces some problems in empowering the teams to....

The blog aims to explore the topic of updating Open Source Library dependencies. Goals are to speed up fixing dependencies with vulnerabilities. And secondary to keep dependencies up to date. By that we can improve productivity, reduce toil and improve security. Open Source got a lot of traction in the last years and many system....

This is the first blog post of my behind-the-scenes series on the SAP AI Business Services portfolio. Each blog post will focus on one of the services and clarify the following questions: What can you do with it? What happens behind the scenes? How does retraining work? What else is possible? – Think outside the....

Writing readable, maintainable and testable code is a practice and discipline you can apply to any kind of programming language. And many developers switch between languages and frameworks (e.g. between ABAP backend and UI5 frontend development). Therefore we wrote the books Clean UI5 and Clean ABAP with the intention to simplify learning and make it easier....

“Investments for the future” is a French government-funded initiative which seeks to modernize and make the country more competitive while making it more attractive to investments and innovation. It focuses on strategic sectors including artificial intelligence (AI) for defense-security. The program works in three phases:  Industry sponsors are invited to submit a technical challenge to be....

Static application security testing (SAST) is a common essential step in the development lifecycle of large software companies like SAP. It enables detection of critical vulnerabilities in an application source code before deployment, when fixing the problem is the least expensive. While SAST have many known limitations, the impact of coding style on their ability....

In this three-part series I outline and demonstrate an approach to help newcomers get started more quickly with our tutorials, by describing and providing an environment with all the prerequisite tools installed ready to go. This is part one, where I describe the challenge and the base solution I’m going to go with. See also....

In this three-part series I outline and demonstrate an approach to help newcomers get started more quickly with our tutorials, by describing and providing an environment with all the prerequisite tools installed ready to go. This is part two, where I add the tutorial prerequisite detail to the Dockerfile I created in part one, and....

First word of caution: this blog is in the category ‘personal insights’: it is thus PERSONAL, it should be the start of a conversation, not the end… What is more useless than a blog with no comments? Imagine you are working for a large enterprise software company: you are a manager of a team of....

First word of caution: this blog is in the category ‘personal insights’: it is thus PERSONAL, it should be the start of a conversation, not the end… What is more useless than a blog with no comments? In this blog, we will describe how to manage the consequences of the ‘Monday topic’ event as described....