Tuesday, June 19, 2018

How to reach the Software Quality Graal?

Lately I was asked how many bugs and smells detected through SonarQube were acceptable for a software product. And a Scrum master inquired which organizational changes are necessary to empower software developers to write good code. Speechless and dumbfounded I was unable to answer these questions.

After quite some time I realized these persons believe tools can measure the quality of software. But tools can only measure non-quality.

They tell you when you are doing it wrong, only your heart can tell you when you are doing it right.

But first that does it means to have a quality software product?

Tuesday, June 12, 2018

What Does a Great Product Owner?

Often organizations state that the product owner role is very difficult to fulfill. I heartily agree being a great product owner is challenging.

And I also clearly state that his activities are often not the ones of a super hero but regular techniques a motivated and interested product owner can easily learn.

Below I took the list of activities of a great product owner article from the scrum.org site and discuss which ones are regular activities of any well-trained product owner.

Friday, June 1, 2018

What does a Product Owner?

The product owner is one of the three roles defined in the Scrum framework.

The product owner is the agile term for an excellent product manager. He defines the vision, roadmap, release plan and the features of the product to build. He is in charge of the budget and of a tentative schedule. Regularly he refines the backlog with his development team(s).

Often I encounter a business analyst or a project manager in this role. What shall they learn to become an effective and efficient product owner?


Wednesday, May 16, 2018

Sonar Lint for the Impatient

Remove issues before they reach customer sites. No quality problems shall reach your Git master branch.

What is Sonar?

SonarQube is a central server that processes full analyses (triggered by the various SonarQube Scanners). Its purpose is to give a 360° vision of the quality of your code base. For this, it analyzes all the source lines of your project on a regular basis.

Thursday, May 3, 2018

Agile Trends Switzerland 2018

What are the main hurdles to introduce agile approaches in Swiss companies. The Swiss agile trends report was published for the last ten years and learn us the difficulties and successes of agile transformations.

SwissQ has published a "SwissQ Software Development Switzerland 2018", the tenth version of this report.

Introducing agile company-wide was and is a cultural change process. Such a change takes time and sometimes hurts. Too often organizations stop the process and revert to all command and control approaches with Waterfall project management.

Without commitment of senior management, the initiative will fail. In other words Walk the talk.

You must teach, coach, and support your collaborators through the transition. You need to believe in them and provide an environment where they can safely learn and experiment.

At the end what matters is collaborator purpose, customer satisfaction,  and business value.

Wednesday, April 18, 2018

Agile Introduction Success Criteria through the LeSS lens

An agile organization is able to deliver or change direction at any time without additional cost. 

More companies want to become truly agile and book an expensive journey to the holy land of agility. Often the travelers never reach their true destination.


The LeSS people have a clear set of conditions to increase the odds. 

All my experiences confirm these conditions are essential for success.

Wednesday, April 4, 2018

Pragmatic Craftsmanship - Professional Software Developer

The last months I was often confronted with  software products having insufficient quality.

Insufficient means late delivery, and few new features. The effort to correct errors in the field eats 30% to 50% away from the whole development budget. How can such a dreadful situation occur?

One root cause is the low quality of the source code and ignorance of basic coding design approaches. We are not talking about complex design activities or complex patterns; we are discussing basic approaches how to write correct and maintainable code.