How to combine Agile with Gamification: write better User Stories

Agile is about being fast and flexible at delivering value, but that doesn’t mean that you shouldn’t care too much about writing User Stories. The description you’ll add to them should not only enable communication and constructive feedback, but also motivate your team.  Within this article I’ll try to expose what are the common pitfalls while writing a User Story, and how game designers have understood this before companies so you can apply gamification techniques to it.

read more

How to combine Agile with Software Architecture

How to combine Agile with Software Architecture

There are many articles about this topic: your company/team is working Agile and you notice soon that you miss Software Architecture… or at least a little bit of software-design-common-sense if you don’t like big words.

I would like to share my view on the problem, and also what I think is a pragmatic solution to deal with this difficult Agile and Architecture combination.

read more

Integration testing with Mockito and Spring Boot

Within this post, I show you how to setup a Unit Test in Spring Boot performing HTTP requests with Mockito. In this case, we’re using Model in our controller, but we could follow similar instructions for a REST controller case.

Sometimes testing web access with Spring Boot can be tricky. There are some different annotations for different scenarios, and the configuration is also one of the most struggling parts.

read more

Mapping REST API to Plain Java Objects (POJOs)

Sometimes you want to connect to a REST API from a Java application. There are several approaches to it, from parsing raw JSON content to model the classes in Java with all possible details. In this post, I describe how to solve this in a practical manner, especially the fact of not having the JSON schema for the data that you’re retrieving from the REST API. How can we map this structure to Java Objects with almost no effort? 

I use as an example the SonarQube API, given that is the one employed in another post on this blog.

read more

A gamification experiment with SonarQube

A gamification experiment with SonarQube

Some time ago I finished a gamification MOOC by Coursera and then I decided to put it into practice in my job since I found it really interesting. I set up a game in which the more Sonar issues you resolve, the more points you get, and you can rank in a leaderboard and obtain badges.

In this post, I’d like to share with you the results of this experiment, how people were the key to success, resolving many potential bugs and reducing our technical debt.

read more

How to redirect JBoss / Wildfly logs to Logstash using syslog

Logstash is a fantastic product to parse and process logs and events from other systems. You can store the resulting data in ElasticSearch and later visualize and analyze the results with Kibana. The combination of the three is called ELK and it produces a really powerful way of working with data, from processing and storing it to its visualization in many forms.

If you work with a web application deployed in JBoss or Wildfly (I’ll cover in this article Wildfly 8.2.0) you can send your all your logs or only the ones coming from your application to Logstash, for further processing. You can use it for example to visualize in Kibana how many errors your application threw, or how many times a specific event was triggered.

read more