Category: Quality

AI based on a neural network

This blog post shows the construction of a neural network for an artificial intelligence. In addition, it is explained by way of example how this AI can be trained with the help of training data, backpropagation and evolution, but also which dangers can occur in this process.

Mutation Testing with Pitest

Unit tests can be useful for ensuring code quality and correctness. Not every unit test makes sense, however, and bugs often manage to escape detection by unit tests. How can test quality be increased so that programming errors are detected earlier and more reliably?

Naming conventions in Oracle databases

Naming conventions are an important part of coding conventions. Naming conventions are the rules for how “things” are named. In the case of a database, the “things” being named are schema objects such as tables, sequences, indexes, views, triggers as well as constraints. In a database it is essential to choose names with particular care.

A Groovy DSL for the Creation of Test Data using JPA

With the automated integrative testing of software that works with a complex JPA data model, it is invariably the case that sooner or later, one will face the question of how it is possible to create semantically meaningful test data without great cost. This article shows how Groovy can be used in order to define a Domain Specific Language (DSL) that enables test data to be defined so that it is easily readable, modular and separate from the actual test code.ieren.

Jenkins Pipeline plugin: code completion in IntelliJ

The Pipeline plugin (formerly Workflow plugin) for Jenkins revolutionises working with Jenkins by allowing for the creation of build jobs as code. As a result, build pipelines can be put under version control, become reusable,testable and more easily readable, among other things, as something “put together with mouse clicks”.

Requirement management in the product life-cycle with Redmine

In each project you face the same challenge again: creating a finished product that meets the requirements. In order to do this successfully, there are countless approaches and possibilities. A solution is the use of Redmine, an issue-tracking application that can be simply adapted to meet one’s own individual needs.

Static code analysis with SonarQube

This article describes which key figures can be collected by a static analysis and how these can be interpreted. The main focus is on technical debt and complexity.

Gauge – a lightweight behavior-driven testing tool

In this article, I am going to report on the test framework Gauge from the ThoughtWorks corporation. This is a tool which I met for the first time when I was writing automated end-to-end tests (E2E) for various web applications within a web platform. The purpose of the tests is to progressively check whether certain functions such as single sign-out, appropriate redirection to other pages or access authorisations to certain elements of a selected web application function as they should.

Understanding Software Quality

People often talk about high quality software products, but what is that? How can you measure or compare the quality of an application? Let’s take a closer look at this topic and discuss what quality is all about and how it can be improved.